Ansible---item
很多初学者对于使用ansible的yum模块时,安装多少包,就调用多少次模块,接触过roles方法的可以知道,通过roles目录中的vars来定义ansible变量。
ansible的变量也是可以有数组的,意思是,一个变量名对应多个值,如下:
_packages:
- git
- nginx
- ...
当在playbook语法中调用时,通过item来读取,就以yum为例:
- name: Change git version
yum:
name: "{{ item }}"
state: present
with_item: "{{ _packages }}"
上述例子中,yum安装的软件名要读取item变量,而item变量的值通过with_item
读取vars目录或者defaults目录中的数组变量而来。
这种方法和一开始说的安装多少包,调用多少次yum模块简单了很多。
当然除了yum,其他的模块也可以视情况灵活使用。