【问题标题】:Getting an error message "Failed to connect to the host via ssh" while trying to run ping command on host machines using Ansible尝试使用 Ansible 在主机上运行 ping 命令时收到错误消息“无法通过 ssh 连接到主机”
【发布时间】:2017-11-28 02:48:05
【问题描述】:

我正在尝试使用 ansible 连接到机器并在节点上运行 ping 命令。我收到以下消息。

命令:ansible -i inventory all -m ping

消息:

centosinstance | UNREACHABLE! => {
    "changed": false, 
    "msg": "Failed to connect to the host via ssh: ssh: Could not resolve hostname centosinstance: Name or service not known\r\n", 
    "unreachable": true
}

我已经在ansible.cfg 文件中提到了私钥文件和远程用户名。

可能的原因是什么?

【问题讨论】:

  • 同时显示您的库存文件内容
  • 有一个错误信息给你:Could not resolve hostname centosinstance.
  • @ArbabNazar :这是库存文件“centosinstance centosinstance1”中的内容。我在库存文件中有两个实例,两台机器都出现相同的错误。

标签: ssh ansible devops


【解决方案1】:

请阅读错误信息:

ssh: Could not resolve hostname centosinstance: Name or service not known

Ansible 无法解析 centosinstance 主机名。您需要像这样修改您的库存:

centosinstance ansible_ssh_host=192.168.1.10
centosinstance1 ansible_ssh_host=192.168.1.11

请将IP地址更改为您机器的IP地址,然后重试。希望对你有所帮助

【讨论】:

  • 谢谢@Arbab Nazar。它现在工作。我在这里有一个问题,它(没有 IP 地址)对于 play book 工作正常,但为什么不使用命令“ansible -i inventory all -m ping”?
  • 您是否为剧本使用相同的库存?
  • 是的,我也在为剧本使用相同的文件。
  • DNS 工作正常,但现在不行。如何在不对 IP 进行硬编码的情况下解决此问题?搜索域在 NetworkManager 中指定,我可以在没有完全限定主机名的情况下 ping、nslookup 和 ssh。 ONLY ansible 现在拒绝工作,之前还好。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2023-03-20
  • 2017-08-08
  • 2017-02-08
  • 2018-07-22
  • 1970-01-01
  • 2017-06-08
  • 2020-02-15
相关资源
最近更新 更多