- name: Search1
become: no
delegate_to: localhost
command: "../home/ev/search.py {{ item }}"
register: name
with_items: "{{ansible_all_ipv4_addresses|ipaddr('public') }}"
changed_when: false
我已经尝试将上面的playbook执行到我们的库存,并且只在具有公共IP的服务器上工作,但它没有在诸如VPS / AWS之类的服务器上,他们在其接口上定义了私有IP。
有没有办法说主机是否有私有IP然后使用它:
- name: Search2
become: no
delegate_to: localhost
command: "../home/ev/search.py {{ item }}"
register: name
with_items: "{{INVENTORY_HOSTNAME|ipaddr('public') }}"
changed_when: false
答案 0 :(得分:0)
我可以使用以下时间在界面之间切换:ansible_interface | length> 5。 我有很多服务器有超过5个接口+绑定。 我在服务器上只有一个私有接口。