策略插件

策略插件通过处理任务和主机调度来控制 playbook 执行的流程。有关使用策略插件和其他控制执行顺序的方法的更多信息,请参阅控制 playbook 执行:策略及更多

启用策略插件

所有随 Ansible 提供的策略插件默认启用。 您可以通过将自定义策略插件放入在 ansible.cfg 中配置的查找目录源之一来启用它。

使用策略插件

在一个 play 中只能使用一个策略插件,但是您可以在 playbook 或 ansible 运行的每个 play 中使用不同的策略插件。 默认情况下,Ansible 使用 linear 插件。您可以使用环境变量在 Ansible 配置中更改此默认设置

export ANSIBLE_STRATEGY=free

或在 ansible.cfg 文件中

[defaults]
strategy=linear

您还可以在 play 中使用 strategy 关键字 来指定策略插件

- hosts: all
  strategy: debug
  tasks:
    - copy:
        src: myhosts
        dest: /etc/hosts
      notify: restart_tomcat

    - package:
        name: tomcat
        state: present

  handlers:
    - name: restart_tomcat
      service:
        name: tomcat
        state: restarted

插件列表

您可以使用 ansible-doc -t strategy -l 查看可用插件的列表。使用 ansible-doc -t strategy <插件名称> 查看插件特定的文档和示例。

另请参阅

Ansible Playbook

Playbook 简介

Inventory 插件

Inventory 插件

Callback 插件

Callback 插件

Filter 插件

Filter 插件

Test 插件

Test 插件

Lookup 插件

Lookup 插件

交流

有问题?需要帮助?想分享您的想法?请访问 Ansible 交流指南