Ansible - 如何为每个主机顺序执行playbook

问题描述 投票:32回答:3

我使用ansible编写API的部署脚本。我希望这可以顺序通过我的库存文件中的每个主机,以便我可以一次完全部署到一台机器。

使用out框行为,我的playbook中的每个任务都会在清单文件中为每个主机执行,然后再继续执行下一个任务。

在下一个主机上启动之前,如何更改此行为以执行主机的所有任务?理想情况下,我想只有一本剧本。

谢谢

ansible ansible-playbook
3个回答
72
投票

仔细看看Rolling Updates

你在寻找的是什么

- hosts: webservers
  serial: 1
  tasks:
    - name: ...

0
投票

策略支持在每个主机的基础上并行任务。见qazxsw poi

有3种策略:线性(默认),串行,免费(最快)

https://docs.ansible.com/ansible/latest/user_guide/playbooks_strategies.html

0
投票

使用--forks = 1指定要使用的并行进程数(默认值= 5)

© www.soinside.com 2019 - 2024. All rights reserved.