インストール計画
Ansible Automation Platform のインストールを計画する
概要
はじめに
Red Hat Ansible Automation Platform に興味をお持ちいただきありがとうございます。Ansible Automation Platform は、Ansible を装備した環境に、制御、ナレッジ、委譲の機能を追加して、チームが複雑かつ複数層のデプロイメントを管理できるように支援する商用サービスです。
このガイドの情報を使用して、Red Hat Ansible Automation Platform のインストールを計画してください。
Red Hat ドキュメントへのフィードバック (英語のみ)
このドキュメントの改善に関するご意見がある場合や、エラーを発見した場合は、https://access.redhat.com から Technical Support チームに連絡してください。
第1章 Red Hat Ansible Automation Platform インストールの計画
Red Hat Ansible Automation Platform は、Red Hat Enterprise Linux と Red Hat OpenShift の両方でサポートされます。このガイドを使用して、Red Hat Enterprise Linux への Red Hat Ansible Automation Platform のインストールを計画してください。
Red Hat OpenShift Container Platform 環境に Red Hat Ansible Automation Platform をインストールするには、OpenShift Container Platform へのインストール を参照してください。
第2章 Red Hat Ansible Automation Platform のコンポーネント
Ansible Automation Platform は、お客様の自動化のニーズに対応するために、相互に接続されたサービス群で構成されています。これらのサービスは、自動化を保存、決定、実行する機能を提供します。これらの機能はすべて、ユーザーインターフェイス (UI) と RESTful アプリケーションプログラミングインターフェイス (API) を通じて利用できます。次の各コンポーネントをデプロイすると、追加のアクションを実行することなく、すべての機能を使用できるようになります。
- プラットフォームゲートウェイ
- Automation Hub
- Private Automation Hub
- 高可用性 Automation Hub
- Event-Driven Ansible Controller
- 自動化メッシュ
- 自動化実行環境
- Ansible Galaxy
- Automation content navigator
2.1. プラットフォームゲートウェイ
プラットフォームゲートウェイは、Ansible Automation Platform の認証と認可を処理するサービスです。これは Ansible Automation Platform への一元的な入り口であり、プラットフォームのユーザーインターフェイスを提供するため、ユーザーは 1 つの場所からすべての Ansible Automation Platform サービスに認証してアクセスできます。Ansible Automation Platform で利用可能なサービスの詳細は、Ansible Automation Platform のスタートガイド の 主な機能と概念 を参照してください。
プラットフォームゲートウェイには、組織、ユーザー、サービスクラスターの作成や変更など、ゲートウェイリソースへの変更を取得するアクティビティーストリームが組み込まれています。アクティビティーストリームは、変更ごとに、変更の時刻、変更を開始したユーザー、実行されたアクション、およびオブジェクトに対して実際に行われた変更 (可能な場合) に関する情報を収集します。収集される情報は、変更の種類によって異なります。
アクティビティーストリームによってキャプチャーされた詳細情報には、API からアクセスできます。
/api/gateway/v1/activitystream/
/api/gateway/v1/activitystream/
2.2. Ansible Automation Hub
Ansible Automation Hub は、Ansible コンテンツコレクションの認定済みコンテンツのリポジトリーです。Ansible Automation Hub は、Red Hat とそのパートナーがコンテンツを公開し、お客様が認定済みでサポートされている Ansible Content Collection を発見するための一元化されたリポジトリーです。Red Hat Ansible Certified Content は、Red Hat によってテストされ、サポートされているコンテンツをユーザーに提供します。
2.3. Private Automation Hub
Private Automation Hub は、コンテンツを同期するためのオフラインソリューションとオンプレミスソリューションの両方を提供します。Red Hat クラウド Automation Hub からコレクションと実行環境のイメージを同期し、独自のカスタム自動化コレクションと実行イメージを保存して提供できます。Ansible Galaxy や他のコンテナーレジストリーなどの他のソースを使用して、Private Automation Hub にコンテンツを提供することもできます。Private Automation Hub は、エンタープライズディレクトリーと CI/CD パイプラインに統合できます。
2.4. 高可用性 Automation Hub
高可用性 (HA) の設定により、Automation Hub デプロイメントの信頼性およびスケーラビリティーが向上します。
Automation Hub の HA デプロイメントには、ワークロードを分散するロードバランサー (「アクティブ - アクティブ」設定) で同じサービスを同時に実行する複数のノードがあります。この設定により、サービスのダウンタイムを最小限に抑えるための単一障害点がなくなり、ワークロードの要件を満たすためのノードを簡単に追加または削除できます。
2.5. Event-Driven Ansible Controller
Event-Driven Ansible Controller は、イベント駆動型自動化のためのインターフェイスであり、IT リクエストの自動解決を導入するものです。Event-Driven Ansible Controller は、イベントのソースに接続し、ルールブックを使用してそれらのイベントに対処するのに役立ちます。このテクノロジーにより、IT の速度と俊敏性が向上し、一貫性と耐障害性が実現します。Event-Driven Ansible を使用すると、以下が可能になります。
- 意思決定を自動化する
- 多くのイベントソースを使用する
- 多くの IT ユースケース内で、また多くの IT ユースケースをまたいでイベント駆動型自動化を実装する
関連情報
2.6. 自動化メッシュ
自動化メッシュは、既存ネットワークを使用して互いにピアツーピア接続を確立しているノードを介して、大規模な分散ワーカーのコレクション全体で作業分散を容易にするオーバーレイネットワークです。
自動化メッシュは以下を提供します。
- 個別にスケーリングする動的クラスター容量。これにより、ダウンタイムを最小限に抑えてノードを作成、登録、グループ化、グループ化解除、および登録解除できます。
- コントロールプレーンと実行プレーンの分離。コントロールプレーンの容量とは関係なく Playbook の実行容量をスケーリングできます。
- 遅延に対する回復力があり、停止することなく再設定可能であり、停止が存在する場合は動的に再ルーティングして別のパスを選択するデプロイメントの選択肢。
- メッシュルーティングの変更。
- FIPS (Federal Information Processing Standards) に準拠する双方向、マルチホップのメッシュ通信の可能性を含む接続性。
2.7. 自動化実行環境
自動化実行環境は、Red Hat Ansible Automation Platform のすべての自動化が実行されるコンテナーイメージです。これらは、Ansible 実行エンジンと、ユーザーが IT 環境とプロセスのあらゆる側面を自動化するのに役立つ数百のモジュールを含むソリューションを提供します。自動化実行環境は、一般的に使用されるオペレーティングシステム、インフラストラクチャープラットフォーム、ネットワークデバイス、およびクラウドを自動化します。
2.8. Ansible Galaxy
Ansible Galaxy は、Ansible コンテンツを検索、再利用、および共有するためのハブです。事前にパッケージ化されたロールの形式でコミュニティーが提供する Galaxy コンテンツは、自動化プロジェクトの開始に役立ちます。インフラストラクチャーのプロビジョニング、アプリケーションのデプロイ、およびその他のタスクを完了するためのロールは、Ansible Playbook にドロップして、顧客の環境にすぐに適用できます。
第3章 キャッシュおよびキューイングシステム
Ansible Automation Platform 2.5 では、キャッシュおよびキューイングシステムとして Redis (REmote DIctionary Server) が使用されます。Redis は、オープンソースのインメモリー NoSQL キー/値ストアです。主にアプリケーションキャッシュ、高速応答データベース、軽量メッセージブローカーとして使用されます。
プラットフォームゲートウェイと Event-Driven Ansible には、集中型の Redis が提供され、それらのコンポーネント間で共有されます。Automation Controller と Automation Hub には、独自の Redis インスタンスがあります。
このキャッシュおよびキューシステムは、データをディスクやソリッドステートドライブ (SSD) ではなくメモリーに保存するため、速度、信頼性、パフォーマンスが向上します。Ansible Automation Platform では、このシステムによって、Ansible Automation Platform 内のさまざまなサービスを対象に、次の種類のデータがキャッシュされます。
Automation Controller | Event-Driven Ansible サーバー | Automation Hub | プラットフォームゲートウェイ |
---|---|---|---|
該当なし。Automation Controller は Ansible Automation Platform 2.5 で共有 Redis を使用しません。 | イベントキュー | 該当なし。Automation Hub は Ansible Automation Platform 2.5 で共有 Redis を使用しません。 | 設定、セッション情報、JSON Web トークン |
このデータには機密性の高い個人識別情報 (PII) が含まれる場合があります。データは、Transport Layer Security (TLS) 暗号化と認証の両方を通じて、キャッシュおよびキューシステムとのセキュアな通信により保護されます。
プラットフォームゲートウェイのデータと Event-Driven Ansible のデータは、Redis 内で分離されています。そのため、どちらのサービスも他方のサービスのデータにアクセスできません。
3.1. 集中型 Redis
Ansible Automation Platform は、standalone トポロジーと clustered トポロジーの両方で、集中型の Redis インスタンスを提供します。これにより、一貫したパフォーマンスと信頼性が得られ、回復力が高まります。
3.2. クラスター Redis
クラスター Redis では、パフォーマンスの安定性を確保するためにデータが複数のノードにわたって自動的に分割され、信頼性を確保するためにノードがレプリカとして割り当てられます。コンテナー化されたデプロイメントおよび Operator ベースのデプロイメントで Ansible Automation Platform をインストールすると、プラットフォームゲートウェイと Event-Driven Ansible 間で共有されるクラスター Redis がデフォルトで提供されます。
Redis の高可用性 (HA) 互換デプロイメントには、6 台の仮想マシンが必要です。RPM デプロイメントでは、Redis は Automation Controller、実行ノード、または PostgreSQL データベースを除く各 Ansible Automation Platform コンポーネントの仮想マシンと同じ場所に配置できます。コンテナー化されたデプロイメントでは、Redis は実行ノードまたは PostgreSQL データベースを除く任意の Ansible Automation Platform コンポーネントの仮想マシンと同じ場所に配置できます。利用可能な独自のデプロイメントオプションは、テスト済みのデプロイメントモデル を参照してください。
クラスターには 3 つのプライマリーノードが含まれます。各プライマリーノードにはレプリカノードが含まれます。
プライマリーインスタンスが障害のために使用できなくなった場合、他のプライマリーノードがフェイルオーバー状態を開始し、レプリカノードをプライマリーノードに昇格します。

