4.4. PostgreSQL の要件


Red Hat Ansible Automation Platform は PostgreSQL13 を使用します。

  • PostgreSQL ユーザーパスワードは、データベースに保存する前に SCRAM-SHA-256 のセキュアハッシュアルゴリズムでハッシュ化されます。
  • Automation Controller のインスタンスがデータベースにアクセスできるかどうかを判断するには、awx-manage check_db コマンドを使用します。
Expand
表4.2 Database
サービス必須注記

各 Automation Controller

40 GB の専用ハードディスクスペース

  • ファイルおよび作業ディレクトリーのストレージ用に、/var/ に最低 20 GB を割り当てます。
  • ストレージボリュームは、最小ベースライン 1500 IOPS で評価される必要があります。
  • プロジェクトは制御ノードとハイブリッドノードに保存され、ジョブの実行中は実行ノードにも保存されます。クラスターに大規模なプロジェクトが多数ある場合は、ディスク領域のエラーを回避するために、/var/lib/awx/projects に 2 倍の GB を追加することを検討してください。
  • 150 GB 以上を推奨

各 Automation Hub

60 GB の専用ハードディスクスペース

ストレージボリュームは、最小ベースライン 1500 IOPS で評価される必要があります。

データベース

20 GB の専用ハードディスクスペース

  • 150 GB 以上を推奨
  • ストレージボリュームは、高いベースライン IOPS (1500 以上) に対応するように評価されている必要があります。
  • すべての Automation Controller データはデータベースに保存されます。データベースストレージは、マネージドホストの数、ジョブ実行数、ファクトキャッシュに保存されているファクトの数、および個別ジョブのタスク数と共に増加します。たとえば、ホスト 250 台で 1 時間ごと (1 日に 24 回) に 20 個のタスクの Playbook を実行する場合は、毎週 800000 を超えるイベントを保存します。
  • データベースに十分な容量が確保されていない場合は、以前のジョブ実行やファクトを定期的に消去する必要があります。詳細は、Automation Controller 管理ガイド管理ジョブ を参照してください。

PostgreSQL の設定

必要に応じて、PostgreSQL データベースを、Red Hat Ansible Automation Platform インストーラーで管理されていない個別ノードとして設定できます。Ansible Automation Platform インストーラーがデータベースサーバーを管理する場合は、大半のワークロードで一般的に推奨されているデフォルト値を使用してサーバーを設定します。ただし、スタンドアロンのデータベースサーバーノードの PostgreSQL 設定を調整できます。ansible_memtotal_mb は、データベースサーバーの合計メモリーサイズになります。

max_connections == 1024
shared_buffers == ansible_memtotal_mb*0.3
work_mem == ansible_memtotal_mb*0.03
maintenance_work_mem == ansible_memtotal_mb*0.04
Copy to Clipboard Toggle word wrap

関連情報

PostgreSQL サーバーのチューニングの詳細は、PostgreSQL のドキュメント を参照してください。

4.4.1. 外部 (お客様がサポートする) データベースの設定

重要

Red Hat は外部 (お客様がサポートする) データベースの使用をサポートしていませんが、外部データベースはお客様によって使用されています。以下の初期設定に関するガイダンスは、関連するサポートリクエストを回避するために、製品インストールの観点からのみ提供されています。

Automation Controller で使用するために、外部の PostgreSQL 準拠データベースにデータベース、ユーザー、およびパスワードを作成するには、次の手順に従います。

