ansible构建失败 scp transfer mechanism failed on **** Use ANSIBLE DEBUG=1\nto see detailed information

发布时间 2023-07-17 15:13:34作者: 搬砖党路过

ansible构建docker服务的失败排查经过(之前ansible构建成功)

第一步:

使用ansible 对应ip/或者在/etc/ansible/hosts中配置的label -m ping 查看当前连接对应服务器状态

对应失败服务器的连接状态

*@* * * * | FAILED! => { "failed": true, "msg": "failed to transfer file to /home/test/.ansible/tmp/ansible-tmp-148610479.7-240708330710714/ping.py:\n\nssh: Could not resolve hostname ****]:Name or service not known\r\nlost connection\n" }

第二步:检查免ssh密登录是否被更改

命令:ssh root@ip 验证可以免密登录

第三步:检查ansible配置

/etc/ansible/ansible.cfg 

[ssh_connection]
scp_if_ssh=True 

第四步:检查sshd配置

/etc/ssh/sshd_config

Subsystem sftp /usr/libexec/openssh/sftp-server

经过上面四步排查都没有问题,后来想到既然之前ansible分发是没问题的,在某一次构建之后就出现上述问题,并且是scp远程复制文件出错,那么是不是有可能是目标服务器上的磁盘满了呢

第五步:检查对应服务器上磁盘使用情况 执行 df -h

/dev/sda3 49G 49G 0G 100% /
devtmpfs 12G 0 12G 0% /dev

查看果然是磁盘空间使用完了。

清理磁盘空间之后再次执行 ansible label(或ip) -m ping。执行成功

 再次使用ansible构建,构建成功