Ansible 无法通过 SSH 连接

Ansible 无法通过 SSH 连接

嗨,我最近在 centos 7 上安装了 ansible 来管理远程服务器。我尝试使用 ansible 和 ssh 连接到服务器,并尝试使用命令“ ansible -m ping all”对服务器进行 ping 操作,但我收到一条错误消息,提示“

 "Failed to connect to the host via ssh: ssh: connect to host 176.16.21.138 port 22: Connection timed out", 
    "unreachable": true "  

我试过关闭防火墙,但毫无作用。我发布了一张使用 -vvv 选项执行 anisble 命令时收到的错误消息的图片/

但是我可以使用 ssh 命令手动连接到服务器。但 ansible 不起作用。 此处为带有 -vvv 的错误消息图像

答案1

您的-vvv输出显示 Ansible 使用参数运行-o ConnectTimeout=10

有几个原因可能导致 SSH 连接时间超过 10 秒,例如,SSH 服务器尝试查找连接客户端的主机名是一个常见的罪魁祸首,这会花费一些时间。

检查手动连接 SSH 会话所需的时间,如果时间太长,则有两种可能性:

  • 检查是什么花费了这么长时间并解决该问题
  • 增加ConnectTimeoutAnsible 设置的值

第一个解决方案应该是首选。

相关内容