ansible - Ansible:从命令行覆盖库存的 ansible_host
问题描述
我有一个简单的库存hosts
:
dockermachine ansible_host=10.10.10.10
我需要能够从命令行提供我希望的任何其他 IP,覆盖默认值,例如:
ansible-playbook -i hosts@dockermachine.ansible_host=11.11.11.11 site.yml
我怎样才能做到这一点?
解决方案
如果您的清单真的那么简单,那么您可能没有主机名就可以生活。从您当前的默认清单中删除该条目。确保您的剧本针对该all
组,并使用单个主机 IP 清单启动您的剧本:
ansible-playbook -i 10.10.10.11, my_playbook.yml
注意:IP 后面的逗号不是错误,它需要在那里,以便将-i
参数后面的 IP 解释为逗号分隔的主机列表,而不是库存文件路径。
推荐阅读
- java - 使用 junit 进行 MQTT 客户端测试
- javascript - 如何知道一个 div 完全包含另一个
- java - 如何仅从 xml 文件中删除 encoding=UTF8
- javascript - API JIVE 搜索问题和讨论
- db2 - DB2 将两个 longvarchar 列连接成新的 CLOB 列
- algorithm - 枢轴时快速排序的时间复杂度(将列表拆分为 90%:10%)(对于均匀深度,总是最小元素)
- documentation - 如何在文档中并排显示代码和伪代码?
- ruby-on-rails - 使用活动存储映像获取 MD5 哈希
- javascript - 闭包编译器:它如何决定何时内联?
- python - 试图将有序字典写入 csv,但结果为空白