第8章 ロールを配布するためのコレクションの作成
Ansible ロールは、Ansible Automation コンテンツの自己完結型ユニットで、関連するタスクと関連する変数、ファイル、ハンドラー、およびその他のアセットを、特定のディレクトリー構造にグループ化したものです。
Ansible ロールは、1 つ以上のプレイで実行し、Playbook 間で再利用できます。タスクの代わりにロールを呼び出すと、Playbook が簡素化されます。既存のスタンドアロンのロールをコレクションに移行し、Private Automation Hub にプッシュして、組織内の他のユーザーと共有できます。このような形でロールを配布するのが、コレクションの一般的な使用方法です。
Ansible コレクションを使用すると、再利用可能な 1 つの自動化ユニットに複数のロールを保存して配布できます。各ロール内にカスタムプラグインを複製するのではなく、コレクション内のすべてのロール間でカスタムプラグインを共有できます。
Ansible Automation Platform でロールを使用する場合は、ロールをコレクションに移動する必要があります。
既存のスタンドアロンのロールをコレクションに追加することも、新しいロールを追加することもできます。コレクションをソースコントロールにプッシュし、Ansible Automation Platform のリポジトリー用の認証情報を設定します。
8.1. コレクションの計画
すべてのロールに対して 1 つの大きな汎用のコレクションを作成するのではなく、厳選した小さな自動化のバンドルを、特定の機能ごとに個別のコレクションにまとめてください。
たとえば、myapp
という内部システムのネットワークを管理するロールは company_namespace.myapp_network
コレクションに保存し、AWS でネットワークを管理およびデプロイするロールは company_namespace.aws_net
というコレクションに保存することが考えられます。