【发布时间】:2016-07-25 06:08:13
【问题描述】:
尝试从 Cygwin 对 AWS EC2 运行非常基本的 Ansible ping 操作,但没有任何成功。
进行以下配置:
ansible.cfg:
[defaults]
hostfile = hosts
host_key_checking = False
主持人:
[local]
localhost
[servers]
server-1 ansible_ssh_host=ec2-54-175-139-180.compute-1.amazonaws.com ansible_ssh_user=ec2-user ansible_ssh_private_key_file=ansible.pem
所有这些文件 + PEM 文件都位于同一个文件夹中。 我可以使用 PEM 文件通过 SSH 连接到 EC2。我也可以远程登录。 Ping 运行良好。但以下命令不断失败:
ansible server-1 -m ping -vvv
带有以下错误消息:
<ec2-54-175-139-180.compute-1.amazonaws.com> ESTABLISH SSH CONNECTION FOR USER: ec2-user
<ec2-54-175-139-180.compute-1.amazonaws.com> SSH: EXEC ssh -C -q -o ControlMaster=auto -o ControlPersist=60s -o StrictHostKeyChecking=no -o 'IdentityFile="ansible.pem"' -o KbdInteractiveAuthentication=no -o PreferredAuthentications=gssapi-with-mic,gssapi-keyex,hostbased,publickey -o PasswordAuthentication=no -o User=ec2-user -o ConnectTimeout=10 -o 'ControlPath=/home/UserHome/.ansible/cp/ansible-ssh-%h-%p-%r' ec2-54-175-139-180.compute-1.amazonaws.com '/bin/sh -c '"'"'( umask 77 && mkdir -p "` echo $HOME/.ansible/tmp/ansible-tmp-1469264080.61-242019267058306 `" && echo ansible-tmp-1469264080.61-242019267058306="` echo $HOME/.ansible/tmp/ansible-tmp-1469264080.61-242019267058306 `" ) && sleep 0'"'"''
server-1 | UNREACHABLE! => {
"changed": false,
"msg": "Failed to connect to the host via ssh.",
"unreachable": true
}
那里有什么问题?我已经看到有关同一问题的多个问题,但不幸的是没有解决方案......我正在使用 2.1 版本的 Ansible。 任何帮助将不胜感激!
【问题讨论】:
-
你从哪里运行 Ansible 脚本?
-
什么意思?从 Cygwin 运行它:)
-
那么你能从 Cygwin 终端通过 SSH 连接到实例吗?
-
是的。此命令完美运行:ssh -i pemfile.pem ec2-user@ec2-54-175-139-180.compute-1.amazonaws.com
-
在 ansible 中您使用的是“ansible.pem”,而在您的 SSH 中您使用的是“pemfile.pem”是错误的还是正确的?
标签: amazon-web-services ssh amazon-ec2 ansible