我正在创建一个剧本来安装软件,我需要在剧本中间重新启动服务器。
我需要我的 Ansible 主机等到服务器恢复并执行我的其余任务,但这并没有发生。
这些是我与重启和等待相关的 Ansible 任务:
...
- name: restart server
shell: shutdown -r now
async: 1
poll: 0
become: yes
become_method: sudo
ignore_errors: true
- name: waiting for server to come back after reboot
local_action: wait_for host={{ ansible_ssh_host }} state=started port=22 delay=30 timeout=300 connect_timeout=15
....
Run Code Online (Sandbox Code Playgroud)
这是运行我的剧本的输出:
...
TASK [restart server] **********************************************************
fatal: [X.X.X.X]: UNREACHABLE! => {"changed": false, "msg": "Failed to connect to the host via ssh.", "unreachable": true}
to retry, use: --limit @ansible_pb.retry
PLAY RECAP *********************************************************************
X.X.X.X : …Run Code Online (Sandbox Code Playgroud) ansible ×1