第2章 Red Hat Satellite のアップグレード
高可用性設定で Satellite をインストールしている場合は、Satellite 6.13 へアップグレードする前に Red Hat サポートにご連絡ください。
以下の手順を使用して既存の Red Hat Satellite を Red Hat Satellite 6.13 にアップグレードします。
2.1. Satellite Server のアップグレード
このセクションでは、Satellite Server を 6.12 から 6.13 にアップグレードする方法を説明します。Satellite Server 6.12 のマイナーバージョンからアップグレードすることができます。
作業開始前の準備
- Capsule は、Satellite とは別にアップグレードできます。詳細は、「Satellite とは別の Capsule のアップグレード」 を参照してください。
- Satellite Server をアップグレードする前に、ファイアウォールの設定を確認して更新してください。詳細は、オンラインネットワーク環境での Satellite Server のインストール の インストールのための環境準備 を参照してください。
- カスタマーポータルまたは Satellite Web UI からマニフェストを削除しないでください。削除すると、コンテンツホストからエンタイトルメントがすべて削除されます。
- デフォルトのテンプレートを編集した場合は、ファイルのクローンを作成するか、ファイルをエクスポートしてバックアップしてください。推奨される方法はクローン作成です。今後の更新やアップグレードでファイルが上書きされることがなくなるためです。テンプレートの変更の有無を確認するには、アップグレード前に 履歴 を確認するか、アップグレード後に監査ログで変更を表示できます。Satellite Web UI で Monitor > Audits に移動し、テンプレートを検索すると、変更履歴を確認できます。エクスポートを使用する場合は、エクスポートしたテンプレートと、デフォルトテンプレートを比較し、手動で変更を適用して変更を復元します。
Capsule に関する留意事項
- Capsule Server のベースオペレーティングシステム、または Capsule Server リポジトリーへの更新をコンテンツビューで管理する場合は、更新したコンテンツビューを公開する必要があります。
- 6.12 から 6.13 にアップグレードされた Satellite Server は、引き続き 6.12 の Capsule Server を使用できることに注意してください。
カスタムの証明書を実装している場合は、/root/ssl-build ディレクトリーと、カスタム証明書に関連するソースファイルを作成したディレクトリーのコンテンツを保持する必要があります。
アップグレード時にこのファイルを保持できないと、アップグレードは失敗します。ファイルを削除してしまった場合は、アップグレードを進めるためにバックアップから復元する必要があります。
アップグレードシナリオ
- Red Hat コンテンツ配信ネットワークに接続されている Satellite Server をアップグレードする場合は 「接続されている Satellite Server のアップグレード」 に進みます。
- Red Hat コンテンツ配信ネットワークに接続されていない Satellite Server をアップグレードする場合は 「接続されていない Satellite Server のアップグレード」 に進みます。
自己登録の Satellite をアップグレードすることはできません。自己登録の Satellite は、Red Hat コンテンツ配信ネットワーク (CDN) に移行すればアップグレードを実行できます。
FIPS モード
FIPS モードを使用していない RHEL ベースのシステムから、FIPS モードを使用する RHEL ベースのシステムに Satellite Server をアップグレードすることはできません。
FIPS モードの Red Hat Enterprise Linux ベースシステムで Satellite Server を実行するには、FIPS モードで稼働する RHEL ベースのオペレーティングシステムを新規にプロビジョニングして、Satellite をインストールする必要があります。詳細は、オンラインネットワーク環境での Satellite Server のインストール の インストールのための環境準備 を参照してください。
2.1.1. 接続されている Satellite Server のアップグレード
パブリックインターネットにアクセスできる Satellite Server には、この手順を使用します。
設定ファイルを手動で、または Hiera などのツールを使用してカスタマイズした場合、その変更内容は、アップグレード時または更新時にインストールスクリプトを実行すると上書きされます。satellite-installer スクリプトで --noop オプションを使用すると、変更をテストできます。詳細は、Red Hat ナレッジベースソリューションの How to use the noop option to check for changes in Satellite config files during an upgrade を参照してください。
Satellite Server のアップグレード
すべての Satellite サービスを停止します。
# satellite-maintain service stop
スナップショットを作成するか、バックアップを作成します。
- 仮想マシンで、スナップショットを作成します。
- 物理マシンで、バックアップを作成します。
すべての Satellite サービスを起動します。
# satellite-maintain service start
-
オプション:
/etc/zones.confまたは/etc/dhcp/dhcpd.confファイルで DNS または DHCP の設定を手動で編集した場合には、設定ファイルをバックアップしてください。インストーラーはドメインまたはサブネットを 1 つしかサポートしないので、これらのバックアップから変更を復元しなければならない場合があります。 オプション: DNS または DHCP の設定ファイルを手動で編集した場合に、変更の上書きを避けるには、以下のコマンドを実行します。
# satellite-installer --foreman-proxy-dns-managed=false \ --foreman-proxy-dhcp-managed=false
- Satellite Web UI で、Hosts > Discovered hosts に移動します。検出されたホストページで、検出されたホストの電源を切って削除します。Select an Organization メニューで、組織を順番に選択し、検出されたホストの電源を切って削除するプロセスを繰り返します。アップグレードが完了したら、これらのホストを再起動することをメモしておきます。
Satellite Maintenance リポジトリーが有効になっていることを確認します。
# subscription-manager repos --enable \ satellite-maintenance-6.13-for-rhel-8-x86_64-rpms
メンテナンスモジュールを有効にします。
# dnf module enable satellite-maintenance:el8
利用可能なバージョンを確認して、希望のバージョンが表示されていることを確認します。
# satellite-maintain upgrade list-versions
ヘルスチェックオプションを使用して、システムをアップグレードする準備が完了しているかどうかを確認します。プロンプトが表示されたら、hammer の管理者ユーザー認証情報を入力して
satellite-maintainを設定します。この変更は、/etc/foreman-maintain/foreman-maintain-hammer.ymlファイルに適用されます。# satellite-maintain upgrade check --target-version 6.13
結果を確認し、アップグレードを実行する前に、強調表示されているエラー状態に対応します。
アップグレードには時間がかかるため、
tmuxなどのユーティリティーを使用して、通信セッションを一時停止し、再接続してください。これにより、コマンドシェルに接続し続けなくてもアップグレードの進捗が確認できるようになります。アップグレードコマンドを実行しているコマンドシェルへの接続がなくなった場合は、
/var/log/foreman-installer/satellite.logファイルのログメッセージで、プロセスが完全に終了したかどうかを確認できます。アップグレードを実行します。
# satellite-maintain upgrade run --target-version 6.13
システムを再起動する必要があるかどうかを確認します。
# dnf needs-restarting --reboothint
オプション: 前のコマンドで再起動するように指示された場合は、システムを再起動します。
# reboot
2.1.2. 接続されていない Satellite Server のアップグレード
Satellite Server が Red Hat コンテンツ配信ネットワークに接続されていない場合には、この手順を使用します。
-
設定ファイルを手動または Hiera などのツールを使用してカスタマイズしている場合、これらの変更内容はアップグレードまたは更新時に
satellite-maintainコマンドを入力すると上書きされます。satellite-installerコマンドを--noopオプションを指定して使用し、アップグレードまたは更新時に適用された変更を確認します。詳細は、Red Hat ナレッジベースソリューションの How to use the noop option to check for changes in Satellite config files during an upgrade を参照してください。 hammer import および export コマンドが
hammer content-importおよびhammer content-exportツールに置き換えられました。hammer content-view version export、hammer content-view version export-legacy、hammer repository export、またはそれぞれの import コマンドを使用するスクリプトがある場合は、代わりにhammer content-exportコマンドおよびそれぞれの import コマンドを使用するように調整する必要があります。カスタムの証明書を実装している場合は、
/root/ssl-buildディレクトリーと、カスタム証明書に関連するソースファイルを作成したディレクトリーのコンテンツを保持する必要があります。アップグレード時にこのファイルを保持できないと、アップグレードは失敗します。ファイルを削除してしまった場合は、アップグレードを進めるためにバックアップから復元する必要があります。
作業開始前の準備
- Satellite Server をアップグレードする前に、ファイアウォールの設定を確認して更新してください。詳細は、オフラインネットワーク環境での Satellite Server のインストール の ポートとファイアウォールの要件 を参照してください。
- カスタマーポータルまたは Satellite Web UI からマニフェストを削除しないでください。削除すると、コンテンツホストからエンタイトルメントがすべて削除されます。
- アップグレードする前に、全 Foreman フックのバックアップを作成して、その後フックを削除します。アップグレードが完了し、Satellite が動作しているのを確認できるまで、フックを元に戻さないでください。
- すべての Satellite Server が同じバージョンである必要があります。
接続されていない Satellite Server のアップグレード
すべての Satellite サービスを停止します。
# satellite-maintain service stop
スナップショットを作成するか、バックアップを作成します。
- 仮想マシンで、スナップショットを作成します。
- 物理マシンで、バックアップを作成します。
すべての Satellite サービスを起動します。
# satellite-maintain service start
アップグレード前スクリプトを使用すると、競合を検出して、Satellite Server に重複したエントリーがあり、アップグレード後に登録解除および削除できるホストをリストできます。また、このスクリプトは組織に割り当てられていないホストを検出します。組織が関連付けられていないホストが Hosts > All hosts にリストされており、同じ名前のコンテンツホストに組織がすでに関連付けられている場合、そのコンテンツホストは自動的に登録解除されます。これは、アップグレード前にこのようなホストを組織に関連付けることによって回避できます。
アップグレード前チェックスクリプトを実行して、アップグレード後に削除できるホストのリストを取得します。関連付けられていないホストが検出された場合は、アップグレードする前にそれらを組織に関連付けることを推奨します。
# foreman-rake katello:upgrade_check
-
オプション:
/etc/zones.confまたは/etc/dhcp/dhcpd.confファイルで DNS または DHCP の設定を手動で編集した場合には、設定ファイルをバックアップしてください。インストーラーはドメインまたはサブネットを 1 つしかサポートしないので、これらのバックアップから変更を復元しなければならない場合があります。 オプション: DNS または DHCP の設定ファイルを手動で編集した場合に、変更の上書きを避けるには、以下のコマンドを実行します。
# satellite-installer --foreman-proxy-dns-managed=false \ --foreman-proxy-dhcp-managed=false
-
Satellite Web UI で、Hosts > Discovered hosts に移動します。使用可能な検出されたホストがある場合は、それらをオフにして、
Discovered hostsページにあるすべてのエントリーを削除します。必要に応じて、組織設定メニューから、その他の組織を順番に選択し、すべてのエントリーを削除します。これらのホストは、アップグレード完了後に再起動します。 - すべての外部 Capsule Server が組織に割り当てられていることを確認します。割り当てられていないと、ホスト統合の変更により登録が解除される可能性があります。
以前のリポジトリーを削除します。
# rm /etc/yum.repos.d/*
Satellite サービスを停止します。
# satellite-maintain service stop
- オフラインネットワーク環境での Satellite Server のインストール ガイドの バイナリー DVD イメージのダウンロード の手順に従って、最新の ISO ファイルを取得します。
オフラインネットワーク環境での Satellite Server のインストール の RHEL 8 でのオフラインリポジトリーを使用したベースオペレーティングシステムの設定 の手順に従って、マウントポイントとして機能するディレクトリーを作成し、ISO イメージをマウントして、
rhel8リポジトリーを設定します。この段階では、パッケージのインストールや更新はしないでください。
ISO ファイルから Satellite 6.13 リポジトリーを設定します。
Red Hat Satellite パッケージ用に ISO ファイルのリポジトリーデータファイルをコピーします。
# cp /media/sat6/Satellite/media.repo /etc/yum.repos.d/satellite.repo
/etc/yum.repos.d/satellite.repoファイルを編集します。# vi /etc/yum.repos.d/sat6.repo
デフォルトの
InstallMediaリポジトリー名をSatellite-6.13に変更します。[Satellite-6.13]
baseurlディレクティブを追加します。baseurl=file:///media/sat6/Satellite
ISO ファイルから Red Hat Satellite Maintenance リポジトリーを設定します。
Red Hat Satellite Maintenance パッケージ用に ISO ファイルのリポジトリーデータファイルをコピーします。
# cp /media/sat6/Maintenance/media.repo /etc/yum.repos.d/satellite-maintenance.repo
/etc/yum.repos.d/satellite-maintenance.repoファイルを編集します。# vi /etc/yum.repos.d/satellite-maintenance.repo
デフォルトの
InstallMediaリポジトリー名をSatellite-Maintenanceに変更します。[Satellite-Maintenance]
baseurlディレクティブを追加します。baseurl=file:///media/sat6/Maintenance/
メンテナンスモジュールを有効にします。
# dnf module enable satellite-maintenance:el8
アップグレードには時間がかかるため、
tmuxなどのユーティリティーを使用して、通信セッションを一時停止し、再接続してください。これにより、コマンドシェルに接続し続けなくてもアップグレードの進捗が確認できるようになります。アップグレードコマンドを実行しているコマンドシェルへの接続がなくなった場合は、
/var/log/foreman-installer/satellite.logのログで、プロセスが完全に終了したかどうかを確認できます。利用可能なバージョンを確認して、希望のバージョンが表示されていることを確認します。
# satellite-maintain upgrade list-versions
ヘルスチェックオプションを使用して、システムをアップグレードする準備が完了しているかどうかを確認します。プロンプトが表示されたら、hammer の管理者ユーザー認証情報を入力して
satellite-maintainを設定します。この変更は、/etc/foreman-maintain/foreman-maintain-hammer.ymlファイルに適用されます。# satellite-maintain upgrade check --target-version 6.13 \ --whitelist="repositories-validate,repositories-setup"
結果を確認し、アップグレードを実行する前に、強調表示されているエラー状態に対応します。
アップグレードを実行します。
# satellite-maintain upgrade run --target-version 6.13 \ --whitelist="repositories-validate,repositories-setup"
パッケージが古いか、足りないためにスクリプトに失敗した場合には、これらのパッケージを個別にダウンロードしてインストールする必要があります。詳細は、オフラインネットワーク環境での Satellite Server のインストール ガイドの パッケージの依存関係エラーの解決 のセクションを参照してください。
システムを再起動する必要があるかどうかを確認します。
# dnf needs-restarting --reboothint
オプション: 前のコマンドで再起動するように指示された場合は、システムを再起動します。
# reboot
- オプション: DNS または DHCP 設定ファイルを手動で編集した場合には、作成したバックアップを使用して、DNS と DHCP の設定ファイルに必要なすべての変更を確認し、復元します。
前の手順で変更を加えた場合には、Satellite サービスを再起動します。
# satellite-maintain service restart
OpenSCAP プラグインがインストールされているにもかかわらず、デフォルトの OpenSCAP コンテンツが利用できない場合は、以下のコマンドを実行します。
# foreman-rake foreman_openscap:bulk_upload:default
- Satellite Web UI で Configure > Discovery Rules に移動し、選択した組織および場所を検出ルールに関連付けます。