第3章 Red Hat Satellite のアップグレード
以下の手順を使用して既存の Red Hat Satellite を Red Hat Satellite 6.11 にアップグレードします。
3.1. Satellite Server のアップグレード リンクのコピーリンクがクリップボードにコピーされました!
このセクションでは、Satellite Server を 6.10 から 6.11 にアップグレードする方法を説明します。Satellite Server 6.10 のマイナーバージョンからアップグレードできます。
作業開始前の準備
- Capsule は、Satellite とは別にアップグレードできます。詳細は、「Satellite とは別の Capsule のアップグレード」 を参照してください。
- Satellite Server をアップグレードする前に、ファイアウォールの設定を確認して更新してください。詳細については、Installing Satellite Server の Preparing your environment for installation を参照してください。
- カスタマーポータルまたは Satellite Web UI からマニフェストを削除しないでください。削除すると、コンテンツホストからエンタイトルメントがすべて削除されます。
- デフォルトのジョブテンプレートまたはプロビジョニングテンプレートのいずれかを編集した場合は、ファイルを複製またはエクスポートしてバックアップします。推奨される方法はクローン作成です。今後の更新やアップグレードでファイルが上書きされることがなくなるためです。テンプレートの変更の有無を確認するには、アップグレード前に 履歴 を確認するか、アップグレード後に監査ログで変更を表示できます。Satellite Web UI で Monitor > Audits に移動し、テンプレートを検索すると、変更履歴を確認できます。エクスポートを使用する場合は、エクスポートしたテンプレートと、デフォルトテンプレートを比較し、手動で変更を適用して変更を復元します。
Capsule に関する留意事項
- Capsule Server のベースオペレーティングシステム、または Capsule Server リポジトリーへの更新をコンテンツビューで管理する場合は、更新したコンテンツビューを公開する必要があります。
- 6.10 から 6.11 にアップグレードされた Satellite Server は、引き続き 6.10 の 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 をインストールする必要があります。詳細については、Installing Satellite Server の Preparing your environment for installation を参照してください。
3.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-maintain service stopCopy to Clipboard Copied! Toggle word wrap Toggle overflow スナップショットを作成するか、バックアップを作成します。
- 仮想マシンで、スナップショットを作成します。
- 物理マシンで、バックアップを作成します。
すべての Satellite サービスを起動します。
satellite-maintain service start
# satellite-maintain service startCopy 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=falseCopy to Clipboard Copied! Toggle word wrap Toggle overflow - Satellite Web UI で、Hosts > Discovered hosts に移動します。検出されたホストページで、検出されたホストの電源を切って削除します。Select an Organization メニューで、組織を順番に選択し、検出されたホストの電源を切って削除するプロセスを繰り返します。アップグレードが完了したら、これらのホストを再起動することをメモしておきます。
Satellite Maintenance リポジトリーが有効になっていることを確認します。
subscription-manager repos --enable \ rhel-7-server-satellite-maintenance-6.11-rpms
# subscription-manager repos --enable \ rhel-7-server-satellite-maintenance-6.11-rpmsCopy to Clipboard Copied! Toggle word wrap Toggle overflow 利用可能なバージョンを確認して、希望のバージョンが表示されていることを確認します。
satellite-maintain upgrade list-versions
# satellite-maintain upgrade list-versionsCopy 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.11
# satellite-maintain upgrade check --target-version 6.11Copy to Clipboard Copied! Toggle word wrap Toggle overflow 結果を確認し、アップグレードを実行する前に、強調表示されているエラー状態に対応します。
アップグレードには時間がかかるため、
tmuxなどのユーティリティーを使用して、通信セッションを一時停止し、再接続してください。これにより、コマンドシェルに接続し続けなくてもアップグレードの進捗が確認できるようになります。アップグレードコマンドを実行しているコマンドシェルへの接続がなくなった場合は、
/var/log/foreman-installer/satellite.logファイルのログメッセージで、プロセスが完全に終了したかどうかを確認できます。アップグレードを実行します。
satellite-maintain upgrade run --target-version 6.11
# satellite-maintain upgrade run --target-version 6.11Copy to Clipboard Copied! Toggle word wrap Toggle overflow システムが再起動する必要があるかどうかを判断します。
最新のインストールされているカーネルのバージョンを確認します。
rpm --query --last kernel | head -n 1
# rpm --query --last kernel | head -n 1Copy to Clipboard Copied! Toggle word wrap Toggle overflow これを、現在実行中のカーネルのバージョンと比較します。
uname --kernel-release
# uname --kernel-releaseCopy to Clipboard Copied! Toggle word wrap Toggle overflow
オプション: 最新のカーネルが現在実行中のカーネルと異なる場合は、システムを再起動します。
reboot
# rebootCopy to Clipboard Copied! Toggle word wrap Toggle overflow BASH シェルを使用している場合は、アップグレードに成功または失敗した後に、以下を入力します。
hash -d satellite-maintain service 2> /dev/null
# hash -d satellite-maintain service 2> /dev/nullCopy to Clipboard Copied! Toggle word wrap Toggle overflow
3.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 サービスを停止します。
satellite-maintain service stop
# satellite-maintain service stopCopy to Clipboard Copied! Toggle word wrap Toggle overflow スナップショットを作成するか、バックアップを作成します。
- 仮想マシンで、スナップショットを作成します。
- 物理マシンで、バックアップを作成します。
すべての Satellite サービスを起動します。
satellite-maintain service start
# satellite-maintain service startCopy to Clipboard Copied! Toggle word wrap Toggle overflow アップグレード前スクリプトを使用すると、競合を検出して、Satellite Server に重複したエントリーがあり、アップグレード後に登録解除および削除できるホストをリストできます。また、このスクリプトは組織に割り当てられていないホストを検出します。組織が関連付けられていないホストが Hosts > All hosts にリストされており、同じ名前のコンテンツホストに組織がすでに関連付けられている場合、そのコンテンツホストは自動的に登録解除されます。これは、アップグレード前にこのようなホストを組織に関連付けることによって回避できます。
アップグレード前チェックスクリプトを実行して、アップグレード後に削除できるホストのリストを取得します。関連付けられていないホストが検出された場合は、アップグレードする前にそれらを組織に関連付けることを推奨します。
foreman-rake katello:upgrade_check
# foreman-rake katello:upgrade_checkCopy 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=falseCopy to Clipboard Copied! Toggle word wrap Toggle overflow -
Satellite Web UI で、Hosts > Discovered hosts に移動します。使用可能な検出されたホストがある場合は、それらをオフにして、
Discovered hostsページにあるすべてのエントリーを削除します。必要に応じて、組織設定メニューから、その他の組織を順番に選択し、すべてのエントリーを削除します。これらのホストは、アップグレード完了後に再起動します。 - すべての外部 Capsule Server が組織に割り当てられていることを確認します。割り当てられていないと、ホスト統合の変更により登録が解除される可能性があります。
以前のリポジトリーを削除します。
rm /etc/yum.repos.d/*
# rm /etc/yum.repos.d/*Copy to Clipboard Copied! Toggle word wrap Toggle overflow Satellite サービスを停止します。
satellite-maintain service stop
# satellite-maintain service stopCopy to Clipboard Copied! Toggle word wrap Toggle overflow - オフラインネットワークからの Satellite Server のインストール ガイドの バイナリー DVD イメージのダウンロード の手順に従って、最新の ISO ファイルを取得します。
マウントポイントとして機能するディレクトリーを作成し、ISO イメージをマウントして、
rhel7-serverまたはrhel8リポジトリーを設定します。Red Hat Enterprise Linux 8 の場合
切断されたネットワーク環境での Satellite Server のインストール の RHEL 8 でのオフラインリポジトリーを使用したベースオペレーティングシステムの設定 手順に従います。
Red Hat Enterprise Linux 7 の場合
切断されたネットワーク環境での Satellite Server のインストール の RHEL 7 でのオフラインリポジトリーを使用した基本オペレーティングシステムの設定 手順に従います。
この段階では、パッケージのインストールや更新はしないでください。
ISO ファイルから Satellite 6.11 リポジトリーを設定します。
Red Hat Satellite パッケージ用に ISO ファイルのリポジトリーデータファイルをコピーします。
cp /media/sat6/Satellite/media.repo /etc/yum.repos.d/satellite.repo
# cp /media/sat6/Satellite/media.repo /etc/yum.repos.d/satellite.repoCopy to Clipboard Copied! Toggle word wrap Toggle overflow /etc/yum.repos.d/satellite.repoファイルを編集します。vi /etc/yum.repos.d/satellite.repo
# vi /etc/yum.repos.d/satellite.repoCopy to Clipboard Copied! Toggle word wrap Toggle overflow デフォルトの
InstallMediaリポジトリー名をSatellite-6.11に変更します。[Satellite-6.11]
[Satellite-6.11]Copy to Clipboard Copied! Toggle word wrap Toggle overflow baseurlディレクティブを追加します。baseurl=file:///media/sat6/Satellite
baseurl=file:///media/sat6/SatelliteCopy to Clipboard Copied! Toggle word wrap Toggle overflow
ISO ファイルから Red Hat Satellite Maintenance リポジトリーを設定します。
Red Hat Satellite Maintenance パッケージ用に ISO ファイルのリポジトリーデータファイルをコピーします。
cp /media/sat6/Maintenance/media.repo /etc/yum.repos.d/satellite-maintenance.repo
# cp /media/sat6/Maintenance/media.repo /etc/yum.repos.d/satellite-maintenance.repoCopy to Clipboard Copied! Toggle word wrap Toggle overflow /etc/yum.repos.d/satellite-maintenance.repoファイルを編集します。vi /etc/yum.repos.d/satellite-maintenance.repo
# vi /etc/yum.repos.d/satellite-maintenance.repoCopy 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/Maintenance/
baseurl=file:///media/sat6/Maintenance/Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Satellite が Red Hat Enterprise Linux 7 で実行されている場合は、ISO ファイルから Ansible リポジトリーを設定します。
Ansible パッケージの ISO ファイルのリポジトリーデータファイルをコピーします。
cp /media/sat6/ansible/media.repo /etc/yum.repos.d/ansible.repo
# cp /media/sat6/ansible/media.repo /etc/yum.repos.d/ansible.repoCopy to Clipboard Copied! Toggle word wrap Toggle overflow /etc/yum.repos.d/ansible.repoファイルを編集します。vi /etc/yum.repos.d/ansible.repo
# vi /etc/yum.repos.d/ansible.repoCopy to Clipboard Copied! Toggle word wrap Toggle overflow デフォルトの
InstallMediaリポジトリー名をAnsibleに変更します。[Ansible]
[Ansible]Copy to Clipboard Copied! Toggle word wrap Toggle overflow baseurlディレクティブを追加します。baseurl=file:///media/sat6/ansible/
baseurl=file:///media/sat6/ansible/Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Satellite が Red Hat Enterprise Linux 7 で実行されている場合は、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.repoCopy 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.repoCopy 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
オプション: カスタムの 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/*.confCopy to Clipboard Copied! Toggle word wrap Toggle overflow httpdサービスを再起動します。systemctl restart httpd
# systemctl restart httpdCopy to Clipboard Copied! Toggle word wrap Toggle overflow postgresqlデータベースサービスを開始します。systemctl start postgresql
# systemctl start postgresqlCopy to Clipboard Copied! Toggle word wrap Toggle overflow --noopオプションを指定して、satellite-installerコマンドを入力します。satellite-installer --scenario satellite --verbose --noop
# satellite-installer --scenario satellite --verbose --noopCopy to Clipboard Copied! Toggle word wrap Toggle overflow アップグレード時に適用された変更をプレビューするには、
/var/log/foreman-installer/satellite.logを確認します。設定ファイルへの変更を示す+++と---シンボルの場所を特定します。--noopオプションを指定してsatellite-installerコマンドを入力しても、Satellite に変更は適用されませんが、モジュール内の Puppet リソースによっては変更が適用されることを想定している場合があり、エラーのメッセージが表示される可能性があります。Satellite サービスを停止します。
satellite-maintain service stop
# satellite-maintain service stopCopy to Clipboard Copied! Toggle word wrap Toggle overflow
アップグレードに時間がかかるため、
tmuxなどのユーティリティーを使用して、通信セッションを一時停止し、再接続してください。これにより、コマンドシェルに接続し続けなくてもアップグレードの進捗が確認できるようになります。アップグレードコマンドを実行しているコマンドシェルへの接続がなくなった場合は、
/var/log/foreman-installer/satellite.logのログで、プロセスが完全に終了したかどうかを確認できます。利用可能なバージョンを確認して、希望のバージョンが表示されていることを確認します。
satellite-maintain upgrade list-versions
# satellite-maintain upgrade list-versionsCopy 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.11 \ --whitelist="repositories-validate,repositories-setup"
# satellite-maintain upgrade check --target-version 6.11 \ --whitelist="repositories-validate,repositories-setup"Copy to Clipboard Copied! Toggle word wrap Toggle overflow 結果を確認し、アップグレードを実行する前に、強調表示されているエラー状態に対応します。
アップグレードを実行します。
satellite-maintain upgrade run --target-version 6.11 \ --whitelist="repositories-validate,repositories-setup"
# satellite-maintain upgrade run --target-version 6.11 \ --whitelist="repositories-validate,repositories-setup"Copy to Clipboard Copied! Toggle word wrap Toggle overflow パッケージが古いか、足りないためにスクリプトに失敗した場合には、これらのパッケージを個別にダウンロードしてインストールする必要があります。詳細は、オフラインネットワーク環境での Satellite Server のインストール ガイドの パッケージの依存関係エラーの解決 のセクションを参照してください。
BASH シェルを使用している場合は、アップグレードに成功または失敗した後に、以下を入力します。
hash -d satellite-maintain service 2> /dev/null
# hash -d satellite-maintain service 2> /dev/nullCopy to Clipboard Copied! Toggle word wrap Toggle overflow カーネルパッケージが最後に更新された日時を確認します。
rpm -qa --last | grep kernel
# rpm -qa --last | grep kernelCopy to Clipboard Copied! Toggle word wrap Toggle overflow オプション: 最後の再起動以降にカーネルが更新された場合には、Satellite サービスを停止して、システムを再起動します。
satellite-maintain service stop reboot
# satellite-maintain service stop # rebootCopy to Clipboard Copied! Toggle word wrap Toggle overflow - オプション: DNS または DHCP 設定ファイルを手動で編集した場合には、作成したバックアップを使用して、DNS と DHCP の設定ファイルに必要なすべての変更を確認し、復元します。
前の手順で変更を加えた場合には、Satellite サービスを再起動します。
satellite-maintain service restart
# satellite-maintain service restartCopy to Clipboard Copied! Toggle word wrap Toggle overflow OpenSCAP プラグインがインストールされているにもかかわらず、デフォルトの OpenSCAP コンテンツが利用できない場合は、以下のコマンドを実行します。
foreman-rake foreman_openscap:bulk_upload:default
# foreman-rake foreman_openscap:bulk_upload:defaultCopy to Clipboard Copied! Toggle word wrap Toggle overflow - Satellite Web UI で Configure > Discovery Rules に移動し、選択した組織および場所を検出ルールに関連付けます。