5 Private Automation Hubのアップグレード

次の章では、Private Automation Hubのアップグレードについて説明します。

Oracle Linux 8での2.2から2.3へのアップグレード

Oracle Linux 8でPrivate Automation Hubを2.2から2.3にアップグレードするには、次の手順を実行します:
  1. OSのバックアップを実行することを検討します。アップグレードが失敗した場合にシステムを以前の状態にリストアできるように、システムのバックアップを作成することをお薦めします。
  2. Private Automation Hubのバックアップを作成します。詳細は、「Private Automation Hubのバックアップとリストア」を参照してください。

  3. Private Automation Hubを実行しているシステムで、すべてのPrivate Automation Hubサービスを停止します:
    sudo systemctl stop pulpcore
  4. ステータスを確認し、すべてのサービスが停止していることを確認します:
    sudo systemctl status pulpcore* -all
  5. ローカルまたはリモートのデータベース・ホストで、データベースを制御するユーザー・アカウントにログインします。
    sudo su - postgres
  6. 実行中のpostgresqlのバージョンを確認します。
    rpm -q postgresql
    たとえば、次の応答はpostgresqlバージョン13を示しています:
    postgresql-13.20-1.module+el8.10.0+90526+050ec11b.x86_64
  7. データベースをエクスポートします。データベースをエクスポートすると、データベースのリストアに必要なすべてのSQLコマンドと入力データを含むスクリプト・ファイルが作成されます。たとえば、次のコマンドは、データベースのホーム・ディレクトリにhub.dumpファイルを作成します:
    pg_dumpall > /var/tmp/hub.dump
  8. データベース・ユーザー・アカウントを終了します:
    exit
  9. データベース・サーバーを停止します:
    sudo systemctl stop postgresql
  10. 既存のデータベース・データ・ディレクトリを削除(およびオプションでバックアップ)します。たとえば、次のコマンドはホーム・ディレクトリのバックアップ・ファイルを削除して作成します:
    sudo mv /var/lib/pgsql/data/ ~/data.old
  11. 現在のバージョンのデータベースを削除します:
    sudo dnf remove postgresql
  12. 「リモート・データベースの設定」の説明に従ってPostgreSQL 16データベースをインストールし、データベースを再起動するステップまで実行してこのステップに戻ります。ただし、ステップ9から11のユーザーとデータベースpulpの作成は無視してください。これらのオブジェクトはすでにダンプ・ファイル内に存在するためです。
  13. 更新が完了したら、hub.dumpファイルをインポートしてデータベースを設定します。次のコマンドを実行します。
    sudo su - postgres
    psql -d postgres -f /var/tmp/hub.dump
    exit 
  14. Private Automation Hubサーバーで、Private Automation Hubサービスを再起動します:
    sudo systemctl start pulpcore* -all
  15. Private Automation Hubの機能をテストし、すべてが期待どおりに動作することを確認します。
  16. Private Automation Hubサーバーを停止します。
    sudo systemctl stop pulpcore
    sudo systemctl status pulpcore* -all
  17. Private Automation Hubデプロイメント・ホストで、次のコマンドを実行します:
    sudo dnf update oraclelinux-automation-manager-release-el8-2.3
    sudo mv /etc/yum.repos.d/oraclelinux-automation-manager-ol8.repo /etc/yum.repos.d/oraclelinux-automation-manager-ol8.repo.OLD
    sudo mv /etc/yum.repos.d/oraclelinux-automation-manager-ol8.repo.rpmnew /etc/yum.repos.d/oraclelinux-automation-manager-ol8.repo
    sudo dnf update
  18. Private Automation Hubサーバーで、collect staticコマンドを実行します:
    sudo PULP_SETTINGS=/etc/pulp/settings.py /usr/bin/pulpcore-manager collectstatic --clear --noinput
  19. デプロイメント・ホストで、Private Automation Hubのインストールに使用したものと同じユーザー・アカウントを使用して、Private Automation Hubのインストーラを実行します。
    ansible-playbook -i hosts single-node-install.yml -e "olpah_admin_password=<admin_password> olpah_db_password=<db_password>"

    ノート:

    サーバーを最初に作成したときにパラメータ・ファイルを使用した場合は、このコマンドを実行するときに再度そのファイルを使用する必要があります。たとえば、コマンドラインの末尾に-e "@single-node-vars.yml"を追加します。

ビルダー・ユーティリティ2.2から2.3へのアップグレード

Private Automation Hubビルダー・ティリティを2.2から2.3にアップグレードするには、次の手順を実行します:
  1. 以前のバージョンのビルダー・ユーティリティをインストールしたホストで、次のコマンドを実行します:
    sudo dnf install oraclelinux-automation-manager-release-el8-2.3
    sudo mv /etc/yum.repos.d/oraclelinux-automation-manager-ol8.repo /etc/yum.repos.d/oraclelinux-automation-manager-ol8.repo.OLD
    sudo mv /etc/yum.repos.d/oraclelinux-automation-manager-ol8.repo.rpmnew /etc/yum.repos.d/oraclelinux-automation-manager-ol8.repo
    sudo dnf update python3.11-ansible-builder
  2. すべてのexecution-environment.ymlファイルをolam-eeおよびolam-builderの2.3イメージに更新します。たとえば、次のエントリを見つけます:
    base_image:
    name: container-registry.oracle.com/oracle_linux_automation_manager/olam-ee:2.2
    builder_image:
    name: container-registry.oracle.com/oracle_linux_automation_manager/olam-builder:2.2
    次のいずれかを行います:
    • Oracle Linux 8でイメージを作成する場合は、2.22.3-ol8に変更します:
      images:
      base_image:
      name: container-registry.oracle.com/oracle_linux_automation_manager/olam-ee:2.3-ol8
      builder_image:
      name: container-registry.oracle.com/oracle_linux_automation_manager/olam-builder:2.3-ol8
    • Oracle Linux 9でイメージを作成する場合は、2.22.3-ol9に変更します:
      images:
      base_image:
      name: container-registry.oracle.com/oracle_linux_automation_manager/olam-ee:2.3-ol9
      builder_image:
      name: container-registry.oracle.com/oracle_linux_automation_manager/olam-builder:2.3-ol9
  3. Private Automation Hubを使用してolam-eeまたはolam-builderイメージを格納している場合は、イメージを2.3に更新し、execution-environment.yml内のイメージを新しい2.3イメージにポイントします。
  4. 2.3で使用することを意図した以前のリリースで作成された実行環境で、依存関係の変更が反映されていることを確認します。たとえば、以前の実行環境が古いバージョンのansible-coreを使用して作成されている場合は、これらの古い実行環境で使用されていたコレクションまたはモジュールが、Oracle Linux Automation Manager 2.3ノードで実行される新しいバージョンのansible-coreでも引き続き機能することを確認します。