ansible - 在 ansible playbook 中 Ping 主机

标签 ansible ping

我只想 ping 一个主机(DNS 主机)来检查可达性。看起来没有正确的方法可以做到这一点?我不确定。下面是我的 net_ping

剧本
---
- name: Set User
  hosts: web_servers
  gather_facts: false
  become: false
  vars:
    ansible_network_os: linux

  tasks:
  - name: Pinging Host
    net_ping
      dest: 10.250.30.11

但是,

TASK [Pinging Host] *******************************************************************************************************************
task path: /home/veeru/PycharmProjects/Miscellaneous/tests/ping_test.yml:10
ok: [10.250.30.11] => {
    "changed": false, 
    "msg": "Could not find implementation module net_ping for linux"
}

ping模块

---
- name: Set User
  hosts: dns
  gather_facts: false
  become: false

  tasks:
  - name: Pinging Host
    action: ping

看起来它正在尝试 ssh 进入 IP。(在详细模式下检查)。我不知道为什么?如何进行 ICMP ping?我也不想将 DNS IP 放入库存中。

更新1:

hmm,ansible_network_os 中似乎不支持 linux

https://www.reddit.com/r/ansible/comments/9dn5ff/possible_values_for_ansible_network_os/

最佳答案

您可以使用 ping 命令:

---

- hosts: all
  gather_facts: False
  connection: local

  tasks:

    - name: ping
      shell: ping -c 1 -w 2 8.8.8.8
      ignore_errors: true

关于ansible - 在 ansible playbook 中 Ping 主机,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56054563/

相关文章:

Ansible 使用 YAML 解析 JSON

ansible - 如果至少有一个主机有变量,则对所有主机运行 Ansible 任务

bash - 如何使用 bash 测试 Internet 连接?

dns - 为什么 Google 公共(public) DNS(8.8.8.8) 的 ping 延迟如此低?

c# - Ping 总是成功,无法在 url 上使用 ping 轻松检查正常运行时间

ansible - 使用 ansible-playbook 隐藏额外输出

linux - 如何处理引号,反引号特殊字符以在远程服务器中运行 linux bash shell 命令

docker - 使用 Ansible 在 docker-machine 上启动 Docker 容器?

c++ - 如何实现 websocket++ ping 处理程序?

c# - Pinging 域 C#