Red Hat Update Infrastructure の移行
Red Hat Update Infrastructure 4 への移行と Red Hat Update Infrastructure の最新バージョンへのアップグレード
概要
多様性を受け入れるオープンソースの強化 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。まずは、マスター (master)、スレーブ (slave)、ブラックリスト (blacklist)、ホワイトリスト (whitelist) の 4 つの用語の置き換えから始めます。この取り組みは膨大な作業を要するため、用語の置き換えは、今後の複数のリリースにわたって段階的に実施されます。詳細は、Red Hat CTO である Chris Wright のメッセージ をご覧ください。
第1章 Red Hat Update Infrastructure の移行 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Update Infrastructure (RHUI) 4 のインストール後に、既存のリポジトリーを RHUI 3 から RHUI 4 に移行できます。
移行により、RHUI 4 マシンで RHUI 3 リポジトリーが有効になります。ただし、RPM コンテンツまたは RPM データは移行されません。移行の完了後に、これらのリポジトリーを自動または手動で再同期する必要があります。
移行プロセスを開始する前に、次の推奨事項と制限事項に注意してください。
- RHUI 3 から RHUI 4 に直接アップグレードすることはできません。現在の RHUI 3 インストールと一緒に RHUI 4 をインストールする必要があります。その後、RHUI 3 からの同じ CA 証明書を使用して、RHUI 4 上の RHUI 3 リポジトリーを同期できます。これにより、古いクライアントも RHUI 4 のコンテンツにアクセスできるようになります。最後に、RHUI 4 CDS ノードを指すように RHUI 3 ロードバランサーを変更できます。
- LEAPP を使用して RHUI 3 から RHUI 4 にアップグレードすることはできません。RHUI 3 と並行して RHUI 4 をセットアップしてから、RHUI データを移行する必要があります。
- RHUI 4 では、移行の前後に、任意のバージョンのロードバランサーを使用できます。たとえば、RHUI 4 の RHEL 8 バージョンの代わりに、RHUI 3 の HAProxy ノードの RHEL 7 バージョンを RHUI 4 インスタンスで使用できます。
1 つのアドレスまたはロードバランサーから、RHUI の 2 つの異なるインスタンス (RHUI 3 インスタンスと RHUI 4 インスタンスなど) にルーティングするには、古い RHUI 3 インスタンスからすべてのコンテンツを引き継げるように RHUI 4 インスタンスをセットアップする必要があります。
ただし、単一のアドレスまたはロードバランサーを使用して RHUI3 インスタンスと RHUI4 インスタンスの両方を実行する設定は推奨されません。SSL 証明書の競合からリクエスト間のリポジトリーパスの変更に至るまで、さまざまな問題が発生する可能性があります。
1.1. Red Hat Update Infrastructure の移行の概要 リンクのコピーリンクがクリップボードにコピーされました!
移行は、Red Hat Update Infrastructure (RHUI) 4 インストールで利用可能な rhui-manager ユーティリティーを使用して、RHUI 3 から RHUI 4 にリポジトリーを移動します。リポジトリーを移行する前に、RHUI 4 をインストールする必要があります。
rhui-manager ユーティリティーは、サブコマンド migration と以下の必須の引数を使用します。
-
--hostname: リモート RHUI 3 RHUA ノードのホスト名 -
--password: リモート RHUI 3 RHUA ノードの rhui-manager パスワード
RHUI 4 マシンの現行ユーザーの SSH キーペアの公開部分を RHUI 3 マシンの .ssh/authorized_keys ファイルに追加する必要があります。
デフォルトのパスが指定されていても、キーファイルへのパスが、指定のデフォルト値と一致しない可能性があります。以下の引数を移行コマンドに追加しなければならない場合があります。
-
--keyfile_path: RHUI 4 マシンの SSH 秘密鍵へのパス。デフォルトのパスは/root/.ssh/id_rsa_rhuaです。
1.2. RHUI 3 から RHUI 4 へのリポジトリーの移行 リンクのコピーリンクがクリップボードにコピーされました!
以下の手順では、RHUI 3 リポジトリーを RHUI 4 に移行する方法を説明します。
前提条件
- RHUI 4 が宛先マシンにインストールされているようにする。詳細は、Red Hat Update Infrastructure のインストール を参照してください。
- RHUI 3 マシンへのアクセスに必要な認証情報がある。
RHUI エンタイトルメント証明書が RHUI 4 マシンで利用できるようにする。そうでない場合は、以下のコマンドを実行して証明書を追加します。
rhui-subscription-sync
# rhui-subscription-syncCopy to Clipboard Copied! Toggle word wrap Toggle overflow 任意: 移行を迅速化するために、リポジトリー情報をキャッシュしていることを確認します。これを行うには、次のコマンドを使用します。
rhui-manager repo unused
# rhui-manager repo unusedCopy to Clipboard Copied! Toggle word wrap Toggle overflow
手順
RHUI 4 マシンで、
rhui-managerユーティリティーを使用して移行を開始します。rhui-manager migrate --hostname my-rhui3-rhua.example.com --password <your_password> --keyfile_path ~/.ssh/id_rsa_rhua
# rhui-manager migrate --hostname my-rhui3-rhua.example.com --password <your_password> --keyfile_path ~/.ssh/id_rsa_rhuaCopy to Clipboard Copied! Toggle word wrap Toggle overflow 以下のようなエラーで移行に失敗すると、移行を試みているリポジトリーと RHUI 4 マシンにすでに存在しているリポジトリー間で競合が発生しています。
ERROR: Configured repos detected. Use --force to ignore. Exiting
ERROR: Configured repos detected. Use --force to ignore. ExitingCopy to Clipboard Copied! Toggle word wrap Toggle overflow これを修正するには、
--force引数を使用して移行を実行します。注記--force引数を使用すると、ID が RHUI 3 リポジトリー ID に一致するリポジトリーが削除され、再作成されます。rhui-manager migrate --hostname my-rhui3-rhua.example.com --password <your_password> --keyfile_path ~/.ssh/id_rsa_rhua --force
# rhui-manager migrate --hostname my-rhui3-rhua.example.com --password <your_password> --keyfile_path ~/.ssh/id_rsa_rhua --forceCopy to Clipboard Copied! Toggle word wrap Toggle overflow オプション: カスタムリポジトリーを移行した場合は、RPM コンテンツを手動でアップロードする必要があります。
これを実行する詳細な手順は、
/root/.rhui/migration/ディレクトリーにあるupload_rpms_document.txtファイルを参照してください。
検証
以下のコマンドを実行し、RHUI 4 マシンで RHUI 3 リポジトリーが利用可能かどうかを確認します。
rhui-manager repo list
# rhui-manager repo listCopy to Clipboard Copied! Toggle word wrap Toggle overflow
1.3. クライアント RPM の RHUI 3 から RHUI 4 への移行 リンクのコピーリンクがクリップボードにコピーされました!
RHUI 4 にアップグレードした後に、RHUI 3 クライアント RPM をそのまま使用する必要がある場合があります。その場合には、RHUI 3 認証局 (CA) を RHUI 4 システムに移行して、RHUI 4 でその CA を使用するように設定できます。
前提条件
- RHUI 3 マシンへのアクセスに必要な認証情報がある。
手順
CA 証明書と CA 鍵を RHUI 3 から RHUI 4 にコピーします。
-
証明書
rhui-default-ca.crtは/etc/pki/rhui/certs/ディレクトリーにあります。 -
キー
rhui-default-ca.keyは/etc/pki/rhui/private/ディレクトリーにあります。
-
証明書
RHUA ノードで
rhui-installerを再実行し、RHUI 3 インストールからコピーした CA を指定します。rhui-installer --rerun --remote-fs-server <address> --rhua-hostname <RHUA hostname> --cds-lb-hostname <HAProxy hostname> --user-supplied-rhui-ca-crt rhui-default-ca.crt --user-supplied-rhui-ca-key rhui-default-ca.key
# rhui-installer --rerun --remote-fs-server <address> --rhua-hostname <RHUA hostname> --cds-lb-hostname <HAProxy hostname> --user-supplied-rhui-ca-crt rhui-default-ca.crt --user-supplied-rhui-ca-key rhui-default-ca.keyCopy to Clipboard Copied! Toggle word wrap Toggle overflow - --remote-fs-server: 共有ファイルシステムのリモートマウントポイント。
- --rhua-hostname: RHUA ノードのホスト名。名前は完全修飾ドメイン名 (FQDN) として指定する必要があります。
- --cds-lb-hostname: CDS にアクセスするためにクライアントが使用するロードバランサーの名前。名前は完全修飾ドメイン名 (FQDN) として指定する必要があります。
- --user-supplied-rhui-ca-crt rhui-default-ca.crt: RHUI 3 インストールからコピーした CA 証明書。
--user-supplied—rhui-ca-key rhui-default-ca.key: RHUI 3 インストールからコピーした CA 鍵。
注記新しい RHUI 4 CDS ノードを使用するように設定されている場合は、RHUI 3 HAProxy を使用できます。または、RHUI 3 HAProxy ホスト名が新規 HAProxy を参照するように DNS を更新して、新しい RHUI 4 HAProxy を使用できます。
第2章 Red Hat Update Infrastructure のアップグレード リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Update Infrastructure (RHUI) は定期的にアップグレードされ、バグ修正、機能拡張を導入して、一般的な脆弱性および露出を修正します。
Red Hat は、最新の RHUI 更新をリリース時に適用し、インストールを最新の状態に保つことを推奨します。
2.1. Red Hat Update Infrastructure の更新 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Update Infrastructure (RHUI) のインスタンスを最新バージョンに更新するには、次の手順を実行する必要があります。
前提条件
- RHUA ノードへの root アクセス。
- Red Hat Update Infrastructure のインストール で説明されているとおりに、すべての RHUI ノードがサブスクライブされており、正しいリポジトリーを使用している。
- リポジトリー同期タスクが、更新の完了後に実行されるようにスケジュールされている。更新中に実行されるタスクは中止される可能性があります。詳細は、既知の問題 を参照してください。
rhui-installer は、PostgreSQL のバージョンのアップグレードをサポートします。アップグレードを実行する前に、PostgreSQL データベースをバックアップすることが重要です。
PostgreSQL データベースをバックアップする方法は、第 12 章 Red Hat Update Infrastructure のバックアップと復元 (Red Hat Update Infrastructure の設定および管理 ドキュメント) で説明されています。
利用可能なすべてのパッケージ更新を単に適用するだけで、RHUA ノードを最新の状態に維持しようと試みることは避けてください。そうすると、RHUA が破損する可能性があります。RHUA の更新は、必ず以下の手順に従って実行する必要があります。
OS の更新のみを適用し、RHUI パッケージの更新を除外する場合は、更新トランザクションで RHUI リポジトリーを除外します。たとえば、コマンドラインで次のコマンドを実行します。
dnf --disablerepo=rhui-4-for-rhel-8-x86_64-rpms update
# dnf --disablerepo=rhui-4-for-rhel-8-x86_64-rpms update
このトランザクションの後、システムを再起動するか、RHUI サービスを再起動する必要がある場合があります。
CDS ノードを最新の状態に保つには、利用可能なパッケージ更新を適用するだけでは不十分です。多くの RHUI バージョンでさまざまな設定が変更されているため、以下の手順に従って設定を再適用する必要があります。
手順
RHUA ノードで、RHUI インストーラーを更新します。
dnf update rhui-installer
# dnf update rhui-installerCopy to Clipboard Copied! Toggle word wrap Toggle overflow RHUI インストーラーを実行します。
- RHUI 4.10 から更新する場合に、すでに on_demand 同期ポリシーの使用を開始している場合は、RHUI アップグレード後のカスタム設定の保持 の説明に従って、設定の関連部分をカスタム設定ファイルにコピーします。
次のように
rhui-installerコマンドを実行します。RHUI 4.1.0 以前から更新する場合は、
rerunオプションとともにカスタム RHUI CA を指定する必要があります。rhui-installer --rerun --user-supplied-rhui-ca-crt <custom_RHUI_CA.crt> --user-supplied-rhui-ca-key <custom_RHUI_CA_key>
# rhui-installer --rerun --user-supplied-rhui-ca-crt <custom_RHUI_CA.crt> --user-supplied-rhui-ca-key <custom_RHUI_CA_key>Copy to Clipboard Copied! Toggle word wrap Toggle overflow RHUI 4.1.1 以降から更新する場合は、
rerunオプションのみを指定して RHUI Installer を実行します。rhui-installer --rerun
# rhui-installer --rerunCopy to Clipboard Copied! Toggle word wrap Toggle overflow PostgreSQL のバージョンを 12 から 15 に更新する場合は、--postgresql-version オプションと
rerunオプションを使用してこれを指定する必要があります。rhui-installer --postgresql-version 15 --rerun
# rhui-installer --postgresql-version 15 --rerunCopy to Clipboard Copied! Toggle word wrap Toggle overflow
オプション: 環境によっては、
rhui-installerが再実行に失敗し、代わりに次のエラーが表示されます。There have been identified artifacts with forbidden checksum md5. Run pulpcore-manager handle-artifact-checksums first to unset forbidden checksums.
There have been identified artifacts with forbidden checksum md5. Run pulpcore-manager handle-artifact-checksums first to unset forbidden checksums.Copy to Clipboard Copied! Toggle word wrap Toggle overflow このエラーを修正するには、以下を実行します。
RHUA ノードで以下のコマンドを実行します。
env PULP_SETTINGS=/etc/pulp/settings.py pulpcore-manager handle-artifact-checksums
# env PULP_SETTINGS=/etc/pulp/settings.py pulpcore-manager handle-artifact-checksumsCopy to Clipboard Copied! Toggle word wrap Toggle overflow -
rerunオプションを指定してrhui-installerを実行します。
rhui-installerによって更新されたパッケージがインストールされているかどうかを確認します。デフォルトでは、
rhui-installerは利用可能な RHEL パッケージの更新をインストールします。再起動が必要なパッケージが更新された場合は、RHUA を再起動する必要があります。これをチェックするコマンドは次のとおりです。needs-restarting -r
# needs-restarting -rCopy to Clipboard Copied! Toggle word wrap Toggle overflow 注記このコマンドは
yum-utilsパッケージの一部であり、コマンドを使用するには、このパッケージが RHUA にインストールされている必要があります。更新されたテンプレートおよび Playbook を適用するには、CDS ノードをすべて再インストールします。
これにより、利用可能な RHEL パッケージの更新もインストールされます。これを回避するには、
--no_updateフラグを指定して以下のコマンドを実行します。rhui-manager --noninteractive cds reinstall --all
# rhui-manager --noninteractive cds reinstall --allCopy to Clipboard Copied! Toggle word wrap Toggle overflow 更新されたパッケージが CDS ノードにインストールされているかどうかを確認します。
パッケージの更新がインストールされた場合は、CDS ノードを再起動する必要がある場合があります。CDS ノードを再起動する必要があるかどうかを確認するには、ノードにログオンして次のコマンドを実行します。
needs-restarting -r
# needs-restarting -rCopy to Clipboard Copied! Toggle word wrap Toggle overflow 注記このコマンドは
yum-utilsパッケージの一部であり、コマンドを使用するには、このパッケージが RHUA にインストールされている必要があります。RHUI Manager にログインします。
rhui-manager
# rhui-managerCopy to Clipboard Copied! Toggle word wrap Toggle overflow
検証
RHUA ノードで以下のコマンドを実行し、最新バージョンの RHUI がインストールされているかどうかを確認します。
rpm -q rhui-tools
# rpm -q rhui-toolsCopy to Clipboard Copied! Toggle word wrap Toggle overflow