2017-04-25 124 views
0

我有一個非常簡單的操作手冊,我通過IP地址對數百個主機運行。這些主機是移動設備,通常會更改IP地址。發生這種情況時,它可能會掛起整個劇本,因爲它從未完成任務。我添加了一個local_action等待30秒,然後繼續。問題是我無法弄清楚主機變量是什麼。從主機文件傳遞的IP地址不會顯示在清單中,因爲它是單元連接。我用什麼變量讓它等待我運行劇本的IP地址?Ansible主機變量

--- 
- hosts: all 
    tasks: 

    - name: Search Messages 
    shell: /bin/grep 'eth1:' /var/log/messages 
    register: sysout 

    - name: Wait For 30 Seconds 
     local_action: 
     module: wait_for 
      host= "????" 
      port=22 
      delay=20 
      timeout=30 
     ignore_errors: true 
     register: Back 

回答

1

你可以參考使用​​變量的當前主機:

- name: Wait For 30 Seconds 
    local_action: 
    module: wait_for 
    host: "{{ inventory_hostname }}" 
    port: 22 
    delay: 20 
    timeout: 30 
ignore_errors: true 
register: Back 
+0

是的,這是變量一直在尋找。謝謝。 – teamg