-2

我在清单文件的不同变量组中使用相同名称的变量。

例如:

###hosts file####
[GROUP1]
var1  127.0.0.1
var2  127.0.0.1
[GROUP2]
var1  127.1.0.1
var2  127.1.0.1

我想知道将我的剧本应用于 GROUP2 的 var1。我该怎么做 ?例如:

- hosts: GROUP2.var1
  become: root
  gather_facts: no
  remote_user: user
4

1 回答 1

1

如果你想在第二组的第一台主机上运行剧本,你可以使用:

- hosts: {{groups.GROUP2[0]}}
  become: root
  gather_facts: no
  remote_user: user

只有一件事 var1 也是为该主机定义的主机或变量?以上{{groups.group2[0]}}将指主机不变量。如果您想在任何任务中使用该变量,请使用{{ hostvars[groups['GROUP2'][0]].var1 }}.

同样在主机文件中定义变量和主机的正确方法是首先主机,然后是变量。

[GROUP1]
127.0.0.1 var1=something
127.0.0.1 var2=something2
......
于 2016-05-14T08:00:54.457 回答