第6章 移行元の環境


既存の Ansible Automation Platform デプロイメントからデータを準備してエクスポートします。エクスポートしたデータは、新しい環境の設定に使用する重要な移行アーティファクトとなります。

6.1. RPM ベースの Ansible Automation Platform

RPM ベースの Ansible Automation Platform デプロイメントからデータを準備してエクスポートします。

6.1.1. 移行元の環境の準備と評価

移行を開始する前に、現在の RPM デプロイメントをドキュメント化します。このドキュメントは、移行プロセス全体を通してリファレンスとして機能し、移行先の環境を適切に設定するために重要です。

手順

  1. 現在の RPM デプロイメントのトポロジー全体をドキュメント化します。

    1. すべてのサーバー、ノード、およびそれらのロール (コントロールノード、実行ノード、データベースサーバーなど) を詳細に描写します。
    2. デプロイメント内の各サーバーのホスト名、IP アドレス、および機能を記録します。
    3. コンポーネント間のネットワーク設定をドキュメント化します。
  2. Ansible Automation Platform のバージョン情報:

    1. 現在デプロイされている Ansible Automation Platform の正確なバージョン (X.Y) を記録します。
  3. 各コンポーネントの特定のバージョンをドキュメント化します。

    1. Automation Controller のバージョン
    2. Automation Hub のバージョン
    3. プラットフォームゲートウェイのバージョン
  4. データベースの設定:

    1. 各コンポーネントのデータベース名
    2. データベースのユーザーとロール
    3. 接続パラメーターと認証方法
    4. カスタムの PostgreSQL 設定または最適化

6.1.2. 移行元の環境のエクスポート

移行元の環境から、移行に必要なデータと設定をエクスポートします。

