ブログ
Ansibleでhost_varsなどに書かれた変数をwith_itemsで取得する方法
こんにちにわ。アウルキャンプ永野です。
弊社ではAnsibleでの自動構築を推進しています。
Ansibleは楽ですね。
Ansibleも2.0になったりRedhatに買収されたりしたことで
Chefより伸びるんではないか?!
と密かに期待をしております。
早速ですが以下のようなことをしたい場合は
host_varsに変数を書いてループさせたい時ってありますよね?
自分はありました。
httpdとpostfix
httpdとpostfixとmysql
その場合は以下のように記載すると幸せになれました!
server1用のservice_on配列を作成します。
service_on: - httpd - postfix
こちらも同様にserver2用のservice_on配列を作成します。
service_on: - httpd - iptables - mysql
- name: "service start" name: "{{ item }}" state: started enabled: yes with_items: service_on become: yes
nameに記載されている{{ item }}には
忘れずにダブルコーテションで閉じること。
これを閉じてしまうとエラーになってしまいます。
これを知っているだけでも色々な応用が可能になり
Ansibleのベストプラクティスに則ったディレクトリ構成が使いやすくなります。
結構ハマると見つかりづらいのでしっかりと覚えておきたいところです。
関連記事
2024.09.30
2024.09.30
2024.04.08