例子:
我有一个拥有 30 台主机的主机组网络服务器。 我有 6 个具有“主机:网络服务器”的剧本。 我有一个需要配置的新主机,并将其添加到 webservers 组。 我有一个名为baseline-web.yml 的元剧本,其中包括6 个剧本。 元剧本也有主机:网络服务器。
现在执行它时,它会在所有主机上执行所有操作,但更改仅在新添加的主机上。
我可以为“ansible-playbook”程序提供一个参数来否决定义的主机:变量吗?
喜欢:~$ ansible-playbook --hosts=newserver5 playbooks/baseline-web.yml
(然后只能在 newserver5 上运行,包括所有包含的剧本)
@RaymiiOrg您可以使用--limit
(又名-l
)来限制运行剧本的主机,例如:
ansible-playbook -l newserver5 playbooks/baseline-web.yml
另外,我认为- hosts:
不会出现两次,因此在顶部和子剧本中使用host
是无效的 AFAIK。
问题应该发送到邮件列表,而不是错误跟踪器。
谢谢两位。 下次我会去邮件列表。
最有用的评论
@RaymiiOrg您可以使用
--limit
(又名-l
)来限制运行剧本的主机,例如:ansible-playbook -l newserver5 playbooks/baseline-web.yml
另外,我认为
- hosts:
不会出现两次,因此在顶部和子剧本中使用host
是无效的 AFAIK。