定义变量
变量名应该由字母、数字、下划线组成,变量名需要以字母开头,ansible内置的关键字不能作为变量名
在playbook中使用变量。
如果我们想要在某个play中定义变量,可以借助vars关键字
除了能够在playbook中直接定义变量,我们还可以在某个文件中定义变量,然后再在playbook中引入对应的文件,引入文件后,playbook即可使用文件中定义的变量
如下所示利用vars定义变量
也可以使用如下定义
定义两个变量
也可以定义多个变量
vars:
testvar1:testfile
testvar2:testfile2
除了傅用上述语法,使用YAML的块序列语法也可以定义变量,示例如下
vars:
-testvar1:testfile
-testvar2:testfile2
变量的多级定义和多级调用
然后去查看文件
2中不同的调用变量方式
当我们需要引用这两个变量时,有两种语法可用语法一
{{nginx.conf80}}"
语法二
"{{nginx【'conf8080"1}}"
引用的变量如果处于开头的位置我们需要用引号引起来如果不适用引号的话还可以使用等号
我们也可以将变量定义在文件中然后在调用
"vars files"关键字,也可以引入多个变量文件,每个被引入的文件都需要以"“开头
vars_filet:
-/testdir/ansible/nginx_vars.yml-/testdir/ansible/other_vars.yml
"vars"关键字和“vars_files“关键字可以同时使用,如下
vars:
-conf90:/etc/nginx/conf.d/90.conf vars_files:
-/testdir/ansible/nginx_vars.yml