作成したお試し環境でプレイブックを作成して試していきます。
前回の記事
プレイブックとは
Ansibleを使って実行させる処理をyaml形式のファイルにまとめたもの。
シェルやスクリプトみたいなものということで理解しました。
yamlはAWSのCFnで少しかじったことあるので何となく知っています。
プレイブック作成
調べていたら良く登場するSLコマンドのインストールをやってみます。
Ansibleサーバー側でtest.ymlを作成します。
# vi test.yml
内容はこちら
- hosts: all
tasks:
- name: slインストール
yum: name=sl
hostsのところに対象ホストを記載する
Ansibleインベントリに記載している全ホストの場合は all
他にグループ名や各ホスト名でも可能
今回の検証環境では testgまたはcliでもよい
tasksに名前と動作を記載する
名前はプレイブック実行時に表示されるのでわかりやすい名前を付ける(無くてもよい)
作成したプレイブックの文法チェック
作成したファイルの文法チェックを実施
# ansible-playbook --syntax-check 作成したファイル.yml
ちなみにエラー時はこんな感じ
わざとインデントをずらしてます。
いざ実行
の前にクライアント側でslが入っていないことを確認しておきます。
はいありません。
ではサーバ側から実行してみます。
# ansible-playbook test.yml
最後にOKが出ているのでよさそうです。
クライアント側でslコマンドを試してみます。
# sl
実行結果の内容はこちらに凄くきれいにまとめられています。
冪等性の確認
Ansibleと言えば冪等性
冪等性と言えばAnsibleなので試してみました。
もう一度ansible-playbookを実行したところ
変更点0でOKになっています。
クライアント側でslをアンインストールして再度実行したところ
変更点1でOKになっています。
結果は同じ状態になっているので冪等性を担保されているということですね。
次回はもう少し細かくプレイブックを検証してみようと思います。