5.2. 接続されていない Satellite Server の更新
このセクションでは、接続されている Satellite Server (CDN からのコンテンツを同期するサーバー) が、接続されていない Satellite Server からエアギャップで隔離されているエアギャップ非接続環境での更新に必要な手順について説明します。
接続されている Satellite Server で次の手順を実行します。
接続されている Satellite Server で次のリポジトリーが同期されていることを確認します。
rhel-7-server-ansible-2.9-rpms rhel-7-server-rpms rhel-7-server-satellite-6.10-rpms rhel-7-server-satellite-maintenance-6-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.10-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.10/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-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.10-rpms \ -r rhel-7-server-satellite-maintenance-6-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.10-rpms] name=Red Hat Satellite 6 for RHEL 7 Server RPMs x86_64 baseurl=file:///root/Satellite-repos/rhel-7-server-satellite-6.10-rpms enabled=1 [rhel-7-server-satellite-maintenance-6-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-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.10.z
- 結果を確認し、アップグレードを実行する前に、強調表示されているエラー状態に対応します。
更新時間は長くなるため、通信セッションの中断と再接続を可能にする
screen
などのユーティリティーを使用します。これにより、コマンドシェルに接続し続けなくてもアップグレードの進捗が確認できるようになります。screen コマンドの使用方法は、Red Hat ナレッジベース の How do I use the screen command? を参照してください。アップグレードコマンドを実行しているコマンドシェルへの接続がなくなった場合は、
/var/log/foreman-installer/satellite.log
ファイルのログメッセージで、プロセスが完全に終了したかどうかを確認できます。アップグレードを実行します。
# satellite-maintain upgrade run --whitelist="check-upstream-repository,repositories-validate" --target-version 6.10.z
カーネルパッケージが最後に更新された日時を確認します。
# rpm -qa --last | grep kernel
オプション: 最後の再起動以降にカーネルが更新された場合には、
satellite-maintain
サービスを停止して、システムを再起動します。# satellite-maintain service stop # reboot