转到ansible中的下一个任务,而不等待其他主机完成该任务

yee*_*379 2 wait ansible ansible-playbook

所以我注意到在我的ansible playbooks中,如果我使用相同的playbook定位多个主机,那么每个任务必须在所有主机进入下一个任务之前完成.

是否可以定义播放簿,以便任务在完成后立即运行以下任务而无需等待任务在所有其他主机上完成?

Hen*_*ica 5

Ansible的这种行为可以通过剧本策略来控制.

策略的默认策略是linear:

所有主机将在任何主机启动下一个任务之前运行每个任务,使用分叉数(默认值为5)进行并行化.

另一种策略是free:

第二种策略附带ansible free,允许每个主机尽可能快地运行直到游戏结束:

像这样设置策略:

- hosts: all
  strategy: free
  tasks:
Run Code Online (Sandbox Code Playgroud)

如果无法使用free策略,您可以使用该serial指令设置批次.