ぴよ丸水産

週末ファゴッティストによる技術ブログ

【Ansible】Ansible Engine Workshopやってみた

この前、Ansibleもくもく会というものに行ってみたのですが、 自持ちのPCがポンコツ過ぎて、Wifiが拾えず、 何もできなかったので、家でやりました。

https://github.com/ansible/workshops/tree/master/exercises/ansible_enginegithub.com

思ったことなどつらつらと。

adhocでモジュールお試し

[Question]setupモジュールってなんだっけ。(STEP3)

(参考)http://tdoc.info/blog/2013/08/23/ansible_fact.html

[Answer]

Ansibleに備わっているターゲットホストの情報(facts)を収集するモジュール setupモジュール使うと収集情報すべて出力する

[ちなみに]

Playbookの設定「gather_facts:」にyesを設定すると、自動でfactモジュール実行 →デフォルトではyes(ちょい時間かかる)  no設定するとplaybook実行時に省略される

[所感]

使い方がいろいろありそうだ。

  • ansible_distributionの値で、処理を分岐させる(ubuntuの場合、RHの場合)
  • ターゲットホストの/etc/ansible/facts.d/にファイルを置いて、(templateモジュールで配置するなど)自分でカスタマイズfactsを設定することができる
  • ターゲットホストの負荷状況によって、処理を分けられる
  • setupモジュールのfact_pathに引数を指定して、値を引っ張ってきて、変数に入れる

[Question]handlerセクションってなんだっけ

[Answer]

role内で何度も使いまわすようなtaskを定義しておけば、 notify:で呼びだせる たとえば、構築、設定で再起動が何回か必要になるときに使うべし

[Discovery]便利な構文チェックオプション --syntax-check

こりゃ便利。 こんな凡ミスごときで、Playbook止めてしまった。。という罪悪感が薄れる。

[Attention]変数使うときに、いつも"{{ }}"つけろって怒られる件

あるある。

[Discovery]ansible-galaxyってコマンドなんだ、、、!

感動。