てくなべ (tekunabe)

ansible / network / automation

【Ansible】インベントリファイルのグループ親子関係の確認には ansible-inventory コマンドの --graph オプションが便利

Ansible には インベントリファイル の情報を表示するansible-inventory コマンドがあります。グループの親子関係を階層化して表示する--graph オプションが便利なのでご紹介します。

インベントリファイル

8個のホストを、種別(web/router)や地域、東日本、西日本のグループでに所属させています。

[sendai]
sendai-web01
sendai-rt01

[tokyo]
tokyo-web01
tokyo-rt01

[nagoya]
nagoya-web01
nagoya-rt01

[osaka]
osaka-web01
osaka-rt01


[east:children]
sendai
tokyo

[west:children]
nagoya
osaka


[web]
sendai-web01
tokyo-web01
nagoya-web01
osaka-web01

[router]
sendai-rt01
tokyo-rt01
nagoya-rt01
osaka-rt01

ansible-inventory コマンド実行(with --graph)

このように、ネストさせた親子関係も分かりやすく表示されます。

(a) [vagrant@centos7 demo]$ ansible-inventory -i inventory --graph
@all:
  |--@east:
  |  |--@sendai:
  |  |  |--sendai-rt01
  |  |  |--sendai-web01
  |  |--@tokyo:
  |  |  |--tokyo-rt01
  |  |  |--tokyo-web01
  |--@router:
  |  |--nagoya-rt01
  |  |--osaka-rt01
  |  |--sendai-rt01
  |  |--tokyo-rt01
  |--@ungrouped:
  |--@web:
  |  |--nagoya-web01
  |  |--osaka-web01
  |  |--sendai-web01
  |  |--tokyo-web01
  |--@west:
  |  |--@nagoya:
  |  |  |--nagoya-rt01
  |  |  |--nagoya-web01
  |  |--@osaka:
  |  |  |--osaka-rt01
  |  |  |--osaka-web01