假设我有100台主机,我想执行一个ssh连接,结果应该打印 "YES "或 "NO"
然后执行ping,应该打印 "YES "或 "NO"
比如说
SL.No. Server Ping SSH Uptime(hrs)
1 Linux-test y y 2020-26-05 17:17:44
2 linux-test1 n - -
3 linux-test3 y y 2020-26-05 17:17:44
这里有一个可能的方法来实现它。
- hosts: all
gather_facts: False
ignore_errors: True
ignore_unreachable: True
tasks:
- name: ping server
ping:
register: ping_status
- debug:
msg: "{{ inventory_hostname }} - YES"
with_items:
- "{{ inventory_hostname }}"
when: ping_status.ping is defined
- name: get uptime
shell: uptime > /root/uptime.out
- name: read uptime
command: cat /root/uptime.out
register: uptime_server
- debug:
msg: "{{ inventory_hostname }} - YES - {{ uptime_server.stdout }}"
with_items:
- "{{ inventory_hostname }}"
when: ping_status.ping is defined
- debug:
msg: "{{ inventory_hostname }} - NO"
with_items:
- "{{ inventory_hostname }}"
when: ping_status.ping is undefined