可以使用ansible的组变量和主机变量在清单中为特定组设置特定变量。在ansible清单文件中定义组变量时,需要将变量名放在[group_name:vars]的部分,并将变量名和值放在等待符号之间,如下所示:
[group1:vars] myvar=foo
[group2:vars] myvar=bar
在上面的示例中,两个组分别分配了myvar变量不同的值。在清单文件中使用变量时,可以通过变量名来访问这些变量,例如:
此任务将输出清单中定义的myvar变量的值。
另外,在组内也可以定义主机变量,如下所示:
[group1] host1 host2
[group1:vars] myvar=foo
[host1] myvar=bar
在上面的示例中,host1是属于group1组的主机,但是为了host1主机的特殊需求,对myvar变量进行了单独的定义。在这种情况下,如果在执行任务时访问myvar变量,则host1使用自己的myvar变量,而host2使用组变量中的myvar变量。