3.2. Automation controller Pod コンテナーの推奨サイズ


概要セクションの 図1.1「Automation Controller のアーキテクチャー」 を確認すると、制御 Pod にコンテナーが 4 台含まれていることがわかります。

  • web
  • ee
  • redis
  • task

これらのコンテナーはそれぞれ、Ansible Automation コントローラーで独自の機能を実行するため、リソース設定が制御 Pod にどのように影響するかを理解することが重要です。デフォルトでは、Red Hat OpenShift にはテストとしてインストールする最低条件を満たす程度の低いリソース値が含まれていますが、実稼働環境で Ansible Automation Platform を実行するには最適ではありません。

Ansible Automation Platform の Red Hat OpenShift のデフォルトは次のとおりです。

  • CPU: 100m
  • メモリー: 128Mi

デフォルトでは、Red Hat OpenShift は最大リソース制限を設定せず、Ansible Automation Platform 制御 Pod によって要求されたすべての可能なリソースを割り当てようとします。この設定は、リソースの枯渇を引き起こし、Red Hat OpenShift クラスターで実行されている他のアプリケーションに影響を与える可能性があります。

制御 Pod 内のコンテナーのリソースリクエストと制限に関するスタート地点を示すため、以下の前提条件を使用します。

  • それぞれ 4 つの vCPU と 16GiB RAM を備えた Red Hat OpenShift クラスター内で使用可能なワーカーノード 3 つ
  • 高可用性よりも、自動化ジョブのリソースを最大化することが重要である
  • Automation controller を実行するための専用ワーカーノード 1 つ
  • 自動化ジョブを実行するための残りのワーカーノード 2 つ

制御 Pod 内のコンテナーのサイジングに関しては、ワークロードの詳細を考慮することが重要です。このリファレンス環境に固有の推奨事項に沿ったパフォーマンステストを実施しましたが、これらの推奨事項はすべてのタイプのワークロードに適用できるわけではありません。

スタート地点として、Performance Collection playbooks (具体的には chatty_tasks.yml) を利用することにしました。

パフォーマンスベンチマークは、以下のとおりです。

  • ホスト 1 台でインベントリーを作成する
  • chatty_tasks.yml ファイルを実行するジョブテンプレートを作成する

chatty_tasks ジョブテンプレートは、ansible.builtin.debug モジュールを利用して、ホストごとに設定された数のデバッグメッセージを生成し、必要なインベントリーを生成します。ansible.builtin.debug モジュールを利用することで、追加のオーバーヘッドを導入することなく、Automation controller のパフォーマンスを正確に表現できます。

ジョブテンプレートは、ジョブテンプレートの同時呼び出しの数を示す 10 ~ 50 の範囲の指定された同時実行レベルで実行されました。

以下に記載されている リソース要求 および リソース制限 は、パフォーマンスベンチマークの結果で、同様のリソースを使用する Red Hat OpenShift クラスターで AAP を実行する際の開始ベースラインとして使用できます。

spec:
...
  ee_resource_requirements:
    limits:
      cpu: 500m
      memory: 400Mi
    requests:
      cpu: 100m
      memory: 400Mi
  task_resource_requirements:
    limits:
      cpu: 4000m
      memory: 8Gi
    requests:
      cpu: 1000m
      memory: 8Gi
  web_resource_requirements:
    limits:
      cpu: 2000m
      memory: 1.5Gi
    requests:
      cpu: 500m
      memory: 1.5Gi
  redis_resource_requirements:
    limits:
      cpu: 500m
      memory: 1.5Gi
    requests:
      cpu: 250m
      memory: 1.5Gi
注記

メモリーリソースの要求と制限を一致させ、Pod の Out Of Memory (OOM) Kill を引き起こす可能性がある Red Hat OpenShift クラスター内のメモリーリソースを過剰に使用しないようにします。リソース制限がリソース要求よりも大きい場合、Red Hat OpenShift ノードの過剰使用を許可するシナリオが発生する可能性があります。

注記

CPU リソースは圧縮可能とされているので、CPU リソースの要求と制限はメモリーとは異なります。つまり、Red Hat OpenShift は、リソース制限に達するとコンテナーの CPU を処理しようとしますが、コンテナーは終了しません。制御 Pod 内の上記のコンテナーでは、指定のワークロードに対しては十分な量の CPU 要求が提示されましたが、しきい値 (CPU 制限) をより高い値に設定して、負荷がかかっている状態で高い値でバーストできるようにしました。

警告

上記のシナリオでは、専用の Red Hat OpenShift ワーカーノードを使用するため、制御 Pod が存在するワーカーノード内のリソースを他のアプリケーションが使用していないことを前提としています。詳細は 「Automation controller Pod の専用ノードの指定」 を参照してください。

Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

Red Hat ドキュメントについて

Legal Notice

Theme

© 2026 Red Hat
トップに戻る