使用 ansible-playbook
命令,我们可以为库存中的所有主机执行playbook,并且我有一个从web服务器中删除缓存的手册 . 但我不应该删除特定计算机上的缓存,除非开发人员要求这样做 .
但是通过使用 ansible-playbook
我无法从库存中选择特定的主机 . 但我可以使用一些语法作为 ansible-playbook somebook.play -i hostname,
但这会查找DNS条目并执行相应但不检查库存文件 .
另一种方法是为每个主机创建单独的库存文件,并按开发人员按请求的主机调用它们,我不知道这是多少推荐的方式 .
最后一个方法AFAIK通过Python使用 ansible.runner
并在hostname上使用模式并调用python程序 .
感谢您阅读我的长篇文章 .
除此之外,您是否知道在执行剧本时从库存中选择特定主机/主机组的其他方法?
我想知道任何其他方式,但只使用ansible-playbook和库存文件 .
1 回答
是的,你可以 - 执行
ansible-playbook --help
命令来显示帮助:如果您想知道模式是什么 - 在patterns上有一个帮助页面 .