在“server_1”或“server_2”以外的主机上运行Ansible任务

问题描述:

我希望只能在与“server_1”或“server_2”不匹配的主机上运行任务。在“server_1”或“server_2”以外的主机上运行Ansible任务

在半伪代码:

- name: Set localtime 
    file: src=/usr/share/zoneinfo/UTC 
     dest=/etc/localtime 
     state=link 
    when: only when hostname is NOT "server_1" or "server_2" 

比较主机名:

when: ansible_hostname not in ['server_1', 'server_2'] 

比较库存别名:

when: inventory_hostname not in ['server_1', 'server_2'] 

你可以试试这个:

- name: Set localtime 
    file: src=/usr/share/zoneinfo/UTC 
     dest=/etc/localtime 
     state=link 
    when: ansible_hostname not in [server_1', 'server_2'] 
+0

工作很棒!非常感谢Arbab! – Ville