第3章 Red Hat Satellite のアップグレード
高可用性設定で Satellite 6 をインストールしている場合は、Satellite 6.9 へアップグレードする前に Red Hat サポートにご連絡ください。
以下の手順を使用して既存の Red Hat Satellite を Red Hat Satellite 6.9 へアップグレードします。
アップグレードを行う前に「前提条件」を参照してください。
3.1. Satellite Server のアップグレード リンクのコピーリンクがクリップボードにコピーされました!
このセクションでは、Satellite Server を 6.8 から 6.9 にアップグレードする方法を説明します。Red Hat Satellite Server 6.8 であれば、どのマイナーバージョンからでもアップグレードできます。
作業開始前の準備
- Capsule は、Satellite とは別にアップグレードできます。詳細は、「Satellite とは別の Capsule のアップグレード」 を参照してください。
- Satellite Server をアップグレードする前に、ファイアウォールの設定を確認して更新してください。詳細はオンラインネットワークからの Satellite Server のインストールの ポートおよびファイアウォールの要件 を参照してください。
- カスタマーポータルまたは Satellite Web UI からマニフェストを削除しないでください。削除すると、コンテンツホストからエンタイトルメントがすべて削除されます。
- アップグレードする前に、全 Foreman フックのバックアップを作成して、その後フックを削除します。アップグレードが完了し、Satellite が動作しているのを確認したら、フックを復元します。
- デフォルトテンプレートを変更する場合は、そのテンプレートのクローンを作成するか、エクスポートを行って、ファイルをバックアップします。クローンを作成することで、今後の更新またはアップグレードが上書きされなくなるため、推奨されるのはクローン作成です。テンプレートの変更の有無を確認するには、アップグレード前に 履歴 を確認するか、アップグレード後に監査ログで変更を表示できます。Web UI で モニター > 監査 に移動し、テンプレートを検索すると、変更履歴を確認できます。エクスポートを使用する場合は、エクスポートしたテンプレートと、デフォルトテンプレートを比較し、手動で変更を適用して変更を復元します。
Capsule に関する留意事項
- Capsule Server のベースオペレーティングシステム、または Capsule Server リポジトリーへの更新をコンテンツビューで管理する場合は、更新したコンテンツビューを公開する必要があります。
カスタムの証明書を実装している場合は、/root/ssl-build
ディレクトリーと、カスタム証明書に関連するソースファイルを作成したディレクトリーのコンテンツを保持する必要があります。
アップグレード時にこのファイルを保持できないと、アップグレードは失敗します。ファイルを削除してしまった場合は、アップグレードを進めるためにバックアップから復元する必要があります。
BASH シェルの設定
BASH シェルには、ハッシュテーブルのバイナリーの場所が保存されます。アップグレード時に satellite-maintain
スクリプトの場所が変更されますが、BASH にはこの変更が登録されないため、変更後にこのスクリプトを呼び出すと、satellite-maintain
が失敗します。
オプション: インストーラーの完了後に
satellite-maintain
が有効になるように、アップグレードする前に、BASH シェルでcheckhash
オプションを一時的に設定できます。BASH シェルで以下のようなコマンドを実行します。shopt -s checkhash
# shopt -s checkhash
Copy to Clipboard Copied! Toggle word wrap Toggle overflow アップグレードに成功または失敗した後に、現在実行しているすべての BASH シェルで、以下のコマンドを実行します。
hash -d satellite-maintain 2> /dev/null
# hash -d satellite-maintain 2> /dev/null
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
アップグレードシナリオ
- Red Hat コンテンツ配信ネットワークに接続している Satellite Server をアップグレードする場合は「接続している Satellite Server のアップグレード」に進みます。
- Red Hat コンテンツ配信ネットワークに接続していない Satellite Server をアップグレードする場合は「切断されている Satellite Server のアップグレード」に進みます。
自己登録の Satellite をアップグレードすることはできません。自己登録の Satellite は、Red Hat コンテンツ配信ネットワーク (CDN) に移行すればアップグレードを実行できます。自己登録の Satellite を CDN に移行する方法は、Satellite 6.3 の Red Hat Satellite のアップグレードおよび更新ガイドの 自己登録 Satellite の移行 を参照してください。
FIPS モード
FIPS モードを使用していない RHEL ベースのシステムから、FIPS モードを使用する RHEL ベースのシステムに、Satellite Server をアップロードできません。
FIPS モードの RHEL ベースシステムで Satellite Server を実行するには、FIPS モードで稼働する RHEL ベースのオペレーティングシステムを新規にプロビジョニングして、Satellite をインストールする必要があります。詳細情報は、オンラインネットワークからの Satellite Server のインストールの システム要件 を参照してください。
3.1.1. 接続している Satellite Server のアップグレード リンクのコピーリンクがクリップボードにコピーされました!
Satellite Server を Red Hat コンテンツ配信ネットワーク (CDN) に接続している場合は、以下の手順を実行します。
設定ファイルを手動で、または Hiera などのツールを使用して、カスタマイズした場合には、この変更内容は、アップグレード時または更新時にインストールスクリプトを実行すると上書きされます。satellite-installer スクリプトで --noop
オプションを使用すると、変更をテストできます。詳細は、ナレッジベースソリューションの How to use the noop option to check for changes in Satellite config files during an upgrade を参照してください。
Satellite Server のアップグレード
バックアップを作成します。
- 仮想マシンで、スナップショットを作成します。
物理マシンで、バックアップを作成します。
バックアップに関する詳細は、Red Hat Satellite 6.8 管理ガイドの Satellite Server および Capsule Server のバックアップ を参照してください。
-
オプション:
/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-installer --foreman-proxy-dns-managed=false \ --foreman-proxy-dhcp-managed=false
Copy to Clipboard Copied! Toggle word wrap Toggle overflow オプション: PostgreSQL を外部データベースとして使用する場合には、PostgreSQL サーバーで
rh-postgresql12-postgresql-evr
パッケージをインストールします。このパッケージはrhel-7-server-satellite-6.9-rpms
リポジトリーから取得できます。yum install rh-postgresql12-postgresql-evr
# yum install rh-postgresql12-postgresql-evr
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Satellite Web UI で、ホスト > 検出されたホスト に移動します。検出されたホストページで、検出したホストの電源を切って削除します。組織の選択 メニューで、組織を順番に選択し、検出したホストの電源を切って削除するプロセスを繰り返します。アップグレードが完了したら、検出されたホストを再起動するようにメモします。
Satellite Maintenance リポジトリーが有効になっていることを確認します。
subscription-manager repos --enable \ rhel-7-server-satellite-maintenance-6-rpms
# subscription-manager repos --enable \ rhel-7-server-satellite-maintenance-6-rpms
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 利用可能なバージョンを確認して、希望のバージョンが表示されていることを確認します。
satellite-maintain upgrade list-versions
# satellite-maintain upgrade list-versions
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ヘルスチェックオプションを使用して、システムをアップグレードする準備が完了しているかどうかを確認します。プロンプトが表示されたら、hammer の管理者ユーザー認証情報を入力して
satellite-maintain
を設定します。この変更は、/etc/foreman-maintain/foreman-maintain-hammer.yml
ファイルに適用されます。satellite-maintain upgrade check --target-version 6.9
# satellite-maintain upgrade check --target-version 6.9
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 結果を確認し、アップグレードを実行する前に、強調表示されているエラー状態に対応します。
アップグレード時間は長くなるため、通信セッションの中断と再接続を可能にする
screen
などのユーティリティーを使用します。これにより、コマンドシェルに接続し続けなくてもアップグレードの進捗が確認できるようになります。screen コマンドの使用方法は、Red Hat ナレッジベース の How do I use the screen command? を参照してください。アップグレードコマンドを実行しているコマンドシェルへの接続がなくなった場合は、
/var/log/foreman-installer/satellite.log
ファイルのログメッセージで、プロセスが完全に終了したかどうかを確認できます。アップグレードを実行します。
satellite-maintain upgrade run --target-version 6.9
# satellite-maintain upgrade run --target-version 6.9
Copy to Clipboard Copied! Toggle word wrap Toggle overflow カーネルパッケージが最後に更新された日時を確認します。
rpm -qa --last | grep kernel
# rpm -qa --last | grep kernel
Copy to Clipboard Copied! Toggle word wrap Toggle overflow オプション: 最後の再起動以降にカーネルが更新された場合には、
satellite-maintain
サービスを停止して、システムを再起動します。satellite-maintain service stop reboot
# satellite-maintain service stop # reboot
Copy to Clipboard Copied! Toggle word wrap Toggle overflow BASH シェルを使用している場合は、アップグレードに成功または失敗した後に、以下を入力します。
hash -d satellite-maintain service 2> /dev/null
# hash -d satellite-maintain service 2> /dev/null
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - オプション: DNS または DHCP 設定ファイルを手動で編集した場合には、作成するバックアップを使用して、DNS と DHCP の設定ファイルに必要なすべての変更を確認し、復元します。
以前の手順で変更を加えた場合には、
satellite-maintain
サービスを再起動します。satellite-maintain service restart
# satellite-maintain service restart
Copy to Clipboard Copied! Toggle word wrap Toggle overflow OpenSCAP プラグインがインストールされているにもかかわらず、デフォルトの OpenSCAP コンテンツが利用できない場合は、以下のコマンドを実行します。
foreman-rake foreman_openscap:bulk_upload:default
# foreman-rake foreman_openscap:bulk_upload:default
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
3.1.2. 切断されている Satellite Server のアップグレード リンクのコピーリンクがクリップボードにコピーされました!
Red Hat コンテンツ配信ネットワークに接続していない Satellite Server には、この手順を使用します。
設定ファイル手動または Hiera などのツールを使用してカスタマイズする場合に、この変更内容はアップグレードまたは更新時に satellite-maintain
コマンドを入力すると上書きされます。satellite-installer
コマンドを --noop
オプションを指定して使用し、アップグレードまたは更新時に適用された変更を確認します。詳細は、ナレッジベースソリューションの How to use the noop option to check for changes in Satellite config files during an upgrade を参照してください。
作業開始前の準備
- Satellite Server をアップグレードする前に、ファイアウォールの設定を確認して更新してください。詳細は、オフラインネットワークからの Satellite Server のインストールの ポートとファイアウォールの要件 を参照してください。
- カスタマーポータルまたは Satellite Web UI からマニフェストを削除しないでください。削除すると、コンテンツホストからエンタイトルメントがすべて削除されます。
- アップグレードする前に、全 Foreman フックのバックアップを作成して、その後フックを削除します。アップグレードが完了し、Satellite が動作しているのを確認できるまで、フックを元に戻さないでください。
カスタムの証明書を実装している場合は、/root/ssl-build
ディレクトリーと、カスタム証明書に関連するソースファイルを作成したディレクトリーのコンテンツを保持する必要があります。
アップグレード時にこのファイルを保持できないと、アップグレードは失敗します。ファイルを削除してしまった場合は、アップグレードを進めるためにバックアップから復元する必要があります。
切断されている Satellite Server のアップグレード
バックアップを作成します。
- 仮想マシンで、スナップショットを作成します。
- 物理マシンで、バックアップを作成します。
アップグレード前スクリプトは競合を検出し、アップグレード後に登録解除および削除できる Satellite Server の重複エントリーがあるホストをリストできます。また、組織に割り当てられていないホストを検出します。ホスト > すべてのホスト で、組織の関連付けがないホストがリストされ、同じ名前のコンテンツホストに組織がすでに関連付けられている場合、コンテンツホストは自動的に登録解除されます。これは、アップグレード前にこのようなホストを組織に関連付けることによって回避できます。
アップグレード前のチェックスクリプトを実行して、アップグレード後に削除できるホストの一覧を取得します。関連付けられていないホストが検出された場合は、アップグレードの前に組織にそれらのホストを関連付けることが推奨されます。
foreman-rake katello:upgrade_check
# foreman-rake katello:upgrade_check
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
オプション:
/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-installer --foreman-proxy-dns-managed=false \ --foreman-proxy-dhcp-managed=false
Copy to Clipboard Copied! Toggle word wrap Toggle overflow オプション: PostgreSQL を外部データベースとして使用する場合には、PostgreSQL サーバーで
rh-postgresql12-postgresql-evr
パッケージをインストールします。このパッケージはrhel-7-server-satellite-6.9-rpms
リポジトリーから取得できます。yum install rh-postgresql12-postgresql-evr
# yum install rh-postgresql12-postgresql-evr
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
Satellite Web UI で、ホスト > 検出されたホスト に移動します。検出されたホストが利用可能な場合は無効にし、
検出されたホスト
ページにあるエントリーをすべて削除します。必要に応じて、組織設定メニューから、その他の組織を順番に選択し、すべてのエントリーを削除します。アップグレードが完了したら、検出されたホストを再起動します。 - すべての外部 Capsule Server が組織に割り当てられていることを確認します。割り当てられていない場合、これらのサーバーは、ホスト統合の変更により登録解除された可能性があります。
以前のリポジトリーを削除します。
rm /etc/yum.repos.d/*
# rm /etc/yum.repos.d/*
Copy to Clipboard Copied! Toggle word wrap Toggle overflow satellite-maintain
サービスを停止します。satellite-maintain service stop
# satellite-maintain service stop
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - オフラインネットワークからの Satellite SERVER のインストールガイドの バイナリー DVD イメージのダウンロード の手順に従って、最新の ISO ファイルを取得します。
-
オフラインネットワークからの Satellite Server のインストールガイドの オフラインリポジトリーでベースシステムの設定 の手順に従い、マウントポイントとして使用するディレクトリーを作成し、ISO イメージをマウントして、
rhel7-server
リポジトリーを設定します。この段階では、パッケージのインストールや更新はしないでください。 ISO ファイルから Satellite 6.9 リポジトリーを設定します。
Red Hat Satellite パッケージ用に ISO ファイルのリポジトリーデータファイルをコピーします。
cp /media/sat6/media.repo /etc/yum.repos.d/sat6.repo
# cp /media/sat6/media.repo /etc/yum.repos.d/sat6.repo
Copy to Clipboard Copied! Toggle word wrap Toggle overflow /etc/yum.repos.d/sat6.repo
ファイルを編集します。vi /etc/yum.repos.d/sat6.repo
# vi /etc/yum.repos.d/sat6.repo
Copy to Clipboard Copied! Toggle word wrap Toggle overflow デフォルトの
InstallMedia
リポジトリー名をSatellite-6.9
に変更します。[Satellite-6.9]
[Satellite-6.9]
Copy to Clipboard Copied! Toggle word wrap Toggle overflow baseurl
ディレクティブを追加します。baseurl=file:///media/sat6/
baseurl=file:///media/sat6/
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
ISO ファイルからの Red Hat Software Collections リポジトリーを設定します。
Red Hat Software Collections パッケージ用に ISO ファイルのリポジトリーデータファイルをコピーします。
cp /media/sat6/RHSCL/media.repo /etc/yum.repos.d/RHSCL.repo
# cp /media/sat6/RHSCL/media.repo /etc/yum.repos.d/RHSCL.repo
Copy to Clipboard Copied! Toggle word wrap Toggle overflow /etc/yum.repos.d/RHSCL.repo
ファイルを編集します。vi /etc/yum.repos.d/RHSCL.repo
# vi /etc/yum.repos.d/RHSCL.repo
Copy to Clipboard Copied! Toggle word wrap Toggle overflow デフォルトの
InstallMedia
リポジトリー名をRHSCL
に変更します。[RHSCL]
[RHSCL]
Copy to Clipboard Copied! Toggle word wrap Toggle overflow baseurl
ディレクティブを追加します。baseurl=file:///media/sat6/RHSCL/
baseurl=file:///media/sat6/RHSCL/
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
ISO ファイルからの Red Hat Satellite Maintenance リポジトリーを設定します。
Red Hat Satellite Maintenance パッケージ用に ISO ファイルのリポジトリーデータファイルをコピーします。
cp /media/sat6/sat-maintenance/media.repo /etc/yum.repos.d/sat-maintenance.repo
# cp /media/sat6/sat-maintenance/media.repo /etc/yum.repos.d/sat-maintenance.repo
Copy to Clipboard Copied! Toggle word wrap Toggle overflow /etc/yum.repos.d/sat-maintenance.repo
ファイルを編集します。vi /etc/yum.repos.d/sat-maintenance.repo
# vi /etc/yum.repos.d/sat-maintenance.repo
Copy to Clipboard Copied! Toggle word wrap Toggle overflow デフォルトの
InstallMedia
リポジトリー名をSatellite-Maintenance
に変更します。[Satellite-Maintenance]
[Satellite-Maintenance]
Copy to Clipboard Copied! Toggle word wrap Toggle overflow baseurl
ディレクティブを追加します。baseurl=file:///media/sat6/sat-maintenance/
baseurl=file:///media/sat6/sat-maintenance/
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
オプション: カスタムの Apache サーバー設定を適用している場合に、アップグレードを実行すると、カスタムの設定がインストール時のデフォルト設定に戻る点に注意してください。
アップグレード時に適用された変更をプレビューするには、
--noop
(操作なし) オプションを指定してsatellite-installer
コマンドを実行します。これらの変更は、以下の手順でsatellite-maintain upgrade
コマンドを入力すると適用します。次の行を
/etc/httpd/conf/httpd.conf
設定ファイルに追加します。Include /etc/httpd/conf.modules.d/*.conf
Include /etc/httpd/conf.modules.d/*.conf
Copy to Clipboard Copied! Toggle word wrap Toggle overflow httpd
サービスを再起動します。systemctl restart httpd
# systemctl restart httpd
Copy to Clipboard Copied! Toggle word wrap Toggle overflow postgresql
データベースサービスおよびrh-mongodb34-mongod
データベースサービスを起動します。systemctl start postgresql systemctl start rh-mongodb34-mongod
# systemctl start postgresql # systemctl start rh-mongodb34-mongod
Copy to Clipboard Copied! Toggle word wrap Toggle overflow --noop
オプションを指定して、satellite-installer
コマンドを入力します。satellite-installer --scenario satellite --upgrade --verbose --noop
# satellite-installer --scenario satellite --upgrade --verbose --noop
Copy to Clipboard Copied! Toggle word wrap Toggle overflow アップグレード時に適用された変更をプレビューするには、
/var/log/foreman-installer/satellite.log
を確認します。設定ファイルへの変更を示す+++
と---
シンボルの場所を特定します。--noop
オプションを指定してsatellite-installer
コマンドを入力しても、Satellite に変更は適用されませんが、モジュール内の Puppet リソースによっては変更が適用されることを想定している場合があり、エラーのメッセージが表示される可能性があります。satellite-maintain
サービスを停止します。satellite-maintain service stop
# satellite-maintain service stop
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
アップグレード時間は長くなるため、通信セッションの中断と再接続を可能にする
screen
などのユーティリティーを使用します。これにより、コマンドシェルに接続し続けなくてもアップグレードの進捗が確認できるようになります。screen コマンドの使用方法は、Red Hat ナレッジベース の How do I use the screen command? を参照してください。アップグレードコマンドを実行しているコマンドシェルへの接続がなくなった場合は、
/var/log/foreman-installer/satellite.log
のログで、プロセスが完全に終了したかどうかを確認できます。利用可能なバージョンを確認して、希望のバージョンが表示されていることを確認します。
satellite-maintain upgrade list-versions
# satellite-maintain upgrade list-versions
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ヘルスチェックオプションを使用して、システムをアップグレードする準備が完了しているかどうかを確認します。プロンプトが表示されたら、hammer の管理者ユーザー認証情報を入力して
satellite-maintain
を設定します。この変更は、/etc/foreman-maintain/foreman-maintain-hammer.yml
ファイルに適用されます。satellite-maintain upgrade check --target-version 6.9 \ --whitelist="repositories-validate,repositories-setup"
# satellite-maintain upgrade check --target-version 6.9 \ --whitelist="repositories-validate,repositories-setup"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 結果を確認し、アップグレードを実行する前に、強調表示されているエラー状態に対応します。
アップグレードを実行します。
satellite-maintain upgrade run --target-version 6.9 \ --whitelist="repositories-validate,repositories-setup"
# satellite-maintain upgrade run --target-version 6.9 \ --whitelist="repositories-validate,repositories-setup"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 警告config サブディレクトリーを含むディレクトリーからコマンドを実行すると、以下のエラーが発生します。
ERROR: Scenario (config/satellite.yaml) was not found, can not continue.
ERROR: Scenario (config/satellite.yaml) was not found, can not continue.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow このような場合は、root ユーザーのホームディレクトリーに移動し、コマンドを再実行します。
パッケージが古いか、足りないためにスクリプトに失敗した場合には、これらのパッケージを個別にダウンロードしてインストールする必要があります。詳細は、オフラインネットワークからの Satellite Server のインストールガイドの パッケージの依存関係エラーの解決 の手順を参照してください。
BASH シェルを使用している場合は、アップグレードに成功または失敗した後に、以下を入力します。
hash -d satellite-maintain service 2> /dev/null
# hash -d satellite-maintain service 2> /dev/null
Copy to Clipboard Copied! Toggle word wrap Toggle overflow カーネルパッケージが最後に更新された日時を確認します。
rpm -qa --last | grep kernel
# rpm -qa --last | grep kernel
Copy to Clipboard Copied! Toggle word wrap Toggle overflow オプション: 最後の再起動以降にカーネルが更新された場合には、
satellite-maintain
サービスを停止して、システムを再起動します。satellite-maintain service stop reboot
# satellite-maintain service stop # reboot
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - オプション: DNS または DHCP 設定ファイルを手動で編集した場合には、作成したバックアップを使用して、DNS と DHCP の設定ファイルに必要なすべての変更を確認し、復元します。
以前の手順で変更を加えた場合には、
satellite-maintain
サービスを再起動します。satellite-maintain service restart
# satellite-maintain service restart
Copy to Clipboard Copied! Toggle word wrap Toggle overflow OpenSCAP プラグインがインストールされているにもかかわらず、デフォルトの OpenSCAP コンテンツが利用できない場合は、以下のコマンドを実行します。
foreman-rake foreman_openscap:bulk_upload:default
# foreman-rake foreman_openscap:bulk_upload:default
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Satellite Web UI で 設定 > 検出ルール に移動し、選択した組織および場所を検出ルールに関連付けます。