如何在Ansible中对具有不同组变量的不同组中存在的同一主机执行操作?

时间:2019-11-25 19:31:58

标签: ansible ansible-inventory ansible-facts

我的主机配置如下:

pug -w ./ -o ./html -P

在上面,host11在subgrp1和subgrp2中。我为subgrp1和subgrp2使用了不同的配置值,如下所示:

all:
  children:
    grp1:
      hosts:
        host1:
    grp2:
      children:
        subgrp1:
          hosts:
            host11:
            host12:
        subgrp2:
          hosts:
            host21:
            host22:
            host11:
    grp3:
      hosts:
        host31:
        host32:

当前,变量name1和name2被value3和value 4破坏了,大概来自subgrp2,因为它后来以词法顺序出现。

我希望能够在host11上运行两次,对于它所在的每个组都运行一次,但是要使用正确的组的配置变量。

下面是我的剧本:

$ cat group_vars/subgrp1/main.yml
config_vars:
  name1: "value1"
  name2: "value2"
$ cat group_vars/subgrp2/main.yml
config_vars:
  name1: "value3"
  name2: "value4"

0 个答案:

没有答案