3.3. Capsule Server のアップグレード
このセクションは、Capsule Server を 6.9 から 6.10 にアップグレードする方法を説明します。
作業開始前の準備
- Capsule Server をアップグレードする前に、Satellite Server をアップグレードする必要があります。Capsule は、Satellite とは別にアップグレードできます。詳細は、「Satellite とは別の Capsule のアップグレード」 を参照してください。
- Red Hat Satellite Capsule 6.10 リポジトリーが Satellite Server で有効になっており、同期されていることを確認します。
- Satellite Server 上の必要なリポジトリーを必ず同期してください。詳しくは、「新しいリポジトリーの同期」をご覧ください。
- コンテンツビューを使用して Capsule Server のベースオペレーティングシステムへの更新を制御する場合、それらのコンテンツビューを新しいリポジトリーで更新し、更新済みのバージョンを公開します。詳細は、コンテンツ管理ガイドの コンテンツビューの管理 を参照してください。
- 新たにアップグレードした Satellite Server に、Capsule のベースシステムが登録されていることを確認します。
- 新たにアップグレードした Satellite Server で、Capsule の組織と場所が正しく設定されていることを確認します。
- Capsule Server をアップグレードする前に、ファイアウォールの設定を確認して更新してください。詳細は、Capsule Server のインストールの Capsule のインストールに必要な環境の準備 を参照してください。
-
/etc/puppetlabs/code/environments
ファイルのバックアップを作成してください。
カスタムの証明書を実装している場合は、/root/ssl-build
ディレクトリーと、カスタム証明書に関連するソースファイルを作成したディレクトリーのコンテンツを保持する必要があります。
アップグレード時にこのファイルを保持できないと、アップグレードは失敗します。ファイルを削除してしまった場合は、アップグレードを進めるためにバックアップから復元する必要があります。
Capsule Server のアップグレード
バックアップを作成します。
- 仮想マシンで、スナップショットを作成します。
物理マシンで、バックアップを作成します。
バックアップに関する詳細は、Red Hat Satellite 6.9 の管理 ガイドの Satellite Server および Capsule Server のバックアップ を参照してください。
yum のキャッシュを消去します。
# yum clean metadata
satellite-maintain
が含まれるrubygem-foreman_maintain
パッケージがインストールされており、最新の状態になっていることを確認します。# yum install rubygem-foreman_maintain
Capsule Server で
foreman_url
設定が Satellite FQDN を参照していることを確認します。# grep foreman_url /etc/foreman-proxy/settings.yml
-
6.10 にアップグレードする Satellite 6.9/Capsule 6.9 Server の
/etc/foreman-installer/custom-hiera.yaml
ファイルでapache::purge_configs: false
エントリーがないか、コメントアウトされているようにしてください。 利用可能なバージョンを確認して、希望のバージョンが表示されていることを確認します。
# satellite-maintain upgrade list-versions
アップグレード時間は長くなるため、通信セッションの中断と再接続を可能にする
screen
などのユーティリティーを使用します。これにより、コマンドシェルに接続し続けなくてもアップグレードの進捗が確認できるようになります。screen コマンドの使用方法は、Red Hat ナレッジベース の How do I use the screen command? を参照してください。アップグレードコマンドを実行しているコマンドシェルへの接続がなくなった場合は、
/var/log/foreman-installer/satellite.log
ファイルのログメッセージで、プロセスが完全に終了したかどうかを確認できます。ヘルスチェックオプションを使用して、システムがアップグレードの準備ができているかどうかを確認します。
# satellite-maintain upgrade check --target-version 6.10
結果を確認し、アップグレードを実行する前に、強調表示されているエラー状態に対応します。
アップグレードを実行します。
# satellite-maintain upgrade run --target-version 6.10
警告config サブディレクトリーを含むディレクトリーからコマンドを実行すると、以下のエラーが発生します。
ERROR: Scenario (config/capsule.yaml) was not found, can not continue.
このような場合は、root ユーザーのホームディレクトリーに移動し、コマンドを再実行します。
Pulp 2 から Pulp 3 にコンテンツを移行した場合は、Pulp 2 コンテンツをすべて削除します。
# satellite-maintain content remove-pulp2
これにより、Pulp 2 RPM、
/var/lib/pulp/content/
のコンテンツ、mongo データベース、および Pulp 3 データベースの移行コンテンツが削除されます。この Capsule を介してコンテンツへのアクセスは、アップグレードされた Capsule の完全な同期が実行されるまで失敗します。
カーネルパッケージが最後に更新された日時を確認します。
# rpm -qa --last | grep kernel
オプション: カーネルを更新してから再起動していない場合には、システムを再起動します。
# reboot
- オプション: DNS または DHCP 設定ファイルを手動で編集した場合には、以前に作成したバックアップを使用して、DNS と DHCP の設定ファイルに必要なすべての変更を確認し、復元します。
- オプション: カスタムリポジトリーを使用する場合は、アップグレードの完了後にそのカスタムリポジトリーを必ず有効にしてください。
MongoDB および RPM リポジトリーは Satellite に自動的に移行されないため、Satellite Server で、アップグレードされた Capsule の完全同期を実行します。
# hammer capsule content synchronize --name ${Capsule} --skip-metadata-check true --async
注記Satellite Server をアップグレードする前にリポジトリーを同期しなかった場合には、このコマンドを実行すると、Capsule Server とのコンテンツの同期に失敗します。この場合は、「Satellite Web UI での Capsule Server の同期」 に従って Capsule Server を同期します。
Satellite Web UI のリモート実行を使用した Capsule Server のアップグレード
バックアップを作成します。
- 仮想マシンで、スナップショットを作成します。
物理マシンで、バックアップを作成します。
バックアップに関する詳細は、Red Hat Satellite 6.9 の管理 ガイドの Satellite Server および Capsule Server のバックアップ を参照してください。
-
オプション:
/etc/zones.conf
または/etc/dhcp/dhcpd.conf
ファイルで DNS または DHCP の設定を手動で編集した場合には、設定ファイルをバックアップしてください。インストーラーはドメインまたはサブネットを 1 つしかサポートしないので、これらのバックアップから変更を復元しなければならない場合があります。 オプション: DNS または DHCP の設定ファイルを手動で編集した場合に、変更の上書きを避けるには、以下のコマンドを実行します。
# {foreman-installer} --foreman-proxy-dns-managed=false \ --foreman-proxy-dhcp-managed=false
- Satellite Web UI で、Monitor > Jobs に移動します。
- Run Job をクリックします。
- Job category リストから Maintenance Operations を選択します。
- Job template リストから Capsule Upgrade Playbook を選択します。
- Search Query フィールドに Capsule のホスト名を入力します。
- Resolves to で 1 host が表示されていることを確認します。
- target_version フィールドに、Capsule のターゲットバージョンを入力します。
- whitelist_options フィールドに、許可リストオプションを入力します。
- Type of query には、クエリーの種類に合わせて Static Query または Dynamic Query をクリックします。
- Schedule でジョブ実行のスケジュールを選択します。