Ansible可以在playbook中使用变量来控制任务的行为。变量可以是单个值、列表的值或者字典的值。在playbook中,可以通过定义变量、从文件中读取变量或者在命令行中传递变量来使用变量。
例如,定义一个变量:
- hosts: web
vars:
my_var: hello world
tasks:
- name: show variable
debug:
msg: "{{ my_var }}"
标记是通过对playbook中的任务进行标记来控制哪些任务应该在执行期间运行或不运行。标记可以设置在playbook中的任何任务上。可以将标签定义为一组命令行字符串,当playbook以特定标记运行时,所有带有该标记的任务将被执行。
例如,在playbook中添加标记:
- hosts: web
tasks:
- name: install apache
yum:
name: httpd
state: present
tags:
- install
在执行playbook时,可以使用标记来选择要运行的任务:
$ ansible-playbook myplaybook.yml --tags "install"