Red Hat Satellite のアップグレードおよび更新
Red Hat Satellite Server および Capsule Server のアップグレードおよび更新
概要
はじめに
このガイドでは、アップグレード、更新、移行という用語を以下の意味で使用します。
- アップグレード
- y-stream を基準にして、Satellite Server および Capsule Server のインストールを次のリリースに上げるプロセスです (たとえば Satellite 6.10 から Satellite 6.11)。詳細は、1章アップグレードの概要 を参照してください。
- 更新
- z-stream を基準にして、Satellite Server および Capsule Server のインストールを次のリリースに上げるプロセスです (たとえば Satellite 6.11.0 から Satellite 6.11.1)。
- 移行
- 既存の Satellite インストールを新しいインスタンスに移動するプロセス。詳細は、5章Satellite を新しい Red Hat Enterprise Linux システムに移行する を参照してください。
Red Hat ドキュメントへのフィードバック (英語のみ)
Red Hat ドキュメントに対するご意見をお聞かせください。ドキュメントの改善点があればお知らせください。
Bugzilla でチケットを作成することでフィードバックを送信できます。
- Bugzilla のWeb サイトに移動します。
-
Component フィールドで、
Documentation
を使用します。 - Description フィールドに、ドキュメントの改善に関するご意見を記入してください。ドキュメントの該当部分へのリンクも追加してください。
- Submit Bug をクリックします。
第1章 アップグレードの概要
現在の RedHatSatellite のインストールを RedHatSatellite 6.11 にアップグレードする前に、以下の前提条件と利用可能なアップグレードパスを確認してください。
Red Hat カスタマーポータルの Red Hat Satellite Upgrade Helper では、対話式のアップグレード手順がご利用になれます。このアプリケーションは、現在のバージョン番号に適した手順を提供します。アップグレードパスに固有の手順や、既知の問題を回避する手順を確認できます。詳細は、RedHat カスタマーポータルの Satellite Upgrade Helper を参照してください。
Capsule は、Satellite とは別にアップグレードできます。詳細は、「Satellite とは別の Capsule のアップグレード」 を参照してください。
1.1. 前提条件
Satellite 6.11 へのアップグレードは、Satellite インフラストラクチャー全体に影響します。アップグレード前に以下を完了してください。
- Red Hat Satellite 6.11 の リリースノート を参照してください。
- アップグレードパスの計画を立てます。詳細は、「アップグレードパス」 を参照してください。
必要とされるダウンタイムを計画します。Satellite サービスはアップグレード時は停止します。アップグレードプロセスの期間は、ハードウェアの設定、ネットワークの速度、サーバーに保存されているデータ量により異なる可能性があります。
Satellite のアップグレードには約 1 - 2 時間かかります。
Capsule のアップグレードには約 10 - 30 分かかります。
- サーバーに十分なストレージ容量があることを確認します。詳細は、オンライン接続ネットワークからの Satellite Server のインストール の インストールのための環境準備 と Capsule Server のインストール の インストールのための環境準備 を参照してください。
- Satellite Server およびすべての Capsule Server をバックアップします。詳細は、Administering Red Hat Satellite ガイドの Backing Up Satellite Server and Capsule Server を参照してください。
- Satellite のバージョンごとに API コマンドが異なる場合があるので、使用しているスクリプトに Satellite API コマンドが含まれる場合は、更新の計画を立てます。
設定ファイルを手動で、または Hiera などのツールを使用して、カスタマイズした場合には、このカスタマイズした内容は、アップグレード時または更新時にインストールスクリプトを実行すると上書きされます。satellite-installer スクリプトで --noop
オプションを使用すると、変更をテストできます。詳細は、Red Hat ナレッジベースソリューションの How to use the noop option to check for changes in Satellite config files during an upgrade を参照してください。
1.2. アップグレードパス
Red Hat Satellite 6.10 から Red Hat Satellite 6.11 にアップグレードできます。
以前のバージョンの Satellite Server と Capsule Server は、先に Satellite 6.10 にアップグレードする必要があります。詳細については、Upgrading and Updating Red Hat Satellite to 6.10 を参照してください。
アップグレード手順の概要
Satellite を 6.11 にアップグレードするための俯瞰的な手順は次のとおりです。
- オプション: 既存の Satellite Server をクローンします。詳細は、2章Satellite Server のクローン を参照してください。
- Satellite Server と全 Capsule Server を Satellite 6.11 にアップグレードします。詳細は、「Satellite Server のアップグレード」 を参照してください。
- すべての Capsule サーバーを 6.11 にアップグレードします。詳細は、「Capsule Server のアップグレード」 を参照してください。
- すべてのコンテンツホストで Satellite Client 6 にアップグレードします。詳細は、「コンテンツホストのアップグレード」 を参照してください。
オプション:Satellite をアップグレードした後、SatelliteServer および Capsules のオペレーティングシステムを Red Hat Enterprise Linux 8 にアップグレードすることもできます。OS をアップグレードする方法は 2 つあります。
- 「アップグレード後のタスクの実行」 に進みます。
1.3. アップグレードの進捗の追跡
アップグレードには時間がかかるため、tmux
などのユーティリティーを使用して、通信セッションを一時停止し、再接続してください。これにより、コマンドシェルに接続し続けなくてもアップグレードの進捗が確認できるようになります。詳細は、tmux
の man ページを参照してください。
アップグレードコマンドを実行しているコマンドシェルへの接続がなくなった場合は、/var/log/foreman-installer/satellite.log
のログで、プロセスが完全に終了したかどうかを確認できます。
1.4. Satellite とは別の Capsule のアップグレード
Satellite はバージョン 6.11 にアップグレードし、Capsule は、アップグレードする容量が確保されるまでバージョン 6.10 に保つことができます。
これまで動作していた機能はすべて 6.10 Capsules で動作します。しかし、6.11 リリースで追加された機能は Capsule を 6.11 にアップグレードするまで動作しません。
Satellite アップグレード後の Capsule のアップグレードは、以下のようなシナリオ例で役に立ちます。
- 長期にわたる停止期間の発生を避け、停止期間を複数回に分けて短くする場合。
- 組織内の Capsule が複数のチームで管理されており、別の場所に配置されている場合。
- 負荷分散設定を使用している場合は、1 つの負荷分散 Capsule だけをアップグレードして、残りの負荷分散 Capsule を 1 つ前のバージョンに保つことができます。こうすることで、サービスを停止せずに全 Capsule を順番にアップグレードできます。
第2章 Satellite Server のクローン
Satellite Server のクローンを作成して、アップグレードを試みたり、インスタンスを別のマシンやオペレーティングシステムに移行したりするためのインスタンスを作成したりできます。これは、アップグレード中により多くの柔軟性を提供するオプションのステップです。
クローン作成されたインスタンスは、実稼働環境で並行して実行することは想定されていません。移行が完了したら、テストまたは古いインスタンスの完了後に、テストインスタンスの使用を停止する必要があります。
以下の手順を使用して、Satellite インスタンスのクローンを作成し、環境を保存してアップグレードの準備を整えます。
Satellite クローンツールは、Capsule Server から Red Hat Enterprise Linux 7 への移行をサポートしません。代わりに、既存の Capsule Server のバックアップを作成し、Red Hat Enterprise Linux 7 に Capsule Server を復元してから再設定します。
用語
次の用語を理解するようにしてください。
- ソースサーバー
- クローンの起点。
- ターゲットサーバー
- ファイルをコピーしてソースサーバーのクローンを作成する新しいサーバー。
2.1. クローン作成プロセスの概要
- ソースサーバーをバックアップします。
- ソースサーバーからターゲットサーバーにクローンを作成します。
- ソースサーバーの電源を切断します。
- 新規ホスト名とターゲットサーバーの IP アドレスが一致するように、ターゲットサーバー上のネットワーク設定を更新します。
- コンテンツホストと Capsule で goferd を再起動して、接続をリフレッシュします。
- 新規ターゲットサーバーをテストします。
2.2. 前提条件
Satellite Server のクローンを作成するには、以下のリソースが用意されていることを確認します。
- ターゲットサーバーとなる Red Hat Enterprise Linux 7 の最小インストール。Red Hat Enterprise Linux 7 ソフトウェアグループやサードパーティーのアプリはインストールしないでください。また、お使いのサーバーが Installing Satellite Server の Preparing your Environment for Installation に記載されている仕様すべてに準拠していることを確認してください。
-
satellite-maintain backup
スクリプトを使用して作成した Satellite 6.10 のバックアップ。Pulp データありでも、なしでもバックアップを使用できます。 - ターゲットサーバーの Satellite のサブスクリプション。
クローンを開始する前に、以下の条件を満たしていることを確認してください。
- ターゲットサーバーが分離ネットワーク上にあること。これにより、Capsule Server とホスト間で必要のない通信を回避できます。
- ソースサーバーからのバックアップファイルすべてを格納できるだけの容量があるターゲットサーバー
カスタマイズした設定ファイル
satellite-installer
ツールまたは Satellite バックアッププロセスのマネージドでないソースサーバーで、設定をカスタマイズしている場合には、これらのファイルを手動でバックアップする必要があります。
2.3. Pulp データの考慮事項
Pulp データを含めずに、Satellite Server のクローンを作成できます。ただし、クローンした環境を機能させるためには、Pulp データが必要です。ターゲットサーバーに、Pulp データがない場合には、Satellite は完全に機能しません。
Pulp データをターゲットサーバーに転送するには、2 つのオプションがあります。
- Pulp データを含むバックアップを使用したクローン作成
-
Pulp データなしのバックアップを使用してクローンを作成し、ソースサーバーから手動で
/var/lib/pulp
をコピーします。
pulp_data.tar
ファイルが 500 GB 以上の場合や、pulp_data.tar
ファイルが 100 GB 以上で、NFS など、速度の遅いストレージシステムを使用している場合には、デプロイメント時にメモリーエラーが発生する可能性があるので、バックアップに pulp_data.tar
を含めないようにしてください。ソースサーバーからターゲットサーバーに pulp_data.tar
ファイルをコピーするようにしてください。
Pulp データなしでバックアップする方法
「Satellite Server のクローン」の手順の内容に従います。ただし、Pulp データが含まれるクローンを作成する手順を、以下の手順に置き換えてください。
PostgreSQL データベースをアクティブにし、Pulp データは除外してバックアップを実行します。
# satellite-maintain backup offline --skip-pulp-content \ --assumeyes /var/backup
Satellite サービスを停止して無効にします。
# satellite-maintain service stop # satellite-maintain service disable
Pulp データをターゲットサーバーにコピーします。
# rsync --archive --partial --progress --compress \ /var/lib/pulp target_server.example.com:/var/lib/pulp
「ターゲットサーバーのクローン作成」 に進みます。
2.4. Satellite Server のクローン
以下の手順を使用して、Satellite Server のクローンを作成します。この手順の一部として大量のデータをコピーして転送する必要があるので、完了までにかなり時間がかかる可能性がある点に注意してください。
2.4.1. クローン作成のためのソースサーバーの準備
ソースサーバーで、以下の手順を実行します。
Satellite サブスクリプションのプール ID を確認します。
# subscription-manager list --consumed \ --matches 'Red Hat Satellite'|grep "Pool ID:"|awk '{print $3}'
後で使用できるように、プール ID をメモしてください。
Red Hat Satellite のサブスクリプションを削除します。
# subscription-manager remove --serial=$(subscription-manager list \ --consumed \ --matches 'Red Hat Satellite'|grep "Serial:"|awk '{print $2}')
Pulp データのサイズを判断します。
# du -sh /var/lib/pulp/
Pulp データが 500 GB 未満の場合は、PostgreSQL のデータベースをアクティブにし、Pulp データを含めてバックアップを実行します。Pulp データが 500 GB 以上の場合には、以下の手順は省略して、続行する前に「Pulp データの考慮事項」の手順を実行してください。
# satellite-maintain backup offline --assumeyes /var/backup
Satellite サービスを停止して無効にします。
# satellite-maintain service stop # satellite-maintain service disable
「ターゲットサーバーのクローン作成」 に進みます。
2.4.2. ターゲットサーバーのクローン作成
サーバーのクローンを作成するには、ターゲットサーバーで以下の手順を実行してください。
-
satellite-clone
ツールはデフォルトで、/backup/
をバックアップフォルダーとして使用します。別のフォルダーにコピーする場合には、/etc/satellite-clone/satellite-clone-vars.yml
ファイルのbackup_dir
変数を更新してください。 -
更新前の Satellite のバックアップファイルを、移行先のサーバーの
/backup/
フォルダーに配置します。共有ストレージをマウントするか、移行先のサーバーの/backup/
フォルダーにバックアップファイルをコピーします。 - ソースサーバーの電源を切断します。
以下のコマンドを入力してカスタマーポータルに登録して、サブスクリプションのアタッチし、必要なサブスクリプションだけを有効化します。
# subscription-manager register your_customer_portal_credentials # subscription-manager attach --pool=pool_ID # subscription-manager repos --disable=* # subscription-manager repos \ --enable=rhel-7-server-rpms \ --enable=rhel-server-rhscl-7-rpms \ --enable=rhel-7-server-satellite-maintenance-6-rpms \ --enable=rhel-7-server-ansible-2.9-rpms \ --enable=rhel-7-server-satellite-6.10-rpms
satellite-clone
パッケージをインストールします。# yum install satellite-clone
satellite-clone
ツールをインストールした後に、独自のデプロイメントに合わせて/etc/satellite-clone/satellite-clone-vars.yml
ファイルで設定を調節します。satellite-clone
ツールを実行します。# satellite-clone
- DHCP、DNS、TFTP、およびリモート実行サービスを再設定します。ソースの Satellite Server と競合しないように、クローンプロセスにより、ターゲットの Satellite Server でこのサービスが無効になります。
- Satellite Web UI で DHCP、DNS、TFTP を再設定し、有効にします。詳細については、Installing Satellite Server の Configuring External Services on Satellite Server を参照してください。
リモート実行を有効にします。
# satellite-installer --scenario satellite \ --enable-foreman-plugin-remote-execution \ --enable-foreman-proxy-plugin-remote-execution-ssh
-
ユーザー名
admin
とパスワードchangeme
で、Satellite Web UI にログインします。すぐに、管理者パスワードを変更して認証情報のセキュリティーを確保します。 - 正しい組織が選択されていることを確認します。
- Satellite Web UI で、Content > Subscriptions に移動し、Manage Manifest をクリックします。
- リフレッシュ ボタンをクリックして 終了 をクリックし、サブスクリプションのリストに戻ります。
- 利用可能なサブスクリプションが正しいことを確認します。
-
/usr/share/satellite-clone/logs/reassociate_capsules.txt
ファイルの説明に従い、Capsules とライフサイクル環境の間の関係を復元します。 -
ターゲットサーバーの IP アドレスと新規ホスト名が一致するように、DNS など、ネットワーク設定を更新します。
satellite-clone
ツールにより、ホスト名をソースサーバーのホスト名に変更します。ホスト名を別のものに変更する場合には、satellite-change-hostname
ツールを使用してください。詳細は、Administrating Red Hat Satellite の Renaming a Satellite or Capsule Server を参照してください。 -
ソースサーバーが
virt-who
デーモンを使用する場合は、ターゲットサーバーにインストールして設定します。ソースサーバーのディレクトリー/etc/virt-who.d/
にあるvirt-who
設定ファイルをすべて、ターゲットサーバーにある同じディレクトリーに移動します。詳細は、Red Hat Satellite での仮想マシンサブスクリプションの設定 を参照してください。以下の章を使用してアップグレードを行った後に、安全にソースサーバーの使用を停止することができます。
第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 サービスを起動します。
# 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 \ rhel-7-server-satellite-maintenance-6.11-rpms
利用可能なバージョンを確認して、希望のバージョンが表示されていることを確認します。
# satellite-maintain upgrade list-versions
ヘルスチェックオプションを使用して、システムをアップグレードする準備が完了しているかどうかを確認します。プロンプトが表示されたら、hammer の管理者ユーザー認証情報を入力して
satellite-maintain
を設定します。この変更は、/etc/foreman-maintain/foreman-maintain-hammer.yml
ファイルに適用されます。# satellite-maintain upgrade check --target-version 6.11
結果を確認し、アップグレードを実行する前に、強調表示されているエラー状態に対応します。
アップグレードには時間がかかるため、
tmux
などのユーティリティーを使用して、通信セッションを一時停止し、再接続してください。これにより、コマンドシェルに接続し続けなくてもアップグレードの進捗が確認できるようになります。アップグレードコマンドを実行しているコマンドシェルへの接続がなくなった場合は、
/var/log/foreman-installer/satellite.log
ファイルのログメッセージで、プロセスが完全に終了したかどうかを確認できます。アップグレードを実行します。
# satellite-maintain upgrade run --target-version 6.11
システムが再起動する必要があるかどうかを判断します。
最新のインストールされているカーネルのバージョンを確認します。
# rpm --query --last kernel | head -n 1
これを、現在実行中のカーネルのバージョンと比較します。
# uname --kernel-release
オプション: 最新のカーネルが現在実行中のカーネルと異なる場合は、システムを再起動します。
# reboot
BASH シェルを使用している場合は、アップグレードに成功または失敗した後に、以下を入力します。
# hash -d satellite-maintain service 2> /dev/null
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 サービスを起動します。
# 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 ファイルを取得します。
マウントポイントとして機能するディレクトリーを作成し、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
/etc/yum.repos.d/satellite.repo
ファイルを編集します。# vi /etc/yum.repos.d/satellite.repo
デフォルトの
InstallMedia
リポジトリー名をSatellite-6.11
に変更します。[Satellite-6.11]
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/
Satellite が Red Hat Enterprise Linux 7 で実行されている場合は、ISO ファイルから Ansible リポジトリーを設定します。
Ansible パッケージの ISO ファイルのリポジトリーデータファイルをコピーします。
# cp /media/sat6/ansible/media.repo /etc/yum.repos.d/ansible.repo
/etc/yum.repos.d/ansible.repo
ファイルを編集します。# vi /etc/yum.repos.d/ansible.repo
デフォルトの
InstallMedia
リポジトリー名をAnsible
に変更します。[Ansible]
baseurl
ディレクティブを追加します。baseurl=file:///media/sat6/ansible/
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
/etc/yum.repos.d/RHSCL.repo
ファイルを編集します。# vi /etc/yum.repos.d/RHSCL.repo
デフォルトの
InstallMedia
リポジトリー名をRHSCL
に変更します。[RHSCL]
baseurl
ディレクティブを追加します。baseurl=file:///media/sat6/RHSCL/
オプション: カスタムの Apache サーバー設定を適用している場合に、アップグレードを実行すると、カスタムの設定がインストール時のデフォルト設定に戻る点に注意してください。
アップグレード時に適用された変更をプレビューするには、
--noop
(操作なし) オプションを指定してsatellite-installer
コマンドを実行します。これらの変更は、以下の手順でsatellite-maintain upgrade
コマンドを入力すると適用します。次の行を
/etc/httpd/conf/httpd.conf
設定ファイルに追加します。Include /etc/httpd/conf.modules.d/*.conf
httpd
サービスを再起動します。# systemctl restart httpd
postgresql
データベースサービスを開始します。# systemctl start postgresql
--noop
オプションを指定して、satellite-installer
コマンドを入力します。# satellite-installer --scenario satellite --verbose --noop
アップグレード時に適用された変更をプレビューするには、
/var/log/foreman-installer/satellite.log
を確認します。設定ファイルへの変更を示す+++
と---
シンボルの場所を特定します。--noop
オプションを指定してsatellite-installer
コマンドを入力しても、Satellite に変更は適用されませんが、モジュール内の Puppet リソースによっては変更が適用されることを想定している場合があり、エラーのメッセージが表示される可能性があります。Satellite サービスを停止します。
# satellite-maintain service stop
アップグレードに時間がかかるため、
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.11 \ --whitelist="repositories-validate,repositories-setup"
結果を確認し、アップグレードを実行する前に、強調表示されているエラー状態に対応します。
アップグレードを実行します。
# satellite-maintain upgrade run --target-version 6.11 \ --whitelist="repositories-validate,repositories-setup"
パッケージが古いか、足りないためにスクリプトに失敗した場合には、これらのパッケージを個別にダウンロードしてインストールする必要があります。詳細は、オフラインネットワーク環境での Satellite Server のインストール ガイドの パッケージの依存関係エラーの解決 のセクションを参照してください。
BASH シェルを使用している場合は、アップグレードに成功または失敗した後に、以下を入力します。
# hash -d satellite-maintain service 2> /dev/null
カーネルパッケージが最後に更新された日時を確認します。
# rpm -qa --last | grep kernel
オプション: 最後の再起動以降にカーネルが更新された場合には、Satellite サービスを停止して、システムを再起動します。
# satellite-maintain service stop # 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 に移動し、選択した組織および場所を検出ルールに関連付けます。
3.2. 新しいリポジトリーの同期
Capsule Server と Satellite クライアントをアップグレードする前に、新しい 6.11 リポジトリーを有効にして同期する必要があります。
手順
- Satellite Web UI で、Content > Red Hat Repositories に移動します。
- Recommended Repositories を、オン の位置に切り替えます。
結果の一覧から、以下のリポジトリーを展開して、Enable アイコンをクリックして、リポジトリーを有効にします。
- Satellite クライアントをアップグレードするには、クライアントが使用するすべての Red Hat Enterprise Linux バージョンで Red Hat Satellite Client 6 リポジトリーを有効にします。
Capsule Server を使用している場合に、Capsule Server をアップグレードするには、以下のリポジトリーも有効にします。
Red Hat Satellite Capsule 6.11(RHEL 7 Server 用)(RPM)
Red Hat Satellite Maintenance 6.11 (RHEL 7 Server 用) (RPM)
Red Hat Ansible Engine 2.9 RPMs for Red Hat Enterprise Linux 7 Server
Red Hat Software Collections RPMs for Red Hat Enterprise Linux 7 Server
注記6.11 リポジトリーが利用できない場合は、Red Hat Subscription マニフェストを更新してください。Satellite Web UI で、Content > Subscriptions に移動し、Manage Manifest をクリックして、Refresh をクリックします。
- Satellite Web UI で、Content > Sync Status に移動します。
- 製品の横にある矢印をクリックして、利用可能なリポジトリーを表示します。
- 6.11 のリポジトリーを選択します。Red Hat Satellite Client 6 には 6.11 バージョンがないことに注意してください。代わりに Red Hat Satellite Client 6 を選択してください。
Synchronize Now をクリックします。
重要リポジトリーを同期しようとしたときにエラーが発生した場合は、マニフェストをリフレッシュしてください。問題が解決しない場合は、サポートリクエストを作成してください。カスタマーポータルまたは Satellite Web UI からマニフェストを削除しないでください。削除すると、コンテンツホストのエンタイトルメントがすべて削除されます。
- コンテンツビューを使用して Capsule Server のベースオペレーティングシステムへの更新を制御する場合、それらのコンテンツビューを新しいリポジトリーで更新し、更新済みのバージョンを公開して、プロモートします。詳細は、Content Management Guide の Managing Content Views を参照してください。
3.3. Capsule Server のアップグレード
このセクションは、Capsule Server を 6.10 から 6.11 にアップグレードする方法を説明します。
作業開始前の準備
- Capsule Server をアップグレードする前に、Satellite Server をアップグレードする必要があります。Capsule は、Satellite とは別にアップグレードできます。詳細は、「Satellite とは別の Capsule のアップグレード」 を参照してください。
- Red Hat Satellite Capsule 6.11 リポジトリーが Satellite Server で有効になっており、同期されていることを確認します。
- Satellite Server 上の必要なリポジトリーを必ず同期してください。詳細は、「新しいリポジトリーの同期」 を参照してください。
- コンテンツビューを使用して Capsule Server のベースオペレーティングシステムへの更新を制御する場合、そのコンテンツビューを新しいリポジトリーで更新し、更新済みのバージョンを公開して、プロモートします。詳細は、Content Management Guide の Managing Content Views を参照してください。
- 新たにアップグレードした Satellite Server に、Capsule のベースシステムが登録されていることを確認します。
- 新たにアップグレードした Satellite Server で、Capsule の組織と場所が正しく設定されていることを確認します。
- Capsule Server をアップグレードする前に、ファイアウォールの設定を確認して更新してください。詳細については、Capsule Server のインストール の Capsule インストールのための環境準備 を参照してください。
カスタムの証明書を実装している場合は、/root/ssl-build
ディレクトリーと、カスタム証明書に関連するソースファイルを作成したディレクトリーのコンテンツを保持する必要があります。
アップグレード時にこのファイルを保持できないと、アップグレードは失敗します。ファイルを削除してしまった場合は、アップグレードを進めるためにバックアップから復元する必要があります。
Capsule Server のアップグレード
バックアップを作成します。
- 仮想マシンで、スナップショットを作成します。
物理マシンで、バックアップを作成します。
バックアップに関する詳細は、Administering Red Hat Satellite 6.10 ガイドの Backing Up Satellite Server and Capsule Server を参照してください。
Satellite Server で証明書を再生成します。
デフォルトの証明書を使用する Capsule の証明書を再生成します。
ロードバランシングを使用しない Capsule Server の場合:
# capsule-certs-generate --foreman-proxy-fqdn "_capsule.example.com_" \ --certs-update-all \ --certs-tar "~/_capsule.example.com-certs.tar_"
負荷分散されている Capsule Server の場合:
# capsule-certs-generate --foreman-proxy-fqdn "_capsule.example.com_" \ --certs-update-all \ --foreman-proxy-cname "_load-balancer.example.com_" \ --certs-tar "~/_capsule.example.com-certs.tar_"
カスタム証明書を使用する Capsule の証明書を再生成します。
ロードバランシングを使用しない Capsule Server の場合:
# capsule-certs-generate --foreman-proxy-fqdn "_capsule.example.com_" \ --certs-tar "~/_capsule.example.com-certs.tar_" \ --server-cert "/root/capsule_cert/_capsule_cert.pem_" \ --server-key "/root/capsule_cert/_capsule_cert_key.pem_" \ --server-ca-cert "/root/capsule_cert/_ca_cert_bundle.pem_" \ --certs-update-server
負荷分散されている Capsule Server の場合:
# capsule-certs-generate --foreman-proxy-fqdn "_capsule.example.com_" \ --certs-tar "~/_capsule.example.com-certs.tar_" \ --server-cert "/root/capsule_cert/_capsule_cert.pem_" \ --server-key "/root/capsule_cert/_capsule_cert_key.pem_" \ --server-ca-cert "/root/capsule_cert/_ca_cert_bundle.pem_" \ --foreman-proxy-cname "_load-balancer.example.com_" \ --certs-update-server
認証局によって署名されたカスタム SSL 証明書の詳細については、Capsule Server のインストール の カスタムの SSL 証明書の Capsule Server へのデプロイ を参照してください。
-
作成される tarball を Capsule にコピーします。ロケーションは、インストーラーが期待するものと一致する必要があります。これを確認するには、Capsule で
grep tar_file /etc/foreman-installer/scenarios.d/capsule-answers.yaml
を使用します。 yum のキャッシュを消去します。
# yum clean metadata
Capsule が
rhel-7-server-satellite-maintenance-6.11-rpms
にアクセスできることを確認し、satellite-maintain を更新します。# subscription-manager repos --enable rhel-7-server-satellite-maintenance-6.11-rpms # yum --disableplugin=foreman-protector update rubygem-foreman_maintain satellite-maintain
Capsule Server で
foreman_url
設定が Satellite FQDN を参照していることを確認します。# grep foreman_url /etc/foreman-proxy/settings.yml
利用可能なバージョンを確認して、希望のバージョンが表示されていることを確認します。
# satellite-maintain upgrade list-versions
アップグレードには時間がかかるため、
tmux
などのユーティリティーを使用して、通信セッションを一時停止し、再接続してください。これにより、コマンドシェルに接続し続けなくてもアップグレードの進捗が確認できるようになります。アップグレードコマンドを実行しているコマンドシェルへの接続がなくなった場合は、
/var/log/foreman-installer/capsule.log
ファイルのログメッセージで、プロセスが完全に終了したかどうかを確認できます。ヘルスチェックオプションを使用して、システムがアップグレードの準備ができているかどうかを確認します。
# satellite-maintain upgrade check --target-version 6.11
結果を確認し、アップグレードを実行する前に、強調表示されているエラー状態に対応します。
アップグレードを実行します。
# satellite-maintain upgrade run --target-version 6.11
カーネルパッケージが最後に更新された日時を確認します。
# rpm -qa --last | grep kernel
オプション: カーネルを更新してから再起動していない場合には、システムを再起動します。
# reboot
- オプション: DNS または DHCP 設定ファイルを手動で編集した場合には、以前に作成したバックアップを使用して、DNS と DHCP の設定ファイルに必要なすべての変更を確認し、復元します。
- オプション: カスタムリポジトリーを使用する場合は、アップグレードの完了後にそのカスタムリポジトリーを必ず有効にしてください。
3.4. コンテンツホストのアップグレード
Satellite Client 6 リポジトリーには、エラータを管理するための通信サービスを提供する katello-agent
および katello-host-tools
が含まれます。
Katello エージェントは非推奨で、今後の Satellite のバージョンで削除されます。ワークロードを移行して、リモート実行機能を使用してクライアントをリモートで更新します。詳細は、Managing Hosts Guide の Migrating from Katello Agent to Remote Execution を参照してください。
katello-agent
および goferd を使用したデプロイメントの場合は、すべてのクライアントを katello-agent
の新しいバージョンに更新します。katello-agent
および goferd を使用しないデプロイメントの場合は、すべてのクライアントを katello-host-tools
の新しいバージョンに更新します。お使いのクライアントが Satellite Server との互換性を完全に確保できるように、できるだけ早くこの作業を完了してください。
前提条件
- Satellite Server がアップグレードされている。
- Satellite で、新しい Satellite Client 6 リポジトリーを有効にしておく。
- Satellite で、新しいリポジトリーを同期しておく。
-
以前にクライアントに
katello-agent
をインストールしたことがなく、インストールする場合は、手動の方法を使用する。詳細は、CLI 手順 を参照してください。
カスタムの証明書を実装している場合は、/root/ssl-build
ディレクトリーと、カスタム証明書に関連するソースファイルを作成したディレクトリーのコンテンツを保持する必要があります。
アップグレード時にこのファイルを保持できないと、アップグレードは失敗します。ファイルを削除してしまった場合は、アップグレードを進めるためにバックアップから復元する必要があります。
手順
- Satellite Web UI で、ホスト > コンテンツホスト に移動し、アップグレードするコンテンツホストを選択します。
- アクションの選択 リストから リポジトリーセットの管理 を選択します。
- Repository Sets Management リストから、Red Hat Satellite Tools 6.10 のチェックボックスを選択します。
- アクションの選択 リストから Override to Disabled (無効に上書き) を選択し、Done (完了) をクリックします。
- プロセスが完了したら、以前の手順で使用した同じホストセットの アクションの選択 リストから、リポジトリーセットの管理 を選択します。
- Repository Sets Management リストから、Red Hat Satellite Client 6 のチェックボックスを選択します。
- アクションの選択 リストから Override to Enabled (有効に上書き) を選択し、Done (完了) をクリックします。
- プロセスが完了したら、以前の手順で使用した同じホストセットの アクションの選択 リストから、パッケージの管理 を選択します。
パッケージ 検索フィールドに、設定に応じて以下のいずれかのオプションを入力します。
-
お使いのデプロイメントで
katello-agent
および goferd を使用する場合は、katello-agent
と入力します。 -
お使いのデプロイメントで
katello-agent
および goferd を使用しない場合は、katello-host-tools
と入力します。
-
お使いのデプロイメントで
- Update リストから、via remote execution オプションを選択する必要があります。Katello エージェントを使用してパッケージを更新すると、これによりクライアントと Satellite または Capsule Server 間の通信が中断され、更新が失敗することから、リモート実行経由の選択が必要です。詳細は、Managing Hosts の Configuring and Setting Up Remote Jobs を参照してください。
CLI 手順
- クライアントシステムにログインします。
以前のバージョンの Satellite のリポジトリーを無効にします。
# subscription-manager repos \ --disable rhel-7-server-satellite-tools-6.10-rpms
このバージョンの Satellite に対して Satellite Client6 リポジトリーを有効にします。
# subscription-manager repos \ --enable=rhel-7-server-satellite-client-6-rpms
お使いの設定に応じて、以下のいずれかの手順を実行します。
お使いのデプロイメントで
katello-agent
および goferd を使用する場合は、以下のコマンドを入力してkatello-agent
をインストールまたはアップグレードします。# yum install katello-agent
お使いのデプロイメントで
katello-agent
および goferd を使用しない場合は、以下のコマンドを入力してkatello-host-tools
をインストールまたはアップグレードします。# yum install katello-host-tools
3.5. 外部データベースのアップグレード
Satellite を 6.10 から 6.11 にアップグレードする際に、外部データベースを Red Hat Enterprise Linux 7 から Red Hat Enterprise Linux 8 にアップグレードできます。
前提条件
- Red Hat Enterprise Linux 8 の外部データベースに関するドキュメントに従って、PostgreSQL サーバー用の新しい Red Hat Enterprise Linux 8 ベースのホストを作成する。詳細は、Satellite で外部データベースの使用 を参照してください。
手順
- バックアップを作成します。
- 新しいサーバーでバックアップを復元します。
Satellite が古い名前で新しいデータベースサーバーに到達する場合、それ以上の変更は必要ありません。それ以外の場合は、Satellite を再設定して新しい名前を使用します。
# satellite-installer \ --foreman-db-host newpostgres.example.com \ --katello-candlepin-db-host newpostgres.example.com \ --foreman-proxy-content-pulpcore-postgresql-host newpostgres.example.com
3.6. アップグレード後のタスクの実行
本セクションで紹介する手順の一部はオプションです。お使いのインストールに関連する手順のみを選択できます。
3.6.1. Discovery のアップグレード
PXE ベースの検出プロセスを使用する場合には、Satellite の ホスト > 検出されたホスト ページに表示させるホストで、Satellite または Capsule Server 上で Discovery アップグレードの手順を実行する必要があります。
このセクションでは、PXE ブートを使用して Satellite Server に登録するホストに渡した PXELinux テンプレートとブートイメージを更新する方法を説明します。
Satellite 6.11 以降、プロビジョニングテンプレートには別途サブネットが関連付けられるので、対象のサブネットに対して TFTP Capsule を使用するように初期設定しないようにしてください。アップグレード後にサブネットを作成する場合には、特に Satellite また Capsule が Discovery テンプレートにプロキシーサービスを提供できるようにしてから、テンプレート Capsule を使用するように、検出されたホストで全ホストを設定する必要があります。
アップグレード中は、TFTP プロキシーが設定された各サブネットが有効化されている場合には、テンプレート Capsule を TFTP Capsule と同じに設定してください。アップグレード後には、すべてのサブネットでこれが正しく設定されていることを確認してください。
ホストで PXE ブートを使用しない場合には、Satellite に新規ホストを検出させるために、これらの手順は、必要ありません。
関連情報
Discovery サービスの設定に関する詳細は、ホストの プロビジョニング の Discovery サービスの設定 を 参照してください。
3.6.1.1. Satellite Server での Discovery のアップグレード
Satellite Web UI で Discovery テンプレートを更新します。
- Satellite Web UI で、Hosts > Provisioning templates に移動します。
-
PXELinux global default
行で クローン をクリックします。 -
名前 フィールドに、テンプレートの新しい名前を入力します (例:
ACME PXE global default
)。 -
テンプレートエディターフィールドで、
ONTIMEOUT local
行をONTIMEOUT discovery
に変更し、送信 をクリックします。 - Satellite Web UI で、Administer > Settings に移動します。
-
Provisioning タブで、
Default PXE global template entry
を環境のカスタム値に設定します。 -
Global default PXELinux template
の 値 をクリックします。 - メニューから新しく作成したテンプレートの名前を選択し、Submit をクリックします。
- Satellite Web UI で、Hosts > Provisioning templates に移動します。
- PXE デフォルトのビルド をクリックして、OK をクリックします。
注記テンプレートが変更された場合、Satellite のアップグレードによってテンプレートがデフォルトバージョンに上書きされます。PXE デフォルト設定が構築されると、Settings で設定されたテンプレートが TFTP にデプロイされます。これにより、新しいテンプレートが Settings で正しく設定されている場合、デフォルトのテンプレートがデプロイされる可能性があります。
- Satellite Web UI で Configure > Discovery Rules に移動し、選択した組織および場所を検出ルールに関連付けます。
3.6.2. Capsule Server での Discovery のアップグレード
Satellite Server で、Foreman Discovery パッケージが最新であることを確認します。
# satellite-maintain packages install tfm-rubygem-foreman_discovery
以前の手順で更新が行われた場合には、
satellite-maintain
サービスを再起動します。# satellite-maintain service restart
検出されたホストでプロビジョニングネットワークに接続した Satellite Capsule の Discovery イメージ、または検出されたホストに TFTP サービスを提供する Satellite Capsule の Discovery イメージをアップグレードします。
# satellite-maintain packages install foreman-discovery-image
同じインスタンスに、Proxy サービスを提供するパッケージをインストールして、
foreman-proxy
サービスを再起動します。# satellite-maintain packages install tfm-rubygem-smart_proxy_discovery # service foreman-proxy restart
- Satellite Web UI で、インフラストラクチャー > Capsule に移動して、関連する Capsule の機能コラムに Discovery が表示されていることを確認します。必要に応じて、アクション ドロップダウンメニューから リフレッシュ を選択します。
インフラストラクチャー > サブネット に移動し、検出を使用する各サブネットで以下を行います。
- サブネット名をクリックします。
- Capsule タブで、上で設定した Capsule に Discovery Capsule が設定されているのを確認します。
3.6.2.1. サブネットにテンプレート Capsule があることの確認
テンプレート機能が環境で有効にされている場合には、検出されたホストが含まれる全サブネットにテンプレート Capsule があることを確認します。
- Satellite Web UI で、Infrastructure > Subnets に移動します。
- 確認するサブネットを選択します。
- Capsule タブで、テンプレート Capsule が、このサブネットに設定されていることを確認します。
テンプレート Capsules によるサブネットの設定の詳細は、Provisioning ガイドの Configuring the Discovery Service を参照してください。
3.6.3. virt-who のアップグレード
Satellite Server または Capsule Server に virt-who がインストールされている場合は、Satellite Server または Capsule Server のアップグレード時に一緒にアップグレードされるため、追加の作業は必要ありません。これ以外の作業は必要ありません。virt-who を他の場所にインストールしている場合は、手動でアップグレードする必要があります。
作業開始前の準備
Satellite Server または Capsule Server に登録しているホストに virt-who がインストールされている場合は、最初にホストを Satellite Client 6 リポジトリーで利用可能な最新パッケージにアップグレードします。ホストのアップグレードに関する詳細は、「コンテンツホストのアップグレード」 を参照してください。
virt-who の手動アップグレード
virt-who をアップグレードします。
# yum upgrade virt-who
virt-who サービスを再起動して、新しいバージョンを有効にします。
# systemctl restart virt-who.service
3.6.4. 以前のバージョンの Satellite Tools リポジトリーの削除
Satellite 6.11 へのアップグレードが完了したら、コンテンツビューから Red Hat Satellite Tools 6.10 リポジトリーを削除して、無効にすることができます。
バージョン 6.10 の Satellite Tools リポジトリーを無効にします。
- Satellite Web UI で、コンテンツ > Red Hat リポジトリー に移動します。
- Enabled Repositories エリアで、Red Hat Satellite Tools 6.10 for RHEL 7 Server RPMs x86_64 を探します。
- 右側の 無効化 アイコンをクリックします。
リポジトリーがまだコンテンツビューに含まれている場合には、無効にできません。スケジュールされているタスクにより、無効にされたリポジトリーからパッケージが自動的に削除されます。
3.6.5. Ansible コンテンツの移行
Red Hat Enterprise Linux 7 から Red Hat Enterprise Linux 8 へのアップグレードには、Ansible Engine 2.9 から Ansible Core 2.12 へのアップグレードが含まれます。
Playbook、REX 内のジョブテンプレート、ディスク上のロールおよびコレクションなどのカスタム Ansible コンテンツがあり、Satellite 上の Ansible RPM によって配信されるモジュールに依存している場合は、Ansible インストールを適応させるか、Ansible コンテンツを移行するために追加の手順を実行する必要があります。
Ansible Core には必須モジュールのみが含まれています。FQCN 表記 namespace.collection.module
に関しては、ansible.builtin.*
を引き続き使用できますが、それ以外のものは Ansible Core にはありません。つまり、以前のように非組み込みの Ansible モジュールを使用できなくなるため、最終的には別のソースから入手する必要があります。
アップグレード後に Ansible コンテンツを処理するには、次のオプションがあります。
Ansible Galaxy から必須ではない機能を提供する、コミュニティーが管理する追加のコレクションを取得できます。詳細は、Galaxy User Guide の Installing collections を参照してください。
Red Hat はこのコンテンツへのサポートを提供していない点に注意してください。
-
Red Hat Automation Hub のサブスクリプションをお持ちの場合は、
ansible-galaxy
を設定して Automation Hub サーバーと通信し、そこからコンテンツをダウンロードできます。そのコンテンツは Red Hat によってサポートされています。ansible-galaxy
の Automation Hub 接続の設定に関する詳細は、コンテンツの主なソースとして Red Hat Automation Hub を設定 を参照してください。 - Ansible ロール、テンプレート、およびその他の影響を受けるコンテンツを書き換えることができます。Red Hat は、お客様が独自に維持するコンテンツへのサポートを提供していない点に注意してください。
外部の Ansible Galaxy サーバーに接続していない Capsule に Ansible コンテンツをダウンロードしてインストールする場合は、Capsule の設定で Ansible Galaxy サーバーの URL を直接使用するのではなく、Satellite Server を介してコンテンツを渡す必要があります。
- Ansible Galaxy サーバーからのコンテンツを、Satellite Server のカスタムリポジトリーに同期します。
- Capsule で Ansible を設定して、Satellite Server からコンテンツをダウンロードします。
3.6.6. PostgreSQL 領域の確保
PostgreSQL データベースは、特に負荷の高いデプロイメントにおいて、大容量のディスク領域を使用できます。Satellite でこのディスク領域の一部を回収するには、この手順を使用します。
手順
postgresql
サービス以外の全サービスを停止します。# satellite-maintain service stop --exclude postgresql
postgres
ユーザーに切り替えて、データベースの領域を回収します。# su - postgres -c 'vacuumdb --full --all'
Vacuum が完了したら、他のサービスを開始します。
# satellite-maintain service start
3.6.7. テンプレート、パラメーター、ルックアップキーおよび値の更新
アップグレードプロセスで、Satellite は Satellite 6.11 で非推奨となったマクロの場所を特定し、デフォルトの Satellite テンプレート、パラメーター、ルックアップキーおよび値の以前の構文を新しい構文に変換します。ただし、Satellite は、クローンされたテンプレートや、作成したカスタムジョブまたはプロビジョニングテンプレートに含まれる以前の構文は変換しません。
このプロセスは、以下のような単純なテキスト置換を使用します。
@host.params['parameter1'] -> host_param('parameter1') @host.param_true?('parameter1') -> host_param_true?('parameter1') @host.param_false?('parameter1') -> host_param_false?('parameter1') @host.info['parameters'] -> host_enc['parameters']
Satellite で複製されたテンプレートを使用する場合、複製されたテンプレートが Satellite の元のテンプレートの最新バージョンと異なるかどうかを確認します。同じテンプレートの構文は、Satellite のバージョンによって異なる場合があります。複製されたテンプレートに古い構文が含まれている場合は、テンプレートの最新バージョンに一致するように構文を更新します。
アップグレード中に、このテキスト置換でファイルの変数を破損したり、省略したりしないように、以前の構文のテンプレート、パラメーター、ルックアップキーおよび値のすべてを確認して、手動で置き換えます。
以下のエラーは、アップグレード後にファイル内に以前の構文が残っていることが原因で発生します。
undefined method '#params' for Host::Managed::Jail
Fixing the outdated subscription_manager_registration snippet
Satellite 6.4 以降では、subscription_manager_registration
スニペットの代わりに redhat_register
スニペットを使用します。
Satellite 6.3 以前からアップグレードする場合は、以下のようにカスタムジョブまたはプロビジョニングテンプレートの subscription_manager_registration
スニペットを置き換える必要があります。
<%= snippet "subscription_manager_registration" %> ↓ <%= snippet 'redhat_register' %>
3.6.8. 事前定義済みプロファイルを使用した Satellite Server の調整
Satellite のデプロイメントに 5000 台を超えるホストが含まれる場合には、事前定義済みの tuning プロファイルを使用して Satellite のパフォーマンスを向上できます。
Capsule では tuning プロファイルを使用できない点に注意してください。
Satellite が管理するホストの数と利用可能なハードウェアリソースに応じて、プロファイルの 1 つを選択できます。
tuning プロファイルは、/usr/share/foreman-installer/config/foreman.hiera/tuning/sizes
ディレクトリーにあります。
--tuning
オプションを指定して satellite-installer
コマンドを実行した場合には、デプロイメント設定が以下の順番で Satellite Server に適用されます。
-
/usr/share/foreman-installer/config/foreman.hiera/tuning/common.yaml
ファイルで定義したデフォルトの tuning プロファイル -
/usr/share/foreman-installer/config/foreman.hiera/tuning/sizes/
ディレクトリーで定義され、デプロイメントに適用する tuning プロファイル -
オプション:
/etc/foreman-installer/custom-hiera.yaml
ファイルを設定した場合、Satellite はこれらの設定を適用します。
/etc/foreman-installer/custom-hiera.yaml
ファイルで定義した設定は、tuning プロファイルで定義した設定を上書きすることに注意してください。
したがって、tuning プロファイルを適用する前に、/usr/share/foreman-installer/config/foreman.hiera/tuning/common.yaml
のデフォルトの tuning プロファイルに定義されている設定、適用する tuning プロファイル、および /etc/foreman-installer/custom-hiera.yaml
ファイルを比較して、重複する設定内容を /etc/foreman-installer/custom-hiera.yaml
ファイルから削除する必要があります。
- default
管理対象ホスト数: 0 – 5000
RAM: 20G
CPU コア数: 4
- medium
管理対象ホスト数: 5001 – 10000
RAM: 32G
CPU コア数: 8
- large
管理対象ホスト数: 10001 – 20000
RAM: 64G
CPU コア数: 16
- extra-large
管理対象ホスト数: 20001 – 60000
RAM: 128G
CPU コア数: 32
- extra-extra-large
マネージドホスト数: 60000+
RAM: 256G
CPU コア数: 48+
手順
オプション: Satellite Server で、
custom-hiera.yaml
ファイルを設定した場合、/etc/foreman-installer/custom-hiera.yaml
ファイルをcustom-hiera.original
にバックアップします。/etc/foreman-installer/custom-hiera.yaml
ファイルが破損した場合には、バックアップファイルを使用して、ファイルを元の状態に戻します。# cp /etc/foreman-installer/custom-hiera.yaml \ /etc/foreman-installer/custom-hiera.original
-
オプション: Satellite Server で
custom-hiera.yaml
ファイルを設定した場合、/usr/share/foreman-installer/config/foreman.hiera/tuning/common.yaml
のデフォルト tuning プロファイルの定義と、/usr/share/foreman-installer/config/foreman.hiera/tuning/sizes/
に適用する tuning プロファイルを確認します。/etc/foreman-installer/custom-hiera.yaml
ファイルの設定内容と比較して、/etc/foreman-installer/custom-hiera.yaml
ファイルで重複設定を削除します。 適用するプロファイルに対して、
--tuning
オプションを指定してsatellite-installer
コマンドを入力します。たとえば、medium tuning プロファイル設定を適用するには、以下のコマンドを入力します。# satellite-installer --tuning medium
第4章 Leapp を使用した Satellite または Capsule の Red Hat Enterprise Linux 8 へのインプレースアップグレード
以下の手順を使用して、Satellite または Capsule のインストールを Red Hat Enterprise Linux 7 から Red Hat Enterprise Linux 8 にアップグレードします。
前提条件
- Red Hat Enterprise Linux 7 で実行している Satellite 6.11 または Capsule 6.11
- アップグレードを開始する前に、既知の問題を確認してください。詳細は、Red Hat Satellite 6.11 での既知の問題 を参照してください。
-
これまでに Satellite または Capsule を以前のバージョンからアップグレードし、
/var/lib/pgsql
に、PostgreSQL 9 から PostgreSQL 12 に移行する前に SCL からの PostgreSQL データベースコンテンツが含まれていた場合には、/var/lib/pgsql
を空にしてから続行します。 -
アップグレード中に、PostgreSQL データは
/var/opt/rh/rh-postgresql12/lib/pgsql/data/
から/var/lib/pgsql/data/
に移動されます。これら 2 つのパスが同じパーティションに存在する場合、これ以上のアクションは必要ありません。それらが異なるパーティションに存在する場合は、データをコピーするための十分なスペースがあることを確認してください。PostgreSQL データは独自に移動することができます。この手順は、/var/opt/rh/rh-postgresql12/lib/pgsql/data/
が存在しない場合、アップグレードでスキップされます。
非接続環境の前提条件
非接続環境で Satellite を実行する場合は、次の前提条件も満たしていることを確認してください。
- Leapp メタデータを手動で取得してデプロイメントする必要があります。詳細は、非接続アップグレードのための RHEL の Leapp ユーティリティーメタデータのインプレースアップグレード を参照してください。
- Red Hat Enterprise Linux および Satellite パッケージへのアクセスが必要です。Red Hat Enterprise Linux 8 および Satellite の ISO ファイルを取得してください。詳細は、「接続されていない Satellite Server のアップグレード」 を参照してください。
- 環境に合わせて Leapp アップグレードをカスタマイズする方法の詳細は 、Red Hat Enterprise Linux インプレースアップグレードのカスタマイズ を参照してください。
- Leapp は、追加の ISO マウントにアクセスできないコンテナーで行われるアップグレードの一部を完了するので、リポジトリーは、ローカルでマウントされた ISO から提供でませんが、別のマシンからネットワーク経由で提供する必要があります。
- 詳細は、オフライン/非接続の RHEL 7 マシンを Leapp を使用して RHEL 8 にインプレースアップグレードする方法 を参照してください。
- Satellite は、DEFAULT および FIPS 暗号化ポリシーをサポートしています。FUTURE 暗号化ポリシーは、Satellite および Capsule のインストールではサポートされていません。
- FIPS モードでの Red Hat Enterprise Linux システムのインプレースアップグレードは、Red Hat ではサポートされていません。FIPS をオフにし、Red Hat Enterprise Linux 7 から Red Hat Enterprise Linux 8 にアップグレードすると、FIPS の有効化もサポートされません。代わりに、FIPS モードが有効な状態で、Satellite 6.11 を新規インストールした Red Hat Enterprise Linux 8 システムに移行します。詳細は、5章Satellite を新しい Red Hat Enterprise Linux システムに移行する を参照してください。
手順
Leapp を取得するようにリポジトリーを設定します。
Red Hat Enterprise Linux で、
rhel-7-server-extras-rpms
リポジトリーを有効にします。# subscription-manager repos --enable=rhel-7-server-extras-rpms
必要なパッケージをインストールします。
# satellite-maintain packages install leapp leapp-repository
- Leapp が非接続環境でアップグレードを実行するには、Leapp utility metadata in-place upgrades of RHEL for disconnected upgrades で説明されているように、メタデータをダウンロードして手動で抽出します。
非接続環境でアップグレードを実行するには、次のリポジトリーを設定します。
/etc/yum.repos.d/rhel8.repo
:[BaseOS] name=rhel-8-for-x86_64-baseos-rpms baseurl=http://server.example.com/rhel8/BaseOS/ [AppStream] name=rhel-8-for-x86_64-appstream-rpms baseurl=http://server.example.com/rhel8/AppStream/
/etc/yum.repos.d/satellite.repo:
[satellite-6.11-for-rhel-8-x86_64-rpms] name=satellite-6.11-for-rhel-8-x86_64-rpms baseurl=http://server.example.com/sat6/Satellite/ [satellite-maintenance-6.11-for-rhel-8-x86_64-rpms] name=satellite-maintenance-6.11-for-rhel-8-x86_64-rpms baseurl=http://server.example.com/sat6/Maintenance/
Tomcat パッケージを維持し、アップグレードに失敗しないよう Leapp を設定します。
# echo tomcat >> /etc/leapp/transaction/to_keep # echo tomcat-lib >> /etc/leapp/transaction/to_keep
Leapp にシステムを分析させましょう:
# leapp preupgrade
非接続環境で Satellite を実行する場合は、
--no-rhsm
および--enablerepo
パラメーターを追加します。# leapp preupgrade \ --no-rhsm \ --enablerepo BaseOS \ --enablerepo AppStream \ --enablerepo satellite-6.11-for-rhel-8-x86_64-rpms \ --enablerepo satellite-maintenance-6.11-for-rhel-8-x86_64-rpms
最初の実行は失敗することが想定されていますが、問題を報告してアップグレードが行われません。
/var/log/leapp/leapp-report.txt
ファイルのレポートを調べ、すべての質問に回答し (leapp answer
を使用)、報告された他の問題を手動で解決します。次のコマンドは、必要な最も一般的な手順を示しています。
# rmmod pata_acpi # echo PermitRootLogin yes | tee -a /etc/ssh/sshd_config # leapp answer --section remove_pam_pkcs11_module_check.confirm=True
従来の名前が指定されたネットワークインターフェイスが複数あることが原因で
leapp preupgrade
により Unsupported network configuration でアップグレードできない場合には、Leapp で示される指示に従い、インターフェイスの名前を変更してから、インストーラーで Satellite または Capsule で新しいインターフェイス名が使用されるように再設定します。# satellite-installer --help |grep 'interface.*eth' --foreman-proxy-dhcp-interface DHCP listen interface (current: "eth0") --foreman-proxy-dns-interface DNS interface (current: "eth0")
eth0
の名前がem0
に変更されている場合は、インストーラーを呼び出して新しいインターフェイス名を使用します。# satellite-installer --foreman-proxy-dhcp-interface=em0 --foreman-proxy-dns-interface=em0
-
leapp preupgrade
に問題がないことを確認します。 以下を実行します。
# leapp upgrade
非接続環境で Satellite を実行する場合は、
--no-rhsm
および--enablerepo
パラメーターを追加します。# leapp upgrade \ --no-rhsm \ --enablerepo BaseOS \ --enablerepo AppStream \ --enablerepo satellite-6.11-for-rhel-8-x86_64-rpms \ --enablerepo satellite-maintenance-6.11-for-rhel-8-x86_64-rpms
システムを再起動します。
システムが再起動した後、ライブシステムがアップグレードを実行し、再起動して SELinux ラベルを修正してから、最終的な Red Hat Enterprise Linux 8 システムで再起動します。
Leapp はアップグレードを終了し、次のように監視します。
# journalctl -u leapp_resume -f
RHEL 7 から RHEL 8 へのアップグレード の次の手順を完了します。
パッケージのロック解除:
# satellite-maintain packages unlock
- RHEL 8 システムのアップグレード後の状態の確認
- アップグレード後のタスクの実行
ロックパッケージ:
# satellite-maintain packages lock
Capsule ではなく、Satellite のみで、SELinux を enforcing モードにする必要がある場合は、SELinux を enforcing モードに変更する前に、以下のコマンドを実行します。
# dnf reinstall foreman-selinux katello-selinux --disableplugin=foreman-protector
- RHEL 7 から RHEL 8 へのアップグレード ガイドの SELinux モードの enforcing への変更 で説明されている SELinux を enforcing モードに変更する手順を完了します。
subscription-manager
リリースの設定を解除します。# subscription-manager release --unset
第5章 Satellite を新しい Red Hat Enterprise Linux システムに移行する
Satellite の移行は、Satellite Server と Capsule のバックアップを作成し、新しいインスタンスをインストールして、新しいインスタンスでバックアップを復元する方法です。移行が完了したら、Satellite Server と Capsule の以前のインスタンスを廃止できます。
用語
次の用語を理解するようにしてください。
- ソースサーバー
- バックアップを作成する移行の起点。
- ターゲットサーバー
- バックアップを復元する新しいサーバー。
高レベルの手順
Satellite を新しいハードウェアに移行するには、次の高レベルの手順に従います。
- ソースサーバー上に Satellite Server または Capsule Server のバックアップを作成します。
ターゲットサーバーに Satellite Server または Capsule Server の新規インストールを実行します。
- バックアップファイルを保存できる最小限の Red Hat Enterprise Linux 8 インスタンスをインストールします。
オペレーティングシステムのソフトウェアグループやサードパーティーのアプリケーションをインストールしないでください。
詳細は、Performing a standard Red Hat Enterprise Linux installation を参照してください。
- ターゲットサーバーのバックアップを復元します。
5.1. Red Hat Enterprise Linux 7 でのサーバーのバックアップの作成
Red Hat Enterprise Linux8 システムに Satellite Server または Capsule Server の新規インストールを実行する前に、オフラインバックアップを作成して、Red Hat Enterprise Linux 7 システムに Satellite Server または Capsule Server データをバックアップします。
最近オフラインバックアップを作成した場合は、増分バックアップを実行して既存のバックアップを更新できます。
手順
ソースサーバーでバックアップを実行します。
- フルバックアップを実行するには、Administering Red Hat Satellite の Backing Up Satellite Server and Capsule Server を参照してください。
- 増分バックアップを実行するには、Administering Red Hat Satellite の Performing an Incremental Backup を参照してください。
5.2. Red Hat Enterprise Linux 8 でのサーバーの新規インストールの実行
ソースサーバーに Satellite Server または Capsule Server のバックアップを作成したら、ターゲットサーバーに Satellite Server または Capsule Server をインストールできます。
- 接続された SatelliteServer をインストールするには、Installing Satellite Server in a Connected Network Environment を参照してください。
- 切断された SatelliteServer をインストールするには、オフラインネットワーク環境での Satellite Server のインストール を参照してください。
- Capsule Server をインストールするには、Capsule Server のインストール を参照してください。
5.3. Red Hat Enterprise Linux 8 でのサーバーのバックアップの復元
ターゲットサーバーに Satellite Server または Capsule Server の新規インストールを実行した後、以前に作成したバックアップを復元できます。
手順
ターゲットサーバーのバックアップを復元します。
- フルバックアップを復元するには、Administering Red Hat Satellite の Restoring From a Full Backup を参照してください。
- 増分バックアップを復元するには、Administering Red Hat Satellite の Restoring From Incremental Backups を参照してください。
データベースを再インデックス化します。
# runuser -u postgres -- reindexdb -a
第6章 Satellite Server と Capsule Server のアップグレード
本章を使用して、既存の Satellite Server と Capsule Server を、新しいパッチバージョンに更新します(例:6.11.0 から 6.11.1 へ)。
更新すると、コードの発表後に検出されたセキュリティー脆弱性およびマイナーな問題が修正されます。多くの場合、更新はすぐに終わり、稼働環境への影響はありません。
更新前に Satellite Server および全 Capsule Server をバックアップします。詳細は、Administering Red Hat Satellite ガイドの Backing Up Satellite Server and Capsule Server を参照してください。
6.1. Satellite Server の更新
前提条件
- Satellite、Capsule、および Satellite Client 6 の Satellite Server リポジトリーが同期されていることを確認する。
- 更新したリポジトリーを関連するすべてのコンテンツビューにプロモートして、外部 Capsule とコンテンツホストがそれぞれ更新できるようにしておく。
設定ファイルを手動で、または 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 Server の更新手順:
Satellite Maintenance リポジトリーが有効になっていることを確認します。
Red Hat Enterprise Linux 8 の場合:
# subscription-manager repos --enable \ satellite-maintenance-6.11-for-rhel-8-x86_64-rpms
Red Hat Enterprise Linux 7 の場合:
# subscription-manager repos --enable \ rhel-7-server-satellite-maintenance-6.11-rpms
利用可能なバージョンを確認して、次のマイナーバージョンがリストされていることを確認します。
# satellite-maintain upgrade list-versions
ヘルスチェックオプションを使用して、システムをアップグレードする準備ができているかどうかを判断します。このコマンドを最初に使用したときに、
satellite-maintain
により hammer 管理者ユーザー認証情報を入力して、/etc/foreman-maintain/foreman-maintain-hammer.yml
ファイルに保存します。# satellite-maintain upgrade check --target-version 6.11.z
結果を確認し、アップグレードを実行する前に、強調表示されているエラー状態に対応します。
アップグレードに時間がかかるため、
tmux
などのユーティリティーを使用して、通信セッションを一時停止し、再接続してください。これにより、コマンドシェルに接続し続けなくてもアップグレードの進捗が確認できるようになります。アップグレードコマンドが実行されているコマンドシェルへの接続が失われた場合は、ログに記録されたメッセージを
/var/log/foreman-installer/satellite.log
ファイルに表示して、プロセスが正常に完了したかどうかを確認できます。アップグレードを実行します。
# satellite-maintain upgrade run --target-version 6.11.z
カーネルパッケージが最後に更新された日時を確認します。
# rpm -qa --last | grep kernel
オプション: 最後の再起動以降にカーネルが更新された場合には、Satellite サービスを停止して、システムを再起動します。
# satellite-maintain service stop # reboot
6.2. 接続されていない Satellite Server の更新
このセクションでは、接続されている Satellite Server (CDN からのコンテンツを同期するサーバー) が、接続されていない Satellite Server からエアギャップで隔離されているエアギャップ非接続環境での更新に必要な手順について説明します。
6.2.1. Red Hat Enterprise Linux 8 でのオフラインの Satellite Server の更新
Red Hat Enterprise Linux 8 向けに接続された Satellite Server で以下の手順を実行します。
接続されている Satellite Server で次のリポジトリーが同期されていることを確認します。
rhel-8-for-x86_64-baseos-rpms rhel-8-for-x86_64-appstream-rpms satellite-6.11-for-rhel-8-x86_64-rpms satellite-maintenance-6.11-for-rhel-8-x86_64-rpms
-
組織のデバッグ証明書をダウンロードして、
/etc/pki/katello/certs/org-debug-cert.pem
など、選択した場所にローカルに保存します。詳細は、コンテンツの管理 の 組織のデバッグ証明書の作成 を参照してください。 /etc/yum.repos.d
の下に、次の内容の Yum 設定ファイル (satellite-disconnected.repo
など) を作成します。[rhel-8-for-x86_64-baseos-rpms] name=Red Hat Enterprise Linux 8 for x86_64 - BaseOS (RPMs) baseurl=https://satellite.example.com/pulp/content/My_Organization/Library/content/dist/rhel8/8/x86_64/baseos/os enabled=1 sslclientcert = /etc/pki/katello/certs/org-debug-cert.pem sslclientkey = /etc/pki/katello/certs/org-debug-cert.pem sslcacert = /etc/pki/katello/certs/katello-server-ca.crt sslverify = 1 [rhel-8-for-x86_64-appstream-rpms] name=Red Hat Enterprise Linux 8 for x86_64 - AppStream (RPMs) baseurl=https://satellite.example.com/pulp/content/My_Organization/Library/content/dist/rhel8/8/x86_64/appstream/os enabled=1 sslclientcert = /etc/pki/katello/certs/org-debug-cert.pem sslclientkey = /etc/pki/katello/certs/org-debug-cert.pem sslcacert = /etc/pki/katello/certs/katello-server-ca.crt sslverify = 1 [satellite-6.11-for-rhel-8-x86_64-rpms] name=Red Hat Satellite 6.11 for RHEL 8 RPMs x86_64 baseurl=https://satellite.example.com/pulp/content/My_Organization/Library/content/dist/layered/rhel8/x86_64/satellite/6.11/os enabled=1 sslclientcert = /etc/pki/katello/certs/org-debug-cert.pem sslclientkey = /etc/pki/katello/certs/org-debug-cert.pem sslcacert = /etc/pki/katello/certs/katello-server-ca.crt [satellite-maintenance-6.11-for-rhel-8-x86_64-rpms] name=Red Hat Satellite Maintenance 6.11 for RHEL 8 RPMs x86_64 baseurl=https://satellite.example.com/pulp/content/My_Organization/Library/content/dist/layered/rhel8/x86_64/sat-maintenance/6.11/os enabled=1 sslclientcert = /etc/pki/katello/certs/org-debug-cert.pem sslclientkey = /etc/pki/katello/certs/org-debug-cert.pem sslcacert = /etc/pki/katello/certs/katello-server-ca.crt sslverify = 1
-
設定ファイルの
sslclientcert
およびsslclientkey
の/etc/pki/katello/certs/org-debug-cert.pem
は、ダウンロードした組織のデバッグ証明書の場所に置き換えます。 -
お使いのデプロイメントに適した FQDN で
satellite.example.com
を更新します。 baseurl
内のMy_Organization
は、正しい組織ラベルに置き換えます。組織ラベルを取得するには、次のコマンドを入力します。# hammer organization list
reposync
コマンドを入力します。Red Hat Enterprise Linux 7 で実行されている Satellite Server の場合:
# reposync --delete --download-metadata -p ~/Satellite-repos -n \ -r rhel-8-for-x86_64-baseos-rpms \ -r rhel-8-for-x86_64-appstream-rpms \ -r satellite-6.11-for-rhel-8-x86_64-rpms \ -r satellite-maintenance-6.11-for-rhel-8-x86_64-rpms
Red Hat Enterprise Linux 8 で実行されている Satellite Server の場合:
# reposync --delete --download-metadata -p ~/Satellite-repos -n \ --repoid rhel-8-for-x86_64-baseos-rpms \ --repoid rhel-8-for-x86_64-appstream-rpms \ --repoid satellite-6.11-for-rhel-8-x86_64-rpms \ --repoid {RepoRHEL8ServerSatelliteMaintenanceProductVersion
これにより、接続された Satellite Server からリポジトリーのコンテンツがダウンロードされ、
~/Satellite-repos
ディレクトリーに保存されます。-
RPM がダウンロードされ、リポジトリーデータディレクトリーが
~/Satellite-repos
の各サブディレクトリーに生成されていることを確認します。 ディレクトリーの内容をアーカイブします。
# cd ~ # tar czf Satellite-repos.tgz Satellite-repos
-
生成された
Satellite-repos.tgz
ファイルを使用して、接続されていない Satellite Server でアップグレードします。
接続されていない Satellite Server で次の手順を実行します。
-
生成された
Satellite-repos.tgz
ファイルを、接続されていない Satellite Server にコピーします。 root
ユーザーがアクセスできる場所にアーカイブを展開します。次の例では、/root
が展開場所です。# cd /root # tar zxf Satellite-repos.tgz
/etc/yum.repos.d
の下に、次の内容の Yum 設定ファイル (satellite-disconnected.repo
など) を作成します。[rhel-8-for-x86_64-baseos-rpms] name=Red Hat Enterprise Linux 8 for x86_64 - BaseOS (RPMs) baseurl=file:///root/Satellite-repos/rhel-8-for-x86_64-baseos-rpms enabled=1 [rhel-8-for-x86_64-appstream-rpms] name=Red Hat Enterprise Linux 8 for x86_64 - AppStream (RPMs) baseurl=file:///root/Satellite-repos/rhel-8-for-x86_64-appstream-rpms enabled=1 [satellite-6.11-for-rhel-8-x86_64-rpms] name=Red Hat Satellite 6 for RHEL 8 Server RPMs x86_64 baseurl=file:///root/Satellite-repos/satellite-6.11-for-rhel-8-x86_64-rpms enabled=1 [satellite-maintenance-6.11-for-rhel-8-x86_64-rpms] name=Red Hat Satellite Maintenance 6 for RHEL 8 Server RPMs x86_64 baseurl=file:///root/Satellite-repos/satellite-maintenance-6.11-for-rhel-8-x86_64-rpms enabled=1
-
設定ファイルの
/root/Satellite-repos
は、展開先の場所に置き換えます。 利用可能なバージョンを確認して、次のマイナーバージョンがリストされていることを確認します。
# satellite-maintain upgrade list-versions
ヘルスチェックオプションを使用して、システムをアップグレードする準備ができているかどうかを判断します。このコマンドを最初に使用したときに、
satellite-maintain
により hammer 管理者ユーザー認証情報を入力して、/etc/foreman-maintain/foreman-maintain-hammer.yml
ファイルに保存します。# satellite-maintain upgrade check --whitelist="check-upstream-repository,repositories-validate" --target-version 6.11.z
- 結果を確認し、アップグレードを実行する前に、強調表示されているエラー状態に対応します。
アップグレードに時間がかかるため、
tmux
などのユーティリティーを使用して、通信セッションを一時停止し、再接続してください。これにより、コマンドシェルに接続し続けなくてもアップグレードの進捗が確認できるようになります。アップグレードコマンドが実行されているコマンドシェルへの接続が失われた場合は、ログに記録されたメッセージを
/var/log/foreman-installer/satellite.log
ファイルに表示して、プロセスが正常に完了したかどうかを確認できます。アップグレードを実行します。
# satellite-maintain upgrade run --whitelist="check-upstream-repository,repositories-validate" --target-version 6.11.z
カーネルパッケージが最後に更新された日時を確認します。
# rpm -qa --last | grep kernel
オプション: 最後の再起動以降にカーネルが更新された場合には、Satellite サービスを停止して、システムを再起動します。
# satellite-maintain service stop # reboot
6.2.2. Red Hat Enterprise Linux 7 でオフラインの Satellite Server の更新
Red Hat Enterprise Linux 7 向けに接続された Satellite Server で以下の手順を実行します。
接続されている Satellite Server で次のリポジトリーが同期されていることを確認します。
rhel-7-server-ansible-2.9-rpms rhel-7-server-rpms rhel-7-server-satellite-6.11-rpms rhel-7-server-satellite-maintenance-6.11-rpms rhel-server-rhscl-7-rpms
-
組織のデバッグ証明書をダウンロードして、たとえば
/etc/pki/katello/certs/org-debug-cert.pem
または選択した場所にローカルに保存します。 次のリポジトリー情報を使用して、
/etc/yum.repos.d
の下に Yum 設定ファイルを作成します。[rhel-7-server-ansible-2.9-rpms] name=Ansible 2.9 RPMs for Red Hat Enterprise Linux 7 Server x86_64 baseurl=https://satellite.example.com/pulp/content/My_Organization/Library/content/dist/rhel/server/7/$releasever/$basearch/ansible/2.9/os/ enabled=1 sslclientcert = /etc/pki/katello/certs/org-debug-cert.pem sslclientkey = /etc/pki/katello/certs/org-debug-cert.pem sslcacert = /etc/pki/katello/certs/katello-server-ca.crt sslverify = 1 [rhel-7-server-rpms] name=Red Hat Enterprise Linux 7 Server RPMs x86_64 baseurl=https://satellite.example.com/pulp/content/My_Organization/Library/content/dist/rhel/server/7/7Server/x86_64/os/ enabled=1 sslclientcert = /etc/pki/katello/certs/org-debug-cert.pem sslclientkey = /etc/pki/katello/certs/org-debug-cert.pem sslcacert = /etc/pki/katello/certs/katello-server-ca.crt sslverify = 1 [rhel-7-server-satellite-6.11-rpms] name=Red Hat Satellite 6 for RHEL 7 Server RPMs x86_64 baseurl=https://satellite.example.com/pulp/content/My_Organization/Library/content/dist/rhel/server/7/7Server/x86_64/satellite/6.11/os/ enabled=1 sslclientcert = /etc/pki/katello/certs/org-debug-cert.pem sslclientkey = /etc/pki/katello/certs/org-debug-cert.pem sslcacert = /etc/pki/katello/certs/katello-server-ca.crt [rhel-7-server-satellite-maintenance-6.11-rpms] name=Red Hat Satellite Maintenance 6 for RHEL 7 Server RPMs x86_64 baseurl=https://satellite.example.com/pulp/content/My_Organization/Library/content/dist/rhel/server/7/7Server/x86_64/sat-maintenance/6/os/ enabled=1 sslclientcert = /etc/pki/katello/certs/org-debug-cert.pem sslclientkey = /etc/pki/katello/certs/org-debug-cert.pem sslcacert = /etc/pki/katello/certs/katello-server-ca.crt sslverify = 1 [rhel-server-rhscl-7-rpms] name=Red Hat Software Collections RPMs for Red Hat Enterprise Linux 7 Server x86_64 baseurl=https://satellite.example.com/pulp/content/My_Organization/Library/content/dist/rhel/server/7/7Server/x86_64/rhscl/1/os/ enabled=1 sslclientcert = /etc/pki/katello/certs/org-debug-cert.pem sslclientkey = /etc/pki/katello/certs/org-debug-cert.pem sslcacert = /etc/pki/katello/certs/katello-server-ca.crt sslverify = 1
-
設定ファイルの
sslclientcert
およびsslclientkey
の/etc/pki/katello/certs/org-debug-cert.pem
は、ダウンロードした組織のデバッグ証明書の場所に置き換えます。 -
satellite.example.com
は、デプロイメントに合わせて、正しい FQDN で更新します。 baseurl
内のMy_Organization
は、正しい組織ラベルに置き換えます。組織ラベルを取得するには、次のコマンドを入力します。# hammer organization list
reposync
コマンドを入力します。# reposync --delete --download-metadata -p ~/Satellite-repos -n \ -r rhel-7-server-ansible-2.9-rpms \ -r rhel-7-server-rpms \ -r rhel-7-server-satellite-6.11-rpms \ -r rhel-7-server-satellite-maintenance-6.11-rpms \ -r rhel-server-rhscl-7-rpms
これにより、接続された Satellite Server からリポジトリーのコンテンツがダウンロードされ、ディレクトリー
~/Satellite-repos
に保存されます。Red Hat Enterprise Linux 7 のreposync
コマンドは、RPM をダウンロードしますが、Yum メタデータはダウンロードしません。このため、
Satellite-repos
の各サブディレクトリーでcreaterepo
を手動で実行する必要があります。createrepo
rpm がインストールされていることを確認してください。そうでない場合は、次のコマンドを使用してインストールします。# satellite-maintain packages install createrepo
次のコマンドを実行して、
~/Satellite-repos
の各サブディレクトリーにリポジトリーデータを作成します。 :# cd ~/Satellite-repos # for directory in */ do echo "Processing $directory" cd $directory createrepo . cd .. done
-
RPM がダウンロードされ、リポジトリーデータディレクトリーが
~/Satellite-repos
の各サブディレクトリーに生成されていることを確認します。 ディレクトリーの内容をアーカイブします。
# cd ~ # tar czf Satellite-repos.tgz Satellite-repos
-
生成された
Satellite-repos.tgz
ファイルを使用して、切断された Satellite Server でアップグレードします。
切断された Satellite Server で次の手順を実行します
-
生成された
Satellite-repos.tgz
ファイルを切断された Satellite Server にコピーします root
ユーザーがアクセスできる場所にアーカイブを展開します。次の例では、/root
が展開場所です。# cd /root # tar zxf Satellite-repos.tgz
次のリポジトリー情報を使用して、
/etc/yum.repos.d
の下に Yum 設定ファイルを作成します。[rhel-7-server-ansible-2.9-rpms] name=Ansible 2.9 RPMs for Red Hat Enterprise Linux 7 Server x86_64 baseurl=file:///root/Satellite-repos/rhel-7-server-ansible-2.9-rpms enabled=1 [rhel-7-server-rpms] name=Red Hat Enterprise Linux 7 Server RPMs x86_64 baseurl=file:///root/Satellite-repos/rhel-7-server-rpms enabled=1 [rhel-7-server-satellite-6.11-rpms] name=Red Hat Satellite 6 for RHEL 7 Server RPMs x86_64 baseurl=file:///root/Satellite-repos/rhel-7-server-satellite-6.11-rpms enabled=1 [rhel-7-server-satellite-maintenance-6.11-rpms] name=Red Hat Satellite Maintenance 6 for RHEL 7 Server RPMs x86_64 baseurl=file:///root/Satellite-repos/rhel-7-server-satellite-maintenance-6.11-rpms enabled=1 [rhel-server-rhscl-7-rpms] name=Red Hat Software Collections RPMs for Red Hat Enterprise Linux 7 Server x86_64 baseurl=file:///root/Satellite-repos/rhel-server-rhscl-7-rpms enabled=1
-
設定ファイルの
/root/Satellite-repos
は、展開先の場所に置き換えます。 利用可能なバージョンを確認して、次のマイナーバージョンがリストされていることを確認します。
# satellite-maintain upgrade list-versions
ヘルスチェックオプションを使用して、システムをアップグレードする準備が完了しているかどうかを確認します。このコマンドを最初に使用したときに、
satellite-maintain
により hammer 管理者ユーザー認証情報を入力して、/etc/foreman-maintain/foreman-maintain-hammer.yml
ファイルに保存します。# satellite-maintain upgrade check --whitelist="check-upstream-repository,repositories-validate" --target-version 6.11.z
- 結果を確認し、アップグレードを実行する前に、強調表示されているエラー状態に対応します。
アップグレードに時間がかかるため、
tmux
などのユーティリティーを使用して、通信セッションを一時停止し、再接続してください。これにより、コマンドシェルに接続し続けなくてもアップグレードの進捗が確認できるようになります。アップグレードコマンドを実行しているコマンドシェルへの接続がなくなった場合は、
/var/log/foreman-installer/satellite.log
ファイルのログメッセージで、プロセスが完全に終了したかどうかを確認できます。アップグレードを実行します。
# satellite-maintain upgrade run --whitelist="check-upstream-repository,repositories-setup,repositories-validate" --target-version 6.11.z
カーネルパッケージが最後に更新された日時を確認します。
# rpm -qa --last | grep kernel
オプション: 最後の再起動以降にカーネルが更新された場合には、Satellite サービスを停止して、システムを再起動します。
# satellite-maintain service stop # reboot
6.3. Capsule Server の更新
この手順を使用して、Capsule Server を次のマイナーバージョンに更新します。
手順
Satellite Maintenance リポジトリーが有効になっていることを確認します。
# subscription-manager repos --enable \ rhel-7-server-satellite-maintenance-6.11-rpms
利用可能なバージョンを確認して、次のマイナーバージョンがリストされていることを確認します。
# satellite-maintain upgrade list-versions
ヘルスチェックオプションを使用して、システムがアップグレードの準備ができているかどうかを確認します。
# satellite-maintain upgrade check --target-version 6.11.z
結果を確認し、アップグレードを実行する前に、強調表示されているエラー状態に対応します。
アップグレードに時間がかかるため、
tmux
などのユーティリティーを使用して、通信セッションを一時停止し、再接続してください。これにより、コマンドシェルに接続し続けなくてもアップグレードの進捗が確認できるようになります。アップグレードコマンドを実行しているコマンドシェルへの接続がなくなった場合は、
/var/log/foreman-installer/capsule.log
ファイルのログメッセージで、プロセスが完全に終了したかどうかを確認できます。アップグレードを実行します。
# satellite-maintain upgrade run --target-version 6.11.z
カーネルパッケージが最後に更新された日時を確認します。
# rpm -qa --last | grep kernel
オプション: 最後の再起動以降にカーネルが更新された場合には、Satellite サービスを停止して、システムを再起動します。
# satellite-maintain service stop # reboot