2017-02-21 70 views
0

当我试图运行一个ansible剧本,同时连接到一台服务器,我收到以下内容:Ansible找不到主机文件

output

它说,没有找到配置文件 - 没有任何人知道如何改变它看起来在不同的位置。

另外,我还生成服务器上的目标主机的公共密钥,并将它复制了从id_rsa.pub到以下位置:/home/user/.ssh/authorized_keys

  • 但是我仍会提示输入密码。

这两个问题是连接还是恰好发生在同一时间?有没有人对如何解决这个问题有任何想法?

如果需要,我们将很乐意提供更多信息,并且我们将不胜感激。

+2

请勿在文字充足的地方张贴图像。另外,如果读者向您提供他们的邮寄地址,以便您可以发送放大镜? – techraf

+0

看起来您的安装有问题(特别是'python-crypto library'),如果您运行'ansible --version'并共享结果,可能会很有用。 – Zlemini

回答

0

我相信touch ansible.cfg将帮助“没有配置文件找到”消息(这只是信息)。

至于清单,ansible会发现它(或者会出现“Host file not found”错误),但无法将主机名解析为可达的IP地址。

看起来您的库存缺少目标主机的dns名称或ip地址的ansible_host变量。以“fatal:”开头的红色方括号之间的主机必须是可解析/可访问的(例如,ping),或者需要将该库存变量设置为。

对于ssh,看起来您已将密码保护的私钥放入您的authorized_keys文件中。应该在清单中使用ansible_ssh_private_key_file变量引用私钥文件。有许多方法可以将密钥放在库存中,但不建议用明文形式,并且比当前的设置更复杂。我建议在排除故障之前,确保您可以手动ssh到与该密钥相关的服务器。