2016-05-30 107 views
1

我有主機A與Ansible一起管理。我有主機B(主機B在庫存中不可用),我正在執行帶有「delegate_to」的幾個命令。主機C是我的可控制器。我試圖用「delegate_to」從主機B ping一個ipaddress。這個ipaddress是在主機D上的某個地方(主機D在庫存中不可用),但是我不知道如何使用ping模塊來實現這一點。所以我正在使用命令模塊。Ansible:來自遠程主機的Ping

- name: Ping net1 
    command: 'ping -c 4 10.17.12.2' 
    delegate_to: 10.17.10.85 

如何以更好的方式實現相同的功能?

回答

1

一個Ansible「ping」實際上是檢查ssh,並且據我所知沒有一個Ansible模塊用於檢查主機之間的網絡連接(可以使用wait_for?)所以這可能是最好的方法,但我會添加一個changed_when: false以正確反映這一命令永不會改變任何事實的事實:

- name: Ping net1 
    command: 'ping -c 4 10.17.12.2' 
    delegate_to: 10.17.10.85 
    changed_when: false