手順

  1. PostgreSQL データベースのバージョンが PostgreSQL バージョン 15 であることを確認します。

    データベースサーバーに接続し、postgres ユーザーとして次のコマンドを実行すると、現在の PostgreSQL バージョンを確認できます。

    $ psql -c 'SELECT version();'
    Copy to Clipboard
    重要

    移行プロセスを正常に実行するには、PostgreSQL バージョン 15 が厳密に要求されます。PostgreSQL 13 以前を実行している場合は、移行を続行する前にバージョン 15 にアップグレードしてください。

    Ansible Automation Platform によって管理されるデータベースを使用している場合は、インストールプログラムを再実行して PostgreSQL バージョンをアップグレードしてください。お客様提供の (外部) データベースを使用している場合は、データベース管理者またはサービスプロバイダーに連絡してバージョンを確認し、必要に応じてアップグレードの準備をしてください。

  2. 移行元の環境の完全なバックアップを作成します。

    $ ./setup.sh -e 'backup_dest=/path/to/backup_dir/' -b
    Copy to Clipboard
  3. 各コンポーネントグループの 1 つのノードから接続設定を取得します。

    コマンドごとに、ホストにアクセスして root ユーザーになります。

    • Automation Controller ノードにアクセスして、次のコマンドを実行します。

      # awx-manage print_settings | grep '^DATABASES'
      Copy to Clipboard
    • Automation Hub ノードにアクセスして、次のコマンドを実行します。

      # grep '^DATABASES' /etc/pulp/settings.py
      Copy to Clipboard
    • プラットフォームゲートウェイノードにアクセスして、次のコマンドを実行します。

      # aap-gateway-manage print_settings | grep '^DATABASES'
      Copy to Clipboard
  4. 手動で作成したアーティファクトをプラットフォームゲートウェイノードに一時的に配置します。

    # mkdir -p /tmp/backups/artifact/{controller,gateway,hub}
    Copy to Clipboard
    # mkdir -p /tmp/backups/artifact/controller/custom_configs
    Copy to Clipboard
    # touch /tmp/backups/artifact/secrets.yml
    Copy to Clipboard
    # cd /tmp/backups/artifact/
    Copy to Clipboard
  5. データベースのサイズを検証し、ファイルシステムに pg_dump 用の十分な領域があることを確認します。

    データベースサーバーに接続し、postgres ユーザーとして次のコマンドを実行すると、データベースのサイズを確認できます。

    $ psql -c '\l+'
    Copy to Clipboard

    次のステップを実行する前に、必要に応じてファイルシステムのサイズを調整するか、外部ファイルシステムをマウントします。

    注記

    この手順では、すべてのターゲットファイルが /tmp ファイルシステムに送信されることを前提としています。実際の環境のニーズに合わせてコマンドを調整する必要があります。

  6. プラットフォームゲートウェイノードで、すべてのコンポーネントのデータベースダンプを実行し、作成したアーティファクト内に保存します。

    # psql -h <pg_hostname> -U <component_pg_user> -d <database_name> -t -c 'SHOW server_version;' # ensure connectivity to the database
    Copy to Clipboard
    # pg_dump -h <pg_hostname> -U <component_pg_user> -d <component_pg_name> --clean --create -Fc -f <component>/<component>.pgc
    Copy to Clipboard
    # ls -ld <component>/<component>.pgc
    Copy to Clipboard
    # echo "<component>_pg_database: <database_name>" >> secrets.yml ## Add the database name for the component to the secrets file
    Copy to Clipboard
  7. 各コンポーネントグループの 1 つのノードから RPM 環境のシークレットをエクスポートします。

    以下の各ステップでは、root ユーザーを使用してコマンドを実行します。

    • Automation Controller ノードにアクセスし、シークレットキーを収集して、secrets.yml ファイルの controller_secret_key 値に追加します。

      # cat /etc/tower/SECRET_KEY
      Copy to Clipboard
    • Automation Hub ノードにアクセスし、シークレットキーを収集して、secrets.yml ファイルの hub_secret_key 値に追加します。

      # grep 'SECRET_KEY' /etc/pulp/settings.py | awk -F'=' '{ print $2}'
      Copy to Clipboard
    • Automation Hub ノードにアクセスし、database_fields.symmetric.key 値を収集して、secrets.yml ファイルの hub_db_fields_encryption_key 値に追加します。

      # cat /etc/pulp/certs/database_fields.symmetric.key
      Copy to Clipboard
    • プラットフォームゲートウェイノードにアクセスし、シークレットキーを収集して、secrets.yml ファイルの gateway_secret_key 値に追加します。

      # cat /etc/ansible-automation-platform/gateway/SECRET_KEY
      Copy to Clipboard
  8. Automation Controller のカスタム設定をエクスポートします。

    /etc/tower/conf.d にカスタム設定が存在する場合は、それを /tmp/backups/artifact/controller/custom_configs にコピーします。

    インストールプログラムによって管理され、カスタムとはみなされない Automation Controller 上の設定ファイル:

    • /etc/tower/conf.d/postgres.py
    • /etc/tower/conf.d/channels.py
    • /etc/tower/conf.d/caching.py
    • /etc/tower/conf.d/cluster_host_id.py
  9. アーティファクトをパッケージ化します。

    # cd /tmp/backups/artifact/
    Copy to Clipboard
    # [ -f sha256sum.txt ] && rm -f sha256sum.txt; find . -type f -name "*.pgc" -exec sha256sum {} \; >> sha256sum.txt
    Copy to Clipboard
    # cat sha256sum.txt
    Copy to Clipboard
    # cd
    Copy to Clipboard
    # tar cf artifact.tar artifact
    Copy to Clipboard
    # sha256sum artifact.tar > artifact.tar.sha256
    Copy to Clipboard
    # sha256sum --check artifact.tar.sha256
    Copy to Clipboard
    # tar tvf artifact.tar
    Copy to Clipboard

    tar tvf artifact.tar の出力例:

    drwxr-xr-x ansible/ansible        0 2025-05-08 16:48 artifact/
    drwxr-xr-x ansible/ansible        0 2025-05-08 16:33 artifact/controller/
    -rw-r--r-- ansible/ansible   732615 2025-05-08 16:26 artifact/controller/controller.pgc
    drwxr-xr-x ansible/ansible        0 2025-05-08 16:33 artifact/controller/custom_configs/
    drwxr-xr-x ansible/ansible        0 2025-05-08 16:11 artifact/gateway/
    -rw-r--r-- ansible/ansible   231155 2025-05-08 16:28 artifact/gateway/gateway.pgc
    drwxr-xr-x ansible/ansible        0 2025-05-08 16:26 artifact/hub/
    -rw-r--r-- ansible/ansible 29252002 2025-05-08 16:26 artifact/hub/hub.pgc
    -rw-r--r-- ansible/ansible      614 2025-05-08 16:24 artifact/secrets.yml
    -rw-r--r-- ansible/ansible      338 2025-05-08 16:48 artifact/sha256sum.txt
    Copy to Clipboard
  10. artifact.tarartifact.tar.sha256 をローカルマシンにダウンロードするか、scp コマンドを使用してターゲットノードに転送します。

6.1.3. 移行アーティファクトの作成と検証

移行アーティファクトを作成して検証するには、移行アーティファクトの構造と検証 の手順に従います。

トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

Theme

© 2025 Red Hat