2016-11-15 8 views
1

キーを使用しているSSHが正しく設定されています。SSH okですが、Ansibleが「到達不能」を返す

ssh [email protected] 
[email protected]:~$ 

しかしAnsibleがエラーを返した:

TASK [setup] ******************************************************************* 
<192.168.1.111> ESTABLISH SSH CONNECTION FOR USER: admin 
<192.168.1.111> SSH: EXEC ssh -C -vvv -o ControlMaster=auto -o ControlPersist=60s -o KbdInteractiveAuthentication=no -o PreferredAuthentications=gssapi-with-mic,gssapi-keyex,hostbased,publickey -o PasswordAuthentication=no -o User=admin -o ConnectTimeout=10 -o ControlPath=/Users/Shared/Jenkins/.ansible/cp/ansible-ssh-%h-%p-%r 192.168.1.111 '/bin/sh -c '"'"'(umask 22 && mkdir -p "` echo $HOME/.ansible/tmp/ansible-tmp-1479205446.3-33100049148171 `" && echo "` echo $HOME/.ansible/tmp/ansible-tmp-1479205446.3-33100049148171 `")'"'"'' 
<192.168.1.111> PUT /var/folders/pd/8q63k3z93nx_78dggb9ltm4c00007x/T/tmpNJvc43 TO /var/services/homes/admin/.ansible/tmp/ansible-tmp-1479205446.3-33100049148171/setup 
<192.168.1.111> SSH: EXEC sftp -b - -C -vvv -o ControlMaster=auto -o ControlPersist=60s -o KbdInteractiveAuthentication=no -o PreferredAuthentications=gssapi-with-mic,gssapi-keyex,hostbased,publickey -o PasswordAuthentication=no -o User=admin -o ConnectTimeout=10 -o ControlPath=/Users/Shared/Jenkins/.ansible/cp/ansible-ssh-%h-%p-%r '[192.168.1.111]' 
fatal: [192.168.1.111]: UNREACHABLE! => {"changed": false, "msg": "SSH Error: data could not be sent to the remote host. Make sure this host can be reached over ssh", "unreachable": true} 

誰かが私を助けることができますか?

答えて

2

SFTP接続では「到達不能」、SSHでは「到達不能」を返します。

どちらのターゲット・ノード(またはイン間のファイアウォール)上のSFTPを有効にするか、ansible.cfguse SCPにAnsibleを設定します。

scp_if_ssh = True 
1

私は同様の「到達不能」エラーがあったが、私の場合にはそれがありました私のプレイブックファイルがホストをこのように指定されているため:

 
[webservers] 
[email protected] 

これは、過去に私たちのために働いていたので、おそらくこれは私のバージョン(2.0.0.2)といくつかのAnsibleのバージョンで動作しますが、ありません。代わりに、ドキュメントを推奨するものに変更しました。

 
[webservers] 
123.456.789.111 ansible_user=ubuntu 

これでSFTP接続は失敗しません。

関連する問題