13.4. クラスター内の RHEL コンピュートマシンの更新
クラスターの更新後は、クラスター内の Red Hat Enterprise Linux (RHEL) コンピュートマシンを更新する必要があります。
RHEL コンピューティングマシンでは、Red Hat Enterprise Linux (RHEL) バージョン 8.6 以降がサポートされています。
RHEL をオペレーティングシステムとして使用する場合は、コンピュートマシンを別の OpenShift Container Platform のマイナーバージョンに更新することもできます。マイナーバージョンの更新の実行時に、RHEL から RPM パッケージを除外する必要はありません。
RHEL 7 コンピュートマシンを RHEL 8 にアップグレードすることはできません。新しい RHEL 8 ホストをデプロイする必要があり、古い RHEL 7 ホストを削除する必要があります。
前提条件
- クラスターが更新されていること。 重要- RHEL マシンには、更新プロセスを完了するためにクラスターで生成されるアセットが必要になるため、クラスターを更新してから、クラスター内の RHEL ワーカーマシンを更新する必要があります。 
- 
						RHEL コンピュートマシンクラスターの追加に使用したマシンへのローカルアクセスがあること。RHEL マシンを定義する hostsAnsible インベントリーファイルおよびupgradePlaybook にアクセスできる必要があります。
- マイナーバージョンへの更新の場合、RPM リポジトリーはクラスターで実行しているのと同じバージョンの OpenShift Container Platform を使用します。
手順
- ホストで firewalld を停止し、無効にします。 - systemctl disable --now firewalld.service - # systemctl disable --now firewalld.service- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 注記- デフォルトでは、"最小" インストールオプションを持つベース OS RHEL により、firewalld サービスが有効になります。ホストで firewalld サービスを有効にすると、ワーカーで OpenShift Container Platform ログにアクセスできなくなります。ワーカーの OpenShift Container Platform ログへのアクセスを継続する場合は、firewalld を後で有効にしないでください。 
- OpenShift Container Platform 4.13 で必要なリポジトリーを有効にします。 - Ansible Playbook を実行するマシンで、必要なリポジトリーを更新します。 - subscription-manager repos --disable=rhocp-4.12-for-rhel-8-x86_64-rpms \ --enable=rhocp-4.13-for-rhel-8-x86_64-rpms- # subscription-manager repos --disable=rhocp-4.12-for-rhel-8-x86_64-rpms \ --enable=rhocp-4.13-for-rhel-8-x86_64-rpms- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 重要- OpenShift Container Platform 4.11 の時点で、Ansible Playbook は RHEL 8 に対してのみ提供されています。RHEL 7 システムが OpenShift Container Platform 4.10 Ansible Playbook のホストとして使用された場合、Ansible ホストを RHEL 8 にアップグレードするか、RHEL 8 システムに新しい Ansible ホストを作成し、古い Ansible ホストからインベントリーをコピーする必要があります。 
- Ansible Playbook を実行するマシンで、Ansible パッケージを更新します。 - yum swap ansible ansible-core - # yum swap ansible ansible-core- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- Ansible Playbook を実行するマシンで、 - openshift-ansibleを含む必要なパッケージを更新します。- yum update openshift-ansible openshift-clients - # yum update openshift-ansible openshift-clients- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 各 RHEL コンピュートノードで、必要なリポジトリーを更新します。 - subscription-manager repos --disable=rhocp-4.12-for-rhel-8-x86_64-rpms \ --enable=rhocp-4.13-for-rhel-8-x86_64-rpms- # subscription-manager repos --disable=rhocp-4.12-for-rhel-8-x86_64-rpms \ --enable=rhocp-4.13-for-rhel-8-x86_64-rpms- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
 
- RHEL ワーカーマシンを更新します。 - 次の例に示すように、 - /<path>/inventory/hostsにある Ansible インベントリーファイルを確認し、その内容を更新して、RHEL 8 マシンが- [workers]セクションにリストされるようにします。- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- openshift-ansibleディレクトリーに移動します。- cd /usr/share/ansible/openshift-ansible - $ cd /usr/share/ansible/openshift-ansible- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- upgradePlaybook を実行します。- ansible-playbook -i /<path>/inventory/hosts playbooks/upgrade.yml - $ ansible-playbook -i /<path>/inventory/hosts playbooks/upgrade.yml- 1 - Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 1
- <path>については、作成した Ansible インベントリーファイルへのパスを指定します。
 注記- upgradePlaybook は OpenShift Container Platform パッケージのみをアップグレードします。オペレーティングシステムパッケージは更新されません。
 
- すべてのワーカーを更新したら、すべてのクラスターノードが新規バージョンに更新されていることを確認します。 - oc get node - # oc get node- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 出力例 - Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- オプション: - upgradePlaybook で更新されていないオペレーティングシステムパッケージを更新します。4.13 にないパッケージを更新するには、以下のコマンドを使用します。- yum update - # yum update- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 注記- 4.13 のインストール時に使用したものと同じ RPM リポジトリーを使用している場合は、RPM パッケージを除外する必要はありません。