スタンドアロン Redis ではなくクラスター Redis をデプロイする利点は次のとおりです。
- データが複数のノードにわたって自動的に分割されます。
- データを動的に調整できます。
- システム障害の発生時に、プライマリーノードの自動フェイルオーバーが開始されます。
したがって、データのスケーラビリティーと自動フェイルオーバーが必要な場合は、クラスター Redis を使用して Ansible Automation Platform をデプロイしてください。Redis によるスケーラビリティーの詳細は、Redis 製品ドキュメントの Scale with Redis Cluster を参照してください。
クラスター Redis を使用した Ansible Automation Platform のデプロイは、RPM インストール、コンテナーインストール、および OpenShift Container Platform へのインストール ガイドを参照してください。
免責事項: この情報に含まれる外部の Web サイトへのリンクは、お客様の利便性のみを目的として提供しています。Red Hat はリンクの内容を確認しておらず、コンテンツまたは可用性に責任を負わないものとします。外部 Web サイトへのリンクが含まれていても、Red Hat が Web サイトまたはその組織、製品、もしくはサービスを保証することを意味するものではありません。お客様は、外部サイトまたはコンテンツの使用 (または信頼) によって生じる損失または費用について、Red Hat が責任を負わないことに同意するものとします。
3.3. スタンドアロン Redis
スタンドアロン Redis は、簡単にエプロイおよび設定できるシンプルなアーキテクチャーで構成されています。

