3.7. 実行環境の構築および使用
Red Hat Ansible Automation Platform のすべての自動化は、自動化実行環境と呼ばれるコンテナーイメージ上で実行されます。
自動化実行環境は、Ansible コントロールノードとして機能する一貫性のある共有可能なコンテナーイメージです。自動化実行環境は、外部の依存関係のある Ansible コンテンツを共有する際の課題を軽減します。自動化コンテンツが開発者が作成したスクリプトのようなものだとすると、自動化実行環境はその開発者の環境のレプリカのようなもので、開発者が作成した自動化コンテンツを再現およびスケーリングすることが可能となります。このように、実行環境を使用すると、さまざまな環境で自動化を簡単に実装できます。
自動化実行環境には、以下が含まれます。
- Ansible Core
- Ansible Runner
- Ansible コレクション
- Python ライブラリー
- システムの依存関係
- カスタムのユーザーニーズ
Ansible Automation Platform サブスクリプションに含まれるデフォルトのベース実行環境を使用することも、Ansible Builder を使用して自動化実行環境を定義して作成することもできます。
3.7.1. ベース自動化実行環境の使用
Ansible Automation Platform のサブスクリプションにより、いくつかのベース自動化実行環境にアクセスできます。ベース実行環境は、カスタマイズされた実行環境を作成するための土台として使用できます。
Ansible Automation Platform には、次のデフォルトの実行環境が含まれています。
-
Minimal
- 最新の Ansible-core 2.15 リリースと Ansible Runner が含まれていますが、コレクションやその他のコンテンツは含まれていません。 -
EE Supported
- Minimal に加え、Red Hat がサポートするすべてのコレクションと依存関係が含まれています。
Ansible Automation Platform に含まれるベースイメージは、Red Hat Ecosystem Catalog (registry.redhat.io) でホストされています。
前提条件
- 有効な Red Hat Ansible Automation Platform サブスクリプションがある。
手順
registry.redhat.io にログインします。
podman login registry.redhat.io
$ podman login registry.redhat.io
Copy to Clipboard Copied! - レジストリーからベースイメージをプルします。
$podman pull registry.redhat.io/aap/<image name>
$podman pull registry.redhat.io/aap/<image name>
関連情報
これらの環境は多くの自動化ユースケースに対応しますが、特定のニーズに合わせてこれらのコンテナーをカスタマイズすることもできます。実行環境のカスタマイズの詳細は、「実行環境の作成と使用」ガイドの 既存の自動化実行環境イメージのカスタマイズ を参照してください。
3.7.1.1. Ansible Builder について
Ansible Builder (実行環境ビルダーとも呼ばれます) を使用して、まったく新しい実行環境を作成することもできます。Ansible Builder は、Ansible の実行環境を作成するために使用できるコマンドラインツールです。実行環境を作成するには、Ansible Builder を使用する必要があります。
独自の実行環境を構築するには、以下を実行する必要があります。
- Ansible Builder のダウンロード
- 実行環境を定義する定義ファイルの作成
- 定義ファイルをベースとする実行環境イメージの作成
実行環境の構築の詳細は、実行環境の作成と使用 を参照してください。
3.7.2. ジョブテンプレートへの実行環境の追加
前提条件
- Ansible Builder の使用 の説明に従って、ansible-builder を使用して実行環境が作成されている。実行環境を作成したら、その環境を使用してジョブを実行できます。Automation Controller UI を使用して、ジョブテンプレートで使用する実行環境を指定します。
- 実行環境がグローバルに使用できるように指定されているか、組織に関連付けられているかに応じて、ジョブで実行環境を使用するための適切なレベルの管理者権限を持っている。組織に関連付けられた実行環境では、組織管理者がそれらの実行環境でジョブを実行できる必要があります。
- 認証情報が割り当てられた実行環境を使用するジョブまたはジョブテンプレートを実行する前に、認証情報にユーザー名、ホスト、およびパスワードが含まれていることを確認している。
手順
-
ナビゲーションパネルから、
を選択します。 - をクリックして実行環境を作成します。
以下のフィールドに該当する詳細を入力します。
- Name (必須): 実行環境の名前を入力します。
-
Image (必須): イメージ名を入力します。イメージ名には、完全な場所 (リポジトリー)、レジストリー、イメージ名、バージョンタグが必要です。たとえば、
quay.io/ansible/awx-ee:latestrepo/project/image-name:tag
のように入力します。 オプション: Pull: ジョブを実行するときのプルのタイプを選択します。
- Always pull container before running: コンテナーの最新のイメージファイルをプルします。
- Only pull the image if not present before running: 何も指定されていない場合にのみ、最新のイメージをプルします。
Never pull container before running: コンテナーイメージの最新バージョンをプルしません。
注記プルのタイプを設定しなかった場合、値はデフォルトで Only pull the image if not present before running になります。
- オプション: Description: 必要に応じて説明を入力します。
- オプション: Organization: この実行環境を使用する組織を指定します。実行環境を複数の組織間で使用できるようにするには、このフィールドを空白のままにします。
- Registry credential: イメージに保護されたコンテナーレジストリーがある場合は、それにアクセスするための認証情報を提供します。
- をクリックします。新しく追加した実行環境をジョブテンプレートで使用する準備ができました。
-
ジョブテンプレートに実行環境を追加するために、
に移動してテンプレートを選択します。 をクリックし、execution environment というラベルの付いたフィールドで実行環境を指定します。
検証
実行環境をジョブテンプレートに追加すると、そのテンプレートは実行環境の詳細の Templates タブに表示されます。
3.7.3. コンテナーレジストリーについて
多数の自動化実行環境を維持する必要がある場合は、それらを Private Automation Hub にリンクされたコンテナーレジストリーに保存できます。
詳細は、「実行環境の作成と使用」ガイドの Private Automation Hub コンテナーレジストリーへの入力 を参照してください。