Ansibleを使うと、シェルスクリプトと比べて何がうれしいのでしょうか。
超基本ですが、あえて書いてみます。
Ansibleでは、Inventoryで対象ホストを指定し、Playbookと呼ばれるスクリプトに書いたタスクを実行します。
その際に、実行オプションを指定することで、内容確認や、タスク実行方法を変える事が出来ます。
つまり、シェルスクリプトより柔軟に作業を行う事ができます。
$ ansible-playbook (オプション) -i (Inventory) (Playbook)
以下に、具体的なオプションを挙げてみます。
確認
これから実行しようとしている作業を確認する事ができます。
オプション | 意味 |
---|---|
--list-hosts | 実行対象ホストを確認する |
--list-tasks | 実行タスクを確認する |
-C, --check | タスクを実行せずに実行チェックのみ行う(ドライラン) |
実行方法
タスクの実行方法を指定する事が可能です。
オプション | 意味 |
---|---|
--step | タスクをステップ実行する |
-t TAGS, --tags=TAGS | 指定したタグが付いたタスクを実行する |
対象ホストとタスクが分離されており、さらにオプションも充実しているので、シェルスクリプトのように、秘伝のタレ化する事を防ぐことができます。
ちなみに、Ansibleのオプションは、以下のコマンドで確認可能です。
$ ansible-playbook