回復力のあるソリューションが必須でない場合は、スタンドアロン Redis を使用して Ansible Automation Platform をデプロイしてください。
第4章 テスト済みのデプロイメントモデルの概要
Red Hat は、定義済みのトポロジーセットを使用して Ansible Automation Platform 2.5 をテストし、独自のデプロイメントオプションを提供します。Ansible Automation Platform のすべてのコンポーネントをデプロイして、追加の操作不要ですべての機能を使用できるようにします。
Red Hat は、一連の定義済みのインフラストラクチャートポロジーまたはリファレンスアーキテクチャーに基づいて、Ansible Automation Platform 2.5 のインストールをテストしています。エンタープライズ組織は、エンタープライズトポロジーの 1 つを実稼働環境に使用して、最高レベルの稼働時間、パフォーマンス、継続的なスケーラビリティーを確保できます。リソースが制限されている組織または環境では、グローストポロジーを使用できます。
Ansible Automation Platform は、異なるインフラストラクチャートポロジーや環境設定によりインストールすることが可能です。Red Hat は、公開されているリファレンスアーキテクチャー以外のトポロジーは、完全にテストしていません。Red Hat は、すべての新規デプロイメントにテスト済みトポロジーを使用し、最小要件を満たすデプロイメントに対して商業的に合理的なサポートを提供します。
4.1. インストールおよびデプロイメントモデル
次の表は、Ansible Automation Platform をインストールまたはデプロイするさまざまな方法を示しています。
モード | インフラストラクチャー | 説明 | テスト済みのトポロジー |
---|---|---|---|
RPM | 仮想マシンとベアメタル | RPM インストーラーは、RPM を使用してホストマシンにプラットフォームをインストールすることにより、Red Hat Enterprise Linux に Ansible Automation Platform をデプロイします。お客様は製品とインフラストラクチャーのライフサイクルを管理します。 | |
コンテナー | 仮想マシンとベアメタル | コンテナー化されたインストーラーは、ホストマシン上のコンテナー内でプラットフォームを実行する Podman を使用して、Red Hat Enterprise Linux に Ansible Automation Platform をデプロイします。お客様は製品とインフラストラクチャーのライフサイクルを管理します。 | |
Operator | Red Hat OpenShift | Operator は、Red Hat OpenShift Operator を使用して、Red Hat OpenShift 内に Ansible Automation Platform をデプロイします。お客様は製品とインフラストラクチャーのライフサイクルを管理します。 |
第5章 システム要件
この情報を使用して、Red Hat Ansible Automation Platform のインストールを計画し、ユースケースに適した自動化メッシュトポロジーを設計します。
前提条件
-
sudo
コマンドまたは権限昇格により、root アクセスを取得できる。権限昇格の詳細は、Understanding privilege escalation を参照してください。 - root から、AWX、PostgreSQL、Event-Driven Ansible、Pulp などのユーザーへ権限を降格できる。
- すべてのノードで NTP クライアントを設定している。
5.1. RPM インストールのシステム要件
Ansible Automation Platform の RPM インストール方式のシステム要件は、RPM インストール の システム要件 セクションを参照してください。
5.2. コンテナーインストールのシステム要件
Ansible Automation Platform のコンテナー化インストール方法のシステム要件については、コンテナー 化インストール の システム 要件 セクションを参照してください。
5.3. OpenShift Container Platform へのインストールのシステム要件
OpenShift Container Platform に Ansible Automation Platform をインストールする場合のシステム要件は、テスト済みのデプロイメントモデル の テスト済みのシステム構成 セクションを参照してください。
第6章 ネットワークポートおよびプロトコル
Red Hat Ansible Automation Platform は、サービスとの通信に複数のポートを使用します。Red Hat Ansible Automation Platform サーバーへの着信接続を有効にするには、これらのポートを開いて利用できるようにする必要があります。これらのポートが利用可能で、サーバーのファイアウォールでブロックされていないことを確認してください。
以下のアーキテクチャー図は、すべての可能なコンポーネントと共に完全にデプロイされた Ansible Automation Platform の例です。
以下のユースケースによっては、実行ノードからの直接リンクの代わりにホップノードが使用されます。ホップノードは、コントロールノードと実行ノードを接続するためのオプションです。ホップノードは、最小の CPU およびメモリーを使用するため、ホップノードの垂直スケーリングは、システムの容量には影響しません。
図に示されているクライアントと Automation Hub、Event-Driven Ansible、Automation Controller 間の直接接続は、下位互換性を提供するために Red Hat Ansible Automation Platform 2.4 から Red Hat Ansible Automation Platform 2.5 にアップグレードされたシステムにのみ適用されます。Red Hat Ansible Automation Platform 2.5 に接続は存在しません。
以下の表は、宛先ポートとネットワークトラフィックの方向を示しています。
図6.1 Ansible Automation Platform のネットワークポートおよびプロトコル

