第3章 接続されていない Satellite Server の更新
接続されている Satellite Server (CDN からコンテンツを同期するサーバー) が接続されていない Satellite Server からエアギャップで隔離されているエアギャップ Satellite セットアップを、次のパッチバージョンに更新します。このプロセスに従うと、マイナーリリースバージョン間で基盤となるオペレーティングシステムを更新できます。
前提条件
- Satellite Server をバックアップします。詳細は、Red Hat Satellite の管理 の Satellite Server および Capsule Server のバックアップ を参照してください。
更新手順に必要な
reposync
をインストールします。# dnf install 'dnf-command(reposync)'
3.1. Red Hat Enterprise Linux 8 でオフラインの Satellite Server を更新する
オンラインの Satellite 上の必要なリポジトリーを同期し、reposync
を使用してオフラインの Satellite にコンテンツを同期することで、Red Hat Enterprise Linux 8 上のオフラインの Satellite を更新できます。
接続されている Satellite サーバーでの手順
接続されている Satellite Server で次のリポジトリーが同期されていることを確認します。
- rhel-8-for-x86_64-baseos-rpms
- rhel-8-for-x86_64-appstream-rpms
- satellite-6.16-for-rhel-8-x86_64-rpms
- satellite-maintenance-6.16-for-rhel-8-x86_64-rpms
-
組織のデバッグ証明書をダウンロードして、
/etc/pki/katello/certs/org-debug-cert.pem
または選択した場所にローカルに保存します。詳細は、Red Hat Satellite の管理 の 組織のデバッグ証明書の作成 を参照してください。 /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.16-for-rhel-8-x86_64-rpms] name=Red Hat Satellite 6.16 for RHEL 8 RPMs x86_64 baseurl=https://satellite.example.com/pulp/content/My_Organization/Library/content/dist/layered/rhel8/x86_64/satellite/6.16/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-maintenance-6.16-for-rhel-8-x86_64-rpms] name=Red Hat Satellite Maintenance 6.16 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.16/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
を、ダウンロードした組織のデバッグ証明書の場所に置き換えます。 -
baseurl
オプションの場合は、satellite.example.com
を、接続されている Satellite Server の正しい FQDN に置き換えます。 -
baseurl
オプションの場合は、My_Organization
を組織ラベルに置き換えます。
-
組織ラベルを取得します。
# hammer organization list
reposync
コマンドを入力します。# dnf reposync \ --delete \ --disableplugin=foreman-protector \ --download-metadata \ --repoid rhel-8-for-x86_64-appstream-rpms \ --repoid rhel-8-for-x86_64-baseos-rpms \ --repoid satellite-maintenance-6.16-for-rhel-8-x86_64-rpms \ --repoid satellite-6.16-for-rhel-8-x86_64-rpms \ -n \ -p ~/Satellite-repos
これにより、接続されている Satellite Server からリポジトリーのコンテンツがダウンロードされ、ディレクトリー
~/Satellite-repos
に保存されます。-
RPM がダウンロードされ、リポジトリーデータディレクトリーが
~/Satellite-repos
の各サブディレクトリーに生成されていることを確認します。 ディレクトリーの内容をアーカイブします。
# tar czf Satellite-repos.tgz -C ~ Satellite-repos
-
生成された
Satellite-repos.tgz
ファイルを使用して、非接続の Satellite Server で更新します。
接続されていない Satellite サーバーでの手順
-
生成された
Satellite-repos.tgz
ファイルを、接続されていない Satellite Server にコピーします。 root
ユーザーがアクセスできる場所にアーカイブを展開します。次の例では、/root
が展開場所です。# tar zxf Satellite-repos.tgz -C /root
次のリポジトリー情報を使用して、
/etc/yum.repos.d
の下に Yum 設定ファイルを作成します。[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.16-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.16-for-rhel-8-x86_64-rpms enabled = 1 [satellite-maintenance-6.16-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.16-for-rhel-8-x86_64-rpms enabled = 1
-
設定ファイルの
/root/Satellite-repos
は、展開先の場所に置き換えます。 ヘルスチェックオプションを使用して、システムで更新の準備ができているかどうかを確認します。このコマンドを最初に使用したときに、
satellite-maintain
により hammer 管理者ユーザー認証情報を入力して、/etc/foreman-maintain/foreman-maintain-hammer.yml
ファイルに保存します。# satellite-maintain update check \ --whitelist="check-upstream-repository,repositories-validate"
- 結果を確認し、更新を実行する前に、強調表示されているエラー状態に対応します。
更新に時間がかかるため、
tmux
などのユーティリティーを使用して、通信セッションを一時停止し、再接続します。これにより、コマンドシェルに接続し続けなくても更新の進捗が確認できるようになります。更新コマンドを実行しているコマンドシェルへの接続がなくなった場合は、
/var/log/foreman-installer/satellite.log
ファイルのログメッセージで、プロセスが完全に終了したかどうかを確認できます。更新を実行します。
# satellite-maintain update run \ --whitelist="check-upstream-repository,repositories-setup,repositories-validate"
システムを再起動する必要があるかどうかを確認します。
# dnf needs-restarting --reboothint
前のコマンドで再起動するように指示された場合は、システムを再起動します。
# reboot
関連情報
- Satellite Server または Capsule Server のバックアップを復元するには、バックアップからの Satellite Server または Capsule Server の復元 を参照してください。