Ansible仅在运行单个角色时通知

时间:2017-04-29 16:18:40

标签: ansible ansible-2.x

我不知道为什么我的ansible配置仅在我运行单个角色时才会通知。

如果我使用此配置

1x,2x,3x

Ansible返回 --- - name: Install PHP-Fpm, Nginx, MariaDB, pure-ftpd on CentOS 7 with Optimized hosts: all roles: - nginx

但如果我使用此配置

https://pastebin.com/pW7Npj60

Ansible return --- - name: Install PHP-Fpm, Nginx, MariaDB, pure-ftpd on CentOS 7 with Optimized hosts: all roles: - nginx - mariadb

这意味着ansible跳过启动服务?

1 个答案:

答案 0 :(得分:0)

您的mariadb角色的任务失败,因此主机被标记为失败,并且没有执行此失败主机的处理程序。

默认情况下,在应用所有角色并且主机未发生故障后,将执行每个角色的所有处理程序。

你可以:

  • 使用force_handlers选项强制Ansible执行处理程序,即使此主机的任务失败也是如此。

  • 使用meta: flush_handlers作为角色的最后一项任务,在每个角色之后强制执行处理程序(如果它们被触发)。