如何要求Ansible任务在至少一台主机上成功完成



假设我有三个节点,我使用Ansible脚本在这些节点上运行命令。

我希望该任务在所有三个节点上运行,如果它在至少一个节点上成功完成,那么它就会成功。如果任务在至少一个节点上未成功,则脚本应失败。

使用ignore_errors: true显然可以使脚本完整,即使没有节点成功完成。

有什么办法吗?谢谢

您可以使用最大故障百分比功能:

- hosts: webservers
max_fail_percentage: 99

在您的特定用例中,除非您有100多个主机,否则99%的主机应保证至少有一个主机成功。

Konstantin Suvorov的评论具有解决方案

最新更新