Ansible 的 hostvars/group_names/groups 的使用,ansiblehostvars


Anisble 有一些高级用法,包括了一些保留的变量,比如:hostvars, group_names, groups 等。这些对于编写判断语句较有用处:

比如:group_names 的使用。

如果我们想为 [masters] 组设置 masterrole 属性,为 slave 组设置 slaverole 属性。

一般的做法是:

[masters]
xxx.xxx.master.domain
[masters:vars]
role=master

[slaves]
xxx.xxx.slave.domain
[slaves:vars]
role=slave

现在有了 group_names 则不需要这样,直接定义一个 .j2 的文件,然后在里面定义即可。

比如:

role={% if "masters" in group_names %},master{% endif %}{% if "slaves" in group_names %},slave{% endif%}

相关内容

    暂无相关文章