Ansible: 仅在一台主机上的剧本,而不是剧本中的剧本

创建于 2013-03-10  ·  3评论  ·  资料来源: ansible/ansible

例子:

我有一个拥有 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。

所有3条评论

@RaymiiOrg您可以使用--limit (又名-l )来限制运行剧本的主机,例如:

ansible-playbook -l newserver5 playbooks/baseline-web.yml

另外,我认为- hosts:不会出现两次,因此在顶部和子剧本中使用host是无效的 AFAIK。

问题应该发送到邮件列表,而不是错误跟踪器。

谢谢两位。 下次我会去邮件列表。

此页面是否有帮助?
0 / 5 - 0 等级