首页 > 解决方案 > 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

我怎样才能做到这一点?

标签: ansibleansible-inventory

解决方案


如果您的清单真的那么简单,那么您可能没有主机名就可以生活。从您当前的默认清单中删除该条目。确保您的剧本针对该all组,并使用单个主机 IP 清单启动您的剧本:

ansible-playbook -i 10.10.10.11, my_playbook.yml

注意:IP 后面的逗号不是错误,它需要在那里,以便将-i参数后面的 IP 解释为逗号分隔的主机列表,而不是库存文件路径。


推荐阅读