第1章 はじめに
Ansible Playbook は自動化タスクの青写真で、自動化タスクとは、ソリューションのインベントリー全体で、手作業を抑えて実行するアクションのことです。Playbook は Ansible に、どのデバイスで実行するかを指示します。IT 環境全体で何百、何千もの同様のテクノロジーに同じアクションを手動で適用する代わりに、Playbook を実行すると、ルーターの設定など、指定された種類のインベントリーに対して同じアクションが自動的に完了されます。
Playbook は、オペレーティングシステムや Kubernetes プラットフォーム、ネットワーク、セキュリティーシステム、GitHub などのコードリポジトリーなどの IT インフラストラクチャーを自動化するために定期的に使用されます。Playbook を使用すると、最初からすべて作成する手動のオーバーヘッドなしで、アプリケーション、サービス、サーバーノード、その他のデバイスをプログラムできます。Playbook とその中の条件、変数、タスクは、無期限に保存、共有、再利用できます。こうすることで、運用上の知識を体系化し、同じアクションを一貫して実行することが容易になります。
1.1. Ansible Playbook の仕組み リンクのコピーリンクがクリップボードにコピーされました!
Ansible Playbook は、指定したインベントリーまたはホストのグループに自動的に実行されるタスクの一覧です。1 つ以上の Ansible タスクを組み合わせてプレイ、つまり、特定のホストにマッピングされたタスクを順序付けてグループ化できます。
タスクは、書き込まれた順序で実行されます。
Playbook には 1 つ以上のプレイを含めることができます。
Playbook は、1 つ以上の プレイ を順序付けしたリストまとめ、構成されます。
Playbook と プレイ という用語はスポーツに例えられます。
各プレイは、Playbook の全体的な目標の一部を実行し、1 つ以上のタスクを実行します。
各タスクは Ansible モジュールを呼び出します。
- Playbook
- 全体的な目標を達成するために、Ansible が上から下に操作を実行する順序を定義するプレイのリスト。
- プレイ
- インベントリーのマネージドノードにマップするタスクの順序付きリスト。
- タスク
- Ansible が実行する操作を定義する単一モジュールへの参照。
- ロール
- ロールは、必要に応じて任意の Playbook で使用できる「ライブラリー」に機能を組み込むことで、Playbook 内のコードを再利用可能にする方法です。
- モジュール
- Ansible が管理ノードで実行するコードまたはバイナリーの単位。
Ansible モジュールは、各モジュールの 完全修飾コレクション名 (FQCN) を持つコレクションにグループ化されます。タスクはモジュールによって実行され、それぞれが Playbook 内の特定のタスクを実行します。モジュールには、タスクが実行される時期と場所、およびタスクを実行するユーザーを決定するメタデータが含まれています。次のようなあらゆる種類の IT タスクを実行する Ansible モジュールが何千もあります。
- クラウド管理
- ユーザー管理
- ネットワーク
- セキュリティー
- 設定管理
- 通信