我的Ansible剧本使用代理连接到远程节点。
当Ansible攻略运行时,它在执行ssh步骤时会给出以下错误。
[root@vm1-msdp ANSIBLE]# ansible-playbook fend_file.yaml -i env/target -vvvvv
PLAY [LAB1] *******************************************************************
GATHERING FACTS ***************************************************************
<10.169.99.222> ESTABLISH CONNECTION FOR USER: msdp
<10.169.99.222> REMOTE_MODULE setup
<10.169.99.222> EXEC sshpass -d9 ssh -C -tt -vvv -o ProxyCommand="nc -x 142.133.134.161:1088 %h %p" -o StrictHostKeyChecking=no -o GSSAPIAuthentication=no -o PubkeyAuthentication=no -o User=msdp -o ConnectTimeout=10 10.169.99.222 /bin/sh -c 'mkdir -p $HOME/.ansible/tmp/ansible-tmp-1473708903.98-28407509853006 && echo $HOME/.ansible/tmp/ansible-tmp-1473708903.98-28407509853006'
fatal: [10.169.99.222] => SSH Error: ssh_exchange_identification: Connection closed by remote host
It is sometimes useful to re-run the command using -vvvv, which prints SSH debug output to help diagnose the issue.但是,当我自己运行ssh命令时,我能够成功连接。
[root@vm1-msdp ANSIBLE]# ssh -C -tt -o ProxyCommand="nc -x 142.133.134.161:1088 %h %p" -o StrictHostKeyChecking=no -o GSSAPIAuthentication=no -o PubkeyAuthentication=no -o User=root -o ConnectTimeout=10 10.169.99.222
root@10.169.99.222's password:
Last login: Mon Sep 12 12:28:19 2016 from 10.169.102.6
root@IC02 ~ #我需要清除任何ansible文件吗?
发布于 2017-08-12 04:12:09
当您手动运行SSH命令时,您将指定root用户。您的行动手册正在使用您的本地用户msdp。尝试在清单文件中设置ansible_user变量。可能是这样的:
10.169.99.22 ansible_user=root
https://stackoverflow.com/questions/39457540
复制相似问题