グループの親子関係

Ansibleにおいて表題の通り。

■ 環境

  • Ansible 2.3.1.0

■ InventoryFile

下記のように親子関係を持つことが可能だ。

$ cat hosts
[projectA:children]
sub1
sub2

[sub1]
192.168.33.11
192.168.33.12

[sub2]
192.168.33.21
192.168.33.22
192.168.33.23

[parent:vars]
ansible_user=withsin
$

projectA“全体に対して実行したい場合は下記のようにする。

$ ansible-playbook example.yml

sub1“のグループのみに実行したい場合は下記のようにする。

$ ansible-playbook example.yml -l sub1

sub2“のグループのみに実行したい場合は下記のようにする。

$ ansible-playbook example.yml -l sub2

変数”ansible_user“は上記の全てで適用される。

また、これらは”example.yml“の中で”hosts: projectA“と書いている場合にも問題なく実行可能である。

以上。

■ 関連

playbook実行時にホストグループを指定