以下に示すデフォルトの宛先ポートとインストーラーインベントリーは設定可能です。使用している環境に合わせて設定すると、動作が変わる可能性があります。
Port | プロトコル | サービス | ソース | 宛先 | 用途 | インストーラーのインベントリー変数 |
---|---|---|---|---|---|---|
22 | TCP | SSH | インストーラーノード | Automation Hub | インストール (一時的) |
|
22 | TCP | SSH | インストーラーノード | controller_node | インストール (一時的) |
|
22 | TCP | SSH | インストーラーノード | Event-Driven Ansible ノード | インストール (一時的) |
|
22 | TCP | SSH | インストーラーノード | 実行ノード | インストール (一時的) |
|
22 | TCP | SSH | インストーラーノード | ホップノード | インストール (一時的) |
|
22 | TCP | SSH | インストーラーノード | ハイブリッドノード | インストール (一時的) |
|
22 | TCP | SSH | インストーラーノード | PostgreSQL データベース | インストール中のリモートアクセス (一時的) |
|
80/443 | TCP | HTTP/HTTPS | インストーラーノード | Automation Hub | バンドルインストーラーを使用するときに、インストーラーノードが実行環境イメージを Automation Hub にプッシュできるようにします。 | 固定値 |
80/443 | TCP | HTTP/HTTPS | Event-Driven Ansible ノード | Automation Hub | プルコンテナー決定環境 | 固定値 |
80/443 | TCP | HTTP/HTTPS | Event-Driven Ansible ノード | Automation Controller | Automation Controller ジョブを起動します | 固定値 |
80/443 | TCP | HTTP/HTTPS | Automation Controller | Automation Hub | コレクションをプルします | 固定値 |
80/443 | TCP | HTTP/HTTPS | 実行ノード | Automation Hub | 実行ノードが Automation Hub から実行環境イメージをプルできるようにします。 | 固定値 |
80/443 | TCP | HTTP/HTTPS | HA Proxy ロードバランサー/Ingress ノード | プラットフォームゲートウェイ | お客様が制御し、複数のプラットフォームゲートウェイへの要求を負荷分散できるゲートウェイ上の Ingress です。 | このポートは、Ansible Automation Platform の外部でお客様が管理します。 |
80/443 | TCP | HTTP/HTTPS | プラットフォームゲートウェイ | Automation Controller | ゲートウェイと Ansible Automation Platform コンポーネント間をリンクします | |
80/443 | TCP | HTTP/HTTPS | プラットフォームゲートウェイ | Automation Hub | ゲートウェイと Ansible Automation Platform コンポーネント間をリンクします | |
80/443 | TCP | HTTP/HTTPS | プラットフォームゲートウェイ | Event-Driven Ansible | ゲートウェイと Ansible Automation Platform コンポーネント間をリンクします | |
80/443 | TCP | HTTP/HTTPS | HA Proxy ロードバランサー/Ingress ノード | Automation Controller | プラットフォームゲートウェイからコンポーネントに直接アクセスする場合にのみ関連します |
|
80/443 | TCP | HTTP/HTTPS | HA Proxy ロードバランサー/Ingress ノード | Automation Hub | プラットフォームゲートウェイからコンポーネントに直接アクセスする場合にのみ関連します |
|
80/443 | TCP | HTTP/HTTPS | HA Proxy ロードバランサー/Ingress ノード | Event-Driven Ansible | プラットフォームゲートウェイからコンポーネントに直接アクセスする場合にのみ関連します |
|
443 | TCP | HTTPS | リモート実行ノード (クライアント) | controller_node | Web UI/API |
|
5432 | TCP | PostgreSQL | controller_node | PostgreSQL データベース | 内部データベースが別のコンポーネントとともに使用されている場合にのみ開放されます。そうでない場合は、このポートを開放しないでください。 |
|
5432 | TCP | PostgreSQL | Event-Driven Ansible ノード | PostgreSQL データベース | 内部データベースが別のコンポーネントとともに使用されている場合にのみ開放されます。そうでない場合は、このポートを開放しないでください。 |
|
5432 | TCP | PostgreSQL | Automation Hub | PostgreSQL データベース | 内部データベースが別のコンポーネントとともに使用されている場合にのみ開放されます。そうでない場合は、このポートを開放しないでください。 |
|
5432 | TCP | PostgreSQL | プラットフォームゲートウェイ | 外部データベース | 内部データベースが別のコンポーネントとともに使用されている場合にのみ開放されます。そうでない場合は、このポートを開放しないでください。 |
|
6379 | TCP | Redis | Event-Driven Ansible | Redis ノード | ジョブの起動 | |
6379 | TCP | Redis | プラットフォームゲートウェイ | Redis ノード | データの保存と取得 | |
6443 | TCP | HTTP/HTTPS | controller_node | OpenShift Container Platform | コンテナーグループを使用してジョブを実行する場合にのみ必要です。 | OpenShift API サーバーのホスト名 |
8443 | TCP | HTTPS | プラットフォームゲートウェイ | プラットフォームゲートウェイ | nginx | |
16379 | TCP | Redis | Redis ノード | Redis ノード | 復元力のある Redis 設定を実現するための Redis クラスターバスポート | |
27199 | TCP | Receptor | controller_node | 実行ノード | 設定可能 メッシュノードは、コントローラーに直接ピア接続されます。 関係するダイレクトノード。27199 通信は、(インストールインベントリーに応じて) 実行ノードに対して双方向にすることができます |
|
27199 | TCP | Receptor | controller_node | ホップノード | 設定可能 ホップノードを介してリレーされる場合、ホップノードから Receptor ポートへの接続を有効にします。 |
|
27199 | TCP | Receptor | controller_node | ハイブリッドノード | 設定可能 ホップ接続されていないノードを介してリレーされる場合、コントローラーから Receptor ポートへの接続を有効にします。 |
|
27199 | TCP | Receptor | 実行ノード | ホップノード | 設定可能 メッシュ 27199 通信は、(インストールインベントリーに応じて) 実行ノードに対して双方向にすることができます コントローラーから Receptor ポートへの接続を許可します。 |
|
27199 | TCP | Receptor | ホップノード | 実行ノード | 設定可能 メッシュ 27199 通信は、(インストールインベントリーに応じて) 実行ノードに対して双方向にすることができます |
|
27199 | TCP | Receptor | 実行ノード | controller_node | 設定可能 メッシュ 27199 通信は、(インストールインベントリーに応じて) 実行ノードに対して双方向にすることができます コントローラーから Receptor ポートへの接続を許可します。 |
|
27199 | TCP | Receptor | OCP クラスター | 実行ノード | ||
8443 | TCP | HTTPS | プラットフォームゲートウェイ | Event-Driven Ansible ノード | イベントストリームトラフィックの受信 |
- ハイブリッドノードは、制御ノードと実行ノードの組み合わせとして機能するため、ハイブリッドノードは両方の接続を共有します。
-
receptor_listener_port
が定義されている場合、マシンには、受信 TCP 接続を確立するために使用可能なオープンポート (27199 など) も必要です。 場合によっては、サーバーが Receptor ポート (デフォルトは 27199) をリッスンしないことがあります。
ノード A、B、C、D を持つコントロールプレーンがあるとします。
RPM インストーラーは、最小権限アプローチを使用してコントロールプレーンノード間に強力に接続されたピアリングを作成し、必要なノード上でのみ TCP リスナーを開きます。Receptor の接続はすべて双方向接続であるため、接続が確立されると、Receptor は双方向に通信できるようになります。
以下に、3 つのコントローラーノードのピアリング設定を例として示します。
コントローラーノード A -→ コントローラーノード B
コントローラーノード A -→ コントローラーノード C
コントローラーノード B -→ コントローラーノード C
以下を設定すると、リスナーを強制できます。
receptor_listener=True
ただし、コントローラー B -→ A への接続は、すでに存在するため、拒否される可能性があります。
その場合、コントローラー A は他のノードへの接続を作成しているため、コントローラー A には何も接続されません。コントローラー A で次のコマンドを実行しても、何も返されません。
[root@controller1 ~]# ss -ntlp | grep 27199 [root@controller1 ~]#
URL | 用途 |
---|---|
一般的なアカウントサービス、サブスクリプション | |
Insights データのアップロード | |
インベントリーのアップロードおよびクラウドコネクター接続 | |
Insights ダッシュボードへのアクセス |
URL | 用途 |
---|---|
一般的なアカウントサービス、サブスクリプション | |
実行環境のインデックス作成 | |
TCP | |
https://automation-hub-prd.s3.amazonaws.com | ファイアウォールアクセス |
Ansible コミュニティーがキュレートされた Ansible コンテンツ | |
https://ansible-galaxy-ng.s3.dualstack.us-east-1.amazonaws.com | コミュニティーがキュレーションした Ansible コンテンツリポジトリー用のデュアルスタック IPv6 エンドポイント |
Red Hat およびパートナーが提供するコンテナーイメージへのアクセス | |
Red Hat およびパートナーキュレートされた Ansible コレクション |
URL | 用途 |
---|---|
Red Hat およびパートナーが提供するコンテナーイメージへのアクセス | |
| Red Hat およびパートナーが提供するコンテナーイメージへのアクセス |
| Red Hat およびパートナーが提供するコンテナーイメージへのアクセス |
| Red Hat およびパートナーが提供するコンテナーイメージへのアクセス |
| Red Hat およびパートナーが提供するコンテナーイメージへのアクセス |
2025 年 4 月 1 日 の時点で、quay.io
は 3 つのエンドポイントを別に追加しています。そのため、お客様はファイアウォールシステムリスト内の許可リストとブロックリストを調整して、次のエンドポイントを含める必要があります。
-
cdn04.quay.io
-
cdn05.quay.io
-
cdn06.quay.io
コンテナーイメージのプルに関する問題を回避するには、次のホスト名への送信 TCP 接続 (ポート 80 および 443) を許可する必要があります。
-
cdn.quay.io
-
cdn01.quay.io
-
cdn02.quay.io
-
cdn03.quay.io
-
cdn04.quay.io
-
cdn05.quay.io
-
cdn06.quay.io
registry.redhat.io
または registry.access.redhat.com
への送信接続を特に有効にするすべてのファイアウォール設定にこの変更を加えます。
ファイアウォールルールを設定するときは、IP アドレスの代わりにホスト名を使用します。
この変更を加えた後も、引き続き registry.redhat.io
または registry.access.redhat.com
からイメージをプルできます。Red Hat コンテナーイメージのプルを続行するために、quay.io
にログインする必要も、quay.io
レジストリーと直接やりとりする必要もありません。
詳細は、Firewall changes for container image pulls 2024/2025 を参照してください。
第7章 Red Hat Ansible Automation Platform インストーラーの選択および取得
Red Hat Enterprise Linux 環境のインターネット接続に基づいて、必要な Ansible Automation Platform インストーラーを選択します。以下のシナリオを確認し、ニーズを満たす Red Hat Ansible Automation Platform インストーラーを決定してください。
7.1. インターネットアクセスを使用したインストール
Red Hat Enterprise Linux 環境がインターネットに接続している場合は、Ansible Automation Platform インストーラーを選択します。インターネットアクセスを使用してインストールすると、必要な最新のリポジトリー、パッケージ、および依存関係を取得します。Ansible Automation Platform インストーラーをセットアップするには、次のいずれかの方法を選択します。
tarball インストール
- Red Hat Ansible Automation Platform のダウンロード ページに移動します。
- Ansible Automation Platform <latest-version> Setup の をクリックします。
scp
またはcurl
を使用してファイルをターゲットサーバーに転送します。scp
を使用します。-
次のコマンドを、
private_key.pem
、user
、server_ip
を適切な値に置き換えて実行します。
-
次のコマンドを、
scp -i private_key.pem aap-bundled-installer.tar.gz user@server_ip:
$ scp -i private_key.pem aap-bundled-installer.tar.gz user@server_ip:
curl
を使用します。-
セットアップファイル URL が利用可能な場合は、
curl
を使用してターゲットサーバーに直接ダウンロードできます。<download_url>
はファイル URL に置き換えます。
-
セットアップファイル URL が利用可能な場合は、
curl -0 <download_url>
$ curl -0 <download_url>
ダウンロード後にファイルを展開する必要がある場合は、次のコマンドを実行します。
tar xvzf aap-bundled-installer.tar.gz
$ tar xvzf aap-bundled-installer.tar.gz
RPM インストール
Ansible Automation Platform インストーラーパッケージをインストールします。
v.2.5 for RHEL 8 for x86_64
Copy to Clipboard Copied! Toggle word wrap Toggle overflow sudo dnf install --enablerepo=ansible-automation-platform-2.5-for-rhel-8-x86_64-rpms ansible-automation-platform-installer
$ sudo dnf install --enablerepo=ansible-automation-platform-2.5-for-rhel-8-x86_64-rpms ansible-automation-platform-installer
v.2.5 for RHEL 9 for x86_64
Copy to Clipboard Copied! Toggle word wrap Toggle overflow sudo dnf install --enablerepo=ansible-automation-platform-2.5-for-rhel-9-x86_64-rpms ansible-automation-platform-installer
$ sudo dnf install --enablerepo=ansible-automation-platform-2.5-for-rhel-9-x86_64-rpms ansible-automation-platform-installer
dnf install
は、リポジトリーがデフォルトで無効になっているため、リポジトリーを有効にします。
RPM インストーラーを使用すると、ファイルは /opt/ansible-automation-platform/installer
ディレクトリーに置かれます。
7.2. インターネットアクセスがない場合のインストール
インターネットにアクセスできない場合や、オンラインリポジトリーから個別のコンポーネントおよび依存関係をインストールしたくない場合は、Red Hat Ansible Automation Platform の Bundle インストーラーを使用します。Red Hat Enterprise Linux リポジトリーへのアクセスは依然として必要です。その他の依存関係はすべて tar アーカイブに含まれています。
手順
- Red Hat Ansible Automation Platform のダウンロード ページに移動します。
- Ansible Automation Platform <latest-version> Setup Bundle の をクリックします。
ファイルを展開します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow tar xvzf ansible-automation-platform-setup-bundle-<latest-version>.tar.gz
$ tar xvzf ansible-automation-platform-setup-bundle-<latest-version>.tar.gz
第8章 インストーラーインベントリーファイルについて
Red Hat Ansible Automation Platform は、インベントリーファイルを使用して、論理的に編成されたインフラストラクチャー内の管理対象ノードまたはホストのリストに対して機能します。Red Hat Ansible Automation Platform インストーラーインベントリーファイルを使用して、インストールシナリオを指定し、Ansible へのホストのデプロイを説明できます。インベントリーファイルを使用することで、Ansible は単一のコマンドで多数のホストを管理できます。インベントリーは、指定する必要があるコマンドラインオプションの数を減らすことで、Ansible をより効率的に使用するのにも役立ちます。
インベントリーファイルは、所有するインベントリープラグインに応じて、多数ある形式のいずれかになります。最も一般的な形式は INI
と YAML
です。このドキュメントに記載されているインベントリーファイルは、INI 形式で示されています。
インベントリーファイルの場所は、使用したインストーラーによって異なります。次の表に、可能な場所を示します。
インストーラー | 場所 |
---|---|
RPM |
|
RPM バンドル tar |
|
RPM 非バンドル tar |
|
コンテナーバンドル tar |
|
コンテナー非バンドル tar |
|
次のコマンドを使用して、インベントリー内のホストを確認できます。
ansible all -i <path-to-inventory-file. --list-hosts
ansible all -i <path-to-inventory-file. --list-hosts
インベントリーファイルの例
[automationcontroller] controller.example.com [automationhub] automationhub.example.com [automationedacontroller] automationedacontroller.example.com [automationgateway] gateway.example.com [database] data.example.com [all:vars] admin_password='<password>' pg_host='' pg_port='' pg_database='awx' pg_username='awx' pg_password='<password>' registry_url='registry.redhat.io' registry_username='<registry username>' registry_password='<registry password>' automationgateway_admin_password="" automationgateway_pg_host="" automationgateway_pg_database="" automationgateway_pg_username="" automationgateway_pg_password=""
[automationcontroller]
controller.example.com
[automationhub]
automationhub.example.com
[automationedacontroller]
automationedacontroller.example.com
[automationgateway]
gateway.example.com
[database]
data.example.com
[all:vars]
admin_password='<password>'
pg_host=''
pg_port=''
pg_database='awx'
pg_username='awx'
pg_password='<password>'
registry_url='registry.redhat.io'
registry_username='<registry username>'
registry_password='<registry password>'
automationgateway_admin_password=""
automationgateway_pg_host=""
automationgateway_pg_database=""
automationgateway_pg_username=""
automationgateway_pg_password=""
インベントリーファイルの最初の部分は、Ansible が使用できるホストまたはグループを指定します。
registry_username
および registry_password
の詳細は、registry_username および registry_password の設定 を参照してください。
プラットフォームゲートウェイは、Ansible Automation Platform の認証と認可を処理するサービスです。これは Ansible Automation Platform への一元的な入り口であり、プラットフォームのユーザーインターフェイスを提供するため、ユーザーは 1 つの場所からすべての Ansible Automation Platform サービスに認証してアクセスできます。
8.1. ホストとグループのガイドライン
データベース
-
外部データベースを使用する場合は、インベントリーファイルの
[database]
セクションが正しく設定されていることを確認してください。 - パフォーマンスを向上させるために、データベースと Automation Controller を同じサーバーに配置しないでください。
Ansible Automation Platform で外部データベースを使用する場合は、そのデータベースを作成および保守する必要があります。Ansible Automation Platform をアンインストールする際は、外部データベースを必ずクリアしてください。
Automation Hub
-
[automationhub]
グループが存在する場合は、変数automationhub_pg_host
およびautomationhub_pg_port
を含める必要があります。 -
[automationhub]
グループに Ansible Automation Hub 情報を追加します。 - Ansible Automation Hub と Automation Controller を同じノードにインストールしないでください。
[automationhub]
および[automationcontroller]
ホストに到達可能な IP アドレスまたは完全修飾ドメイン名 (FQDN) を提供して、ユーザーが別のノードの Ansible Automation Hub および Automation Controller からコンテンツを同期してインストールできるようにします。FQDN に
_
記号を含めることはできません。この記号は Skopeo で正しく処理されません。-
記号は、ホスト名の先頭または末尾なければ使用できます。localhost
は使用しないでください。
Private Automation Hub
- Private Automation Hub と Automation Controller を同じノードにインストールしないでください。
- 同じ PostgreSQL (データベース) インスタンスを使用できますが、別の (データベース) 名を使用する必要があります。
- 内部アドレスから Private Automation Hub をインストールし、外部アドレスしか記載されていない証明書を使用している場合は、インストールして証明書の問題がなくてもコンテナーレジストリーとして使用できなくなる可能性があります。
Automation Controller と Ansible Automation Hub を別々にインストールする必要があります。両方が同時にインストールされている場合、[database]
グループは 2 つを区別しないからです。
[database]
で 1 つの値を使用し、Automation Controller と Ansible Automation Hub の両方がそれを定義する場合、それらは同じデータベースを使用します。
Automation Controller
- Automation Controller は、使用するデータベースのレプリケーションやフェイルオーバーを設定しません。
- Automation Controller は、レプリケーションと連携して動作します。
Event-Driven Ansible Controller
- Event-Driven Ansible Controller は別のサーバーにインストールする必要があります。Automation Hub および Automation Controller と同じホストにインストールすることはできません。
プラットフォームゲートウェイ
- プラットフォームゲートウェイは、Ansible Automation Platform の認証と認可を処理するサービスです。プラットフォームへの一元的な窓口を提供し、プラットフォームのユーザーインターフェイスとして機能します。
クラスター化されたインストール
- 既存のクラスターをアップグレードする場合は、既存のインスタンスまたはインスタンスグループを省略するようにクラスターを再設定することもできます。インスタンスまたはインスタンスグループをインベントリーファイルから省略するだけでは、クラスターから削除するには不十分です。インベントリーファイルからインスタンスまたはインスタンスグループを除外するほかに、アップグレードを開始する前にインスタンスまたはインスタンスグループのプロビジョニングを解除する必要もあります。詳細は、ノードまたはグループのプロビジョニング解除 を参照してください。そうしないと、省略されたインスタンスまたはインスタンスグループが引き続きクラスターと通信するため、アップグレード中に Automation Controller サービスで問題が発生する可能性があります。
クラスター化されたインストールセットアップを作成している場合は、
[localhost]
をすべてのインスタンスのホスト名または IP アドレスに置き換える必要があります。Automation Controller および Automation Hub のインストーラーは、[localhost]
を受け入れません。すべてのノードとインスタンスは、このホスト名またはアドレスを使用して他のノードに到達できるようにする必要があります。いずれかのノードで localhostansible_connection=local
を使用することはできません。すべてのノードのホスト名に同じ形式を使用します。したがって、これは機能しません。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow [automationhub] localhost ansible_connection=local hostA hostB.example.com 172.27.0.4
[automationhub] localhost ansible_connection=local hostA hostB.example.com 172.27.0.4
代わりに以下の形式を使用します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow [automationhub] hostA hostB hostC
[automationhub] hostA hostB hostC
または
Copy to Clipboard Copied! Toggle word wrap Toggle overflow [automationhub] hostA.example.com hostB.example.com hostC.example.com
[automationhub] hostA.example.com hostB.example.com hostC.example.com
8.2. ノードまたはグループのプロビジョニング解除
Ansible Automation Platform インストーラーを使用して、ノードとインスタンスグループのプロビジョニングを解除できます。インストーラーを実行すると、グループ内のノードに割り当てられたすべての設定ファイルおよびログが削除されます。
[automationcontroller]
グループで指定されている最初のホストを除き、インベントリーの任意のホストのプロビジョニングを解除することができます。
ノードのプロビジョニングを解除するには、インベントリーファイル内のノードまたはグループに node_state=deprovision
を追加します。
以下に例を示します。
デプロイメントから単一のノードを削除するには、以下を実行します。
[automationcontroller] host1.example.com host2.example.com host4.example.com node_state=deprovision
[automationcontroller]
host1.example.com
host2.example.com
host4.example.com node_state=deprovision
または
デプロイからインスタンスグループ全体を削除するには、以下を実行します。
[instance_group_restrictedzone] host4.example.com host5.example.com [instance_group_restrictedzone:vars] node_state=deprovision
[instance_group_restrictedzone]
host4.example.com
host5.example.com
[instance_group_restrictedzone:vars]
node_state=deprovision
8.3. インベントリー変数
サンプルインベントリーファイルの [all:vars]
に続く 2 番目の部分は、インストーラーによって使用される変数のリストです。all
を使用すると、変数がすべてのホストに適用されます。
特定のホストに変数を適用するには、[hostname:vars]
を使用します。たとえば、[automationhub:vars]
です。
8.4. インベントリーファイルで変数を宣言するためのルール
文字列変数の値は、引用符で囲んで宣言します。以下に例を示します。
pg_database='awx' pg_username='awx' pg_password='<password>'
pg_database='awx'
pg_username='awx'
pg_password='<password>'
:vars
セクションで宣言すると、INI 値は文字列として解釈されます。たとえば、var=FALSE
は FALSE
に等しい文字列を作成します。ホスト行とは異なり、:vars
セクションは行ごとに 1 つのエントリーのみを受け入れるため、=
の後のすべてがエントリーの値である必要があります。ホスト行は、行ごとに複数の key=value
パラメーターを受け入れます。したがって、スペースがセパレーターではなく値の一部であることを示す方法が必要です。空白を含む値は引用符で囲むことができます (一重または二重)。詳細は、Python shlex の解析ルール を参照してください。
INI インベントリーに設定された変数値が特定の型 (文字列やブール値など) でなければならない場合は、常にタスクでフィルターを使用して型を指定します。変数を使用するときは、INI インベントリーで設定されたタイプに依存しないでください。
変数の実際の型に関する混乱を避けるために、インベントリーソースに YAML 形式を使用することを検討してください。YAML インベントリープラグインは、変数値を一貫して正しく処理します。
Ansible インベントリーファイルのパラメーター値に、#、{ または } などの特殊文字が含まれている場合は、値をダブルエスケープ (double-escape) する必要があります (値を単一と二重引用符で囲みます)。
たとえば、mypasswordwith#hashsigns
を変数 pg_password
の値として使用するには、Ansible ホストインベントリーファイルで pg_password='"mypasswordwith#hashsigns"'
として宣言します。
免責事項: この情報に含まれる外部の Web サイトへのリンクは、お客様の利便性のみを目的として提供しています。Red Hat はリンクの内容を確認しておらず、コンテンツまたは可用性に責任を負わないものとします。外部 Web サイトへのリンクが含まれていても、Red Hat が Web サイトまたはその組織、製品、もしくはサービスを保証することを意味するものではありません。お客様は、外部サイトまたはコンテンツの使用 (または信頼) によって生じる損失または費用について、Red Hat が責任を負わないことに同意するものとします。
8.5. インベントリーファイルでシークレットを保護する
Ansible Vault を使用して機密変数または秘密変数を暗号化できます。ただし、変数名と変数値を暗号化すると、値のソースを見つけるのが難しくなります。これを回避するには、ansible-vault encrypt_string
を使用して変数を個別に暗号化するか、変数を含むファイルを暗号化します。
手順
暗号化された認証情報を保存するために、
credentials.yml
というラベルの付いたファイルを作成します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow cat credentials.yml admin_password: my_long_admin_pw pg_password: my_long_pg_pw registry_password: my_long_registry_pw
$ cat credentials.yml admin_password: my_long_admin_pw pg_password: my_long_pg_pw registry_password: my_long_registry_pw
ansible-vault
を使用してcredentials.yml
ファイルを暗号化します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow ansible-vault encrypt credentials.yml
$ ansible-vault encrypt credentials.yml New Vault password: Confirm New Vault password: Encryption successful
重要暗号化された vault パスワードを安全な場所に保管します。
credentials.yml
ファイルが暗号化されていることを確認します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow cat credentials.yml $ANSIBLE_VAULT;1.1; AES256363836396535623865343163333339613833363064653364656138313534353135303764646165393765393063303065323466663330646232363065316666310a373062303133376339633831303033343135343839626136323037616366326239326530623438396136396536356433656162333133653636616639313864300a353239373433313339613465326339313035633565353464356538653631633464343835346432376638623533613666326136343332313163343639393964613265616433363430633534303935646264633034383966336232303365383763
$ cat credentials.yml $ANSIBLE_VAULT;1.1; AES256363836396535623865343163333339613833363064653364656138313534353135303764646165393765393063303065323466663330646232363065316666310a373062303133376339633831303033343135343839626136323037616366326239326530623438396136396536356433656162333133653636616639313864300a353239373433313339613465326339313035633565353464356538653631633464343835346432376638623533613666326136343332313163343639393964613265616433363430633534303935646264633034383966336232303365383763
Ansible Automation Platform 2.5 のインストール用に
setup.sh
を実行し、credentials.yml
と--ask-vault-pass option
の両方を渡します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow ANSIBLE_BECOME_METHOD='sudo' ANSIBLE_BECOME=True ANSIBLE_HOST_KEY_CHECKING=False ./setup.sh -e @credentials.yml -- --ask-vault-pass
$ ANSIBLE_BECOME_METHOD='sudo' ANSIBLE_BECOME=True ANSIBLE_HOST_KEY_CHECKING=False ./setup.sh -e @credentials.yml -- --ask-vault-pass
8.6. 追加のインベントリーファイル変数
インベントリーファイルに追加変数を追加して、Red Hat Ansible Automation Platform インストールをさらに設定できます。これらの設定では、Red Hat Ansible Automation Platform 管理用のオプション機能を追加します。テキストエディターでインベントリーファイルを編集して、これらの変数を追加します。
インベントリーファイル変数の定義済み値の表は、Red Hat Ansible Automation Platform インストールガイド の インベントリーファイル変数 に記載されています。