ansible - 如何在执行剧本时在命令行中添加多个清单文件
问题描述
我有一本包含两个不同剧本的剧本
Sample.yml
- name : Play1
hosts: Host1
tasks:
...
- name: Play2
hosts: Host2
tasks:
...
我需要使用两个不同的主机(Host1 和 Host2)运行这个剧本,这两个不同的主机存在于inventory/ 目录下的两个单独的文件( Hostfile1 和 Hostfile2 )中。
inventory/
Hostfile1
Hostfile2
.
.
HostfileN
我想知道如何在运行剧本时包含两个不同的主机文件。我知道通过在命令行中包含整个文件夹(inventory/)我们可以实现这一点,但我在 inventory/ 文件夹中有很多主机文件,所以这个选项将加载未使用的主机文件。
我试图像下面这样运行
ansible-playbook -i inventory/Hostfile1,Hostfile2 sample.yml
但这没有用。那么,有谁知道如何通过在命令行中提供多个主机文件来运行剧本?
解决方案
只需简单地提供-i
多次
ansible-playbook -i inventory/Hostfile1 -i inventory/Hostfile2 sample.yml
推荐阅读
- c++ - 将数组元素传递给模板
- nestjs - NestJS(7.5.1)不在观看模式下观看资产
- python - Paramiko stdout.read 给出“AttributeError:'tuple'对象没有属性'read'”
- database - 检测 oracle UDT 列
- regex - groovy:一次性过滤和提取子字符串
- python - 为什么在我只尝试分配变量时执行操作?
- api - 调试后清理数据库中的对象
- rust-cargo - 货物安装:指定 /tmp 替代品?
- php - 通过两个 PHP 脚本包含相同的配置文件
- leaflet - 在 Blazor SPA 中嵌入传单地图