我一直在尝试创建一个非常简单的 Ansible 剧本,它将重新启动服务器并等待它回来。
我过去在 Ansible 1.9 上有一个可以运行的,但我最近升级到 2.1.1.0 并且失败了。
我正在重新启动的主机名为 idm,IP 为 192.168.200.23。
该剧本正在我的主机 192.168.200.1 上使用以下命令运行
$ ansible-playbook reboot.yml -vvvv
这是我正在使用的剧本
---
- hosts: idm
tasks:
- name: Restart server
become: yes
shell: sleep 2 && /sbin/shutdown -r now "Ansible system package upgraded"
- name: waiting 60 secs for server to come back
local_action: wait_for host=192.168.200.23 port=22 delay=60 connect_timeout=200
become: false
它可以很好地重新启动机器,但几乎立即失败
<192.168.200.23> ESTABLISH SSH CONNECTION FOR USER: root
<192.168.200.23> 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=root -o ConnectTimeout=10 -o ControlPath=/home/myork/.ansible/cp/ansible-ssh-%h-%p-%r -tt 192.168.200.23 '/bin/sh -c '"'"'LANG=en_GB.UTF-8 LC_ALL=en_GB.UTF-8 LC_MESSAGES=en_GB.UTF-8 /usr/bin/python /root/.ansible/tmp/ansible-tmp-1472242630.58-176546106960362/command; rm -rf "/root/.ansible/tmp/ansible-tmp-1472242630.58-176546106960362/" > /dev/null 2>&1 && sleep 0'"'"''
fatal: [idm]: UNREACHABLE! => {"changed": false, "msg": "Failed to connect to the host via ssh.", "unreachable": true}
知道我在这里错过了什么吗?
Thanks!
我用以下命令重新启动服务器async
即发即忘模式:
- name: Restart server
become: yes
shell: sleep 2 && /sbin/shutdown -r now "Ansible system package upgraded"
async: 1
poll: 0
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)