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“と書いている場合にも問題なく実行可能である。
以上。