ansibleのインベントリに設定した変数にアクセスする方法
ansibleのインベントリに設定した変数にアクセスする方法を紹介します。
1.問題点
ansibleで下記のインベントリを作成しました。
test00 ansible_host=192.168.0.10
test01 ansible_host=192.168.0.11
[all:vars]
ansible_user=test
ansible_ssh_pass=test
[server1]
test00
[server2]
test01
[server1:vars]
hoge=1
[server2:vars]
hoge=2
このインベントリでserver1ホスト指定で実行するときに、server2の変数hoge
[server2:vars]
hoge=2
の値を参照したいのですが、方法が分かりません。
ということで、ansibleのインベントリに設定した変数にアクセスする方法を紹介します。
2.ansibleのインベントリに設定した変数にアクセスする
ansibleのインベントリに設定した変数にアクセスするには、下記のように指定します。
hostvars[groups['server1'][0]]['hoge']
例:
- name: コマンド実行
command:
cmd: echo {{ hostvars[groups['server1'][0]]['hoge'] }}
register: result
- name: "結果出力"
debug:
msg: "{{ result.stdout_lines }}"
Posted by yujiro このページの先頭に戻る
- ansibleのcopyモジュールでディレクトリを生成する方法
- ansibleでフィンガープリントを表示させない方法
- ansibleで踏み台サーバ経由でplaybookを実行する方法
- ansibleでrpmアーカイブを展開してyumでインストールする方法
- ansibleでコマンドを実行する方法
- ansibleでリモートホストのアーカイブファイルを展開する方法
- ansibleでアーカイブファイルを転送して展開する方法
- ansibleでファイルを書き替える方法
- ansibleでvisudoする方法
トラックバックURL
コメントする
greeting