策略插件
策略插件通过处理任务和主机调度来控制 playbook 执行流程。有关使用策略插件以及其他控制执行顺序方法的更多信息,请参阅 控制 playbook 执行:策略及更多。
启用策略插件
Ansible 附带的所有策略插件默认情况下都已启用。您可以通过将其放置在 ansible.cfg 中配置的一个查找目录源中来启用自定义策略插件。
使用策略插件
在一个 playbook 中只能使用一个策略插件,但您可以在 playbook 或 ansible 运行中的每个 playbook 中使用不同的插件。默认情况下,Ansible 使用 linear 插件。您可以在 Ansible 配置 中使用环境变量更改此默认值
export ANSIBLE_STRATEGY=free
或在 ansible.cfg
文件中
[defaults]
strategy=linear
您还可以使用 playbook 中的 strategy 关键词 在 playbook 中指定策略插件
- 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 <plugin name>
查看特定插件的文档和示例。