如何使用ansible测试网络连接?

时间:2019-06-17 08:47:34

标签: ansible

我正在许多主机上设置Zabbix代理服务,即使服务启动,也无法确认Zabbix服务器和Zabbix代理之间的网络可用。 例如,我通过ansible剧本在主机A上安装了Zabbix-agent。主机B上已经有一个Zabbix服务器。 我如何使用ansible测试主机A是否可以访问主机A的端口10050,以及主机A是否可以访问主机B的端口10051? 您能帮我告诉我哪些模块适合上述网络测试吗?此外,如何在ansible-playbook中循环存货主机。 谢谢。

1 个答案:

答案 0 :(得分:1)

您可以利用wait_for模块来完成此操作。

示例:

- name: verify port 10050 is listening on hostA
  wait_for:
    host: hostA
    port: 10050
    delay: 5
    state: started
  delegate_to: hostB

要遍历清单文件中的主机,可以使用inventory_hostnames模块:

with_inventory_hostnames:
    - all