手順

  1. PostgreSQL 準拠のデータベースサーバーをインストールし、スーパーユーザー権限で接続します。

    # psql -h <db.example.com> -U superuser -p 5432 -d postgres <Password for user superuser>:
    Copy to Clipboard Toggle word wrap

    ここでは、以下のようになります。

    -h hostname
    --host=hostname
    Copy to Clipboard Toggle word wrap

    サーバーが実行されているマシンのホスト名を指定します。値がスラッシュで始まる場合、その値は Unix ドメインソケットのディレクトリーとして使用されます。

    -d dbname
    --dbname=dbname
    Copy to Clipboard Toggle word wrap

    接続するデータベースの名前を指定します。これは、コマンドラインで最初の非オプション引数として dbname を指定するのと同等です。dbname には接続文字列を指定できます。その場合、接続文字列パラメーターにより、競合するコマンドラインオプションがオーバーライドされます。

    -U username
    --username=username
    Copy to Clipboard Toggle word wrap

    デフォルトではなく、ユーザー username としてデータベースに接続します。(これを行うには権限が必要です。)

  2. ユーザーに割り当てられた createDB または管理者ロールを使用して、ユーザー、データベース、およびパスワードを作成します。詳細は、Database Roles を参照してください。
  3. データベース認証情報とホストの詳細を、外部データベースとして Automation Controller インベントリーファイルに追加します。

    次の例ではデフォルト値が使用されています。

    [database]
    pg_host='db.example.com'
    pg_port=5432
    pg_database='awx'
    pg_username='awx'
    pg_password='redhat'
    Copy to Clipboard Toggle word wrap
  4. インストーラーを実行します。

    Automation Controller で PostgreSQL データベースを使用する場合、データベースは接続ユーザーが所有するものであり、createDB または管理者ロールがそのユーザーに割り当てられている必要があります。

  5. 作成したデータベースにユーザー名、パスワード、データベース名で接続できることを確認します。
  6. ユーザーの権限を確認します。ユーザーには createDB または管理者ロールが必要です。
注記

この手順の実行中、外部データベースの範囲を確認する必要があります。詳細は、https://access.redhat.com/articles/4010491 を参照してください。

次の手順では、ストレージシステムの書き込み/読み取り IOPS パフォーマンスをベンチマークして、Ansible Automation Platform PostgreSQL データベースの最小要件が満たされているかを確認する方法について説明します。

前提条件

  • Flexible I/O Tester (fio) ストレージパフォーマンスベンチマークツールがインストールされている。

    fio をインストールするには、root ユーザーとして次のコマンドを実行します。

    # yum -y install fio
    Copy to Clipboard Toggle word wrap
  • fio テストデータのログファイルを保存するために十分なディスク容量がある。

    この手順に示す例では、/tmp ディレクトリーに少なくとも 60GB のディスク領域が必要です。

    • numjobs は、コマンドによって実行されるジョブの数を設定します。
    • size=10G は、各ジョブによって生成されるファイルサイズを設定します。

    テストデータの量を減らすには、size パラメーターの値を調整します。

手順

  1. ランダムな書き込みテストを実行します。

    $ fio --name=write_iops --directory=/tmp --numjobs=3 --size=10G \
    --time_based --runtime=60s --ramp_time=2s --ioengine=libaio --direct=1 \
    --verify=0 --bs=4K --iodepth=64 --rw=randwrite \
    --group_reporting=1 > /tmp/fio_benchmark_write_iops.log \
    2>> /tmp/fio_write_iops_error.log
    Copy to Clipboard Toggle word wrap
  2. ランダムな読み取りテストを実行します。

    $ fio --name=read_iops --directory=/tmp \
    --numjobs=3 --size=10G --time_based --runtime=60s --ramp_time=2s \
    --ioengine=libaio --direct=1 --verify=0 --bs=4K --iodepth=64 --rw=randread \
    --group_reporting=1 > /tmp/fio_benchmark_read_iops.log \
    2>> /tmp/fio_read_iops_error.log
    Copy to Clipboard Toggle word wrap
  3. 結果を確認します。

    ベンチマークコマンドによって書き込まれたログファイルで、iops で始まる行を検索します。この行は、テストの最小値、最大値、および平均値を表示します。

    次の例は、ランダム読み取りテストのログファイル内の行を表示しています。

    $ cat /tmp/fio_benchmark_read_iops.log
    read_iops: (g=0): rw=randread, bs=(R) 4096B-4096B, (W) 4096B-4096B, (T) 4096B-4096B, ioengine=libaio, iodepth=64
    […]
       iops        : min=50879, max=61603, avg=56221.33, stdev=679.97, samples=360
    […]
    Copy to Clipboard Toggle word wrap

    独自のビジネス要件、アプリケーションのワークロード、および新しい要求に応じて、ログファイルを確認、監視、再検討する必要があります。

Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

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

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

会社概要

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

Theme

© 2026 Red Hat
トップに戻る