如何 运行 一个命令来重置 ansible 中的网络接口?
How to run a command that will reset the network interfaces in ansible?
我想 运行 在远程机器上执行命令。该命令将重置网络接口。如何在 ansible playbook
中 运行
- name: Execute config command
sudo: yes
shell: "mycommand"
async: 0
poll: 0
ignore_errors: true
上述任务运行不一致。即使我尝试使用 async: 300
,也会观察到同样的不一致。
您可能 运行 遇到与我描述的 类似的情况。根据您使用的命令 运行 (mycommand
),网络连接可能会很快断开,导致 Ansible 认为连接意外断开。当发生这种情况时,它会导致 Ansible 将其视为错误。
您可能想要修改 mycommand
以在重置发生前包含几秒钟的休眠,并继续使用 async:0
和 poll:0
。这将使 Ansible 有足够的时间将 mycommand
启动到后台,并在服务器重置网络连接之前完全无错误地与服务器断开连接。
根据您的下一个任务是什么,您可能还想包括一个通过 local_action
运行的 wait_for
任务,以确保 Ansible 在尝试任何其他任务之前等待此网络重置完成。
我想 运行 在远程机器上执行命令。该命令将重置网络接口。如何在 ansible playbook
中 运行- name: Execute config command
sudo: yes
shell: "mycommand"
async: 0
poll: 0
ignore_errors: true
上述任务运行不一致。即使我尝试使用 async: 300
,也会观察到同样的不一致。
您可能 运行 遇到与我描述的 mycommand
),网络连接可能会很快断开,导致 Ansible 认为连接意外断开。当发生这种情况时,它会导致 Ansible 将其视为错误。
您可能想要修改 mycommand
以在重置发生前包含几秒钟的休眠,并继续使用 async:0
和 poll:0
。这将使 Ansible 有足够的时间将 mycommand
启动到后台,并在服务器重置网络连接之前完全无错误地与服务器断开连接。
根据您的下一个任务是什么,您可能还想包括一个通过 local_action
运行的 wait_for
任务,以确保 Ansible 在尝试任何其他任务之前等待此网络重置完成。