Ansible限制与模式不匹配

时间:2018-02-22 18:12:03

标签: ansible limit ansible-inventory

我有库存文件

# file: production_hosts
[my_servers]
myserver0[1:4].google.com

当我尝试在这些主机的子集上运行playbook时,它只提供第一个和最后一个主机。

$ ansible-playbook -i production_hosts -l 'myserver0[1:3].google.com' yum_update_all.yaml  --list-hosts

playbook: yum_update_all.yaml

  play #1 (all): all    TAGS: []
    pattern: [u'all']
    hosts (2):
      myserver01.google.com
      myserver03.google.com

当我尝试其他方式时,通过给出每个数字,它会给出所有数字。

$ ansible-playbook -i production_hosts -l 'myserver0[1:2:3].google.com' yum_update_all.yaml  --list-hosts

playbook: yum_update_all.yaml

  play #1 (all): all    TAGS: []
    pattern: [u'all']
    hosts (3):
      myserver02.google.com
      myserver01.google.com
      myserver03.google.com

模式类似的模式主机在限制中不起作用吗?

1 个答案:

答案 0 :(得分:3)

ansible-playbook -i production_hosts -l 'myserver0[123].google.com' yum_update_all.yaml  --list-hosts

或(您实际要求的):

ansible-playbook -i production_hosts -l 'myserver0[1-3].google.com' yum_update_all.yaml  --list-hosts

产率:

playbook: playbook.yml

  play #1 (all): all    TAGS: []
    pattern: [u'all']
    hosts (3):
      myserver02.google.com
      myserver01.google.com
      myserver03.google.com