VPCワーカーノードのRHCOSへの移行
仮想プライベートクラウド
VPC ワーカーノードを RHCOS に移行するには、以下の手順を実行してください。
このページの情報はVPCクラスタにのみ適用されます。 Satellite、クラシッククラスタには適用されない。
クラスターバージョンから 4.18:
- Red Hat Enterprise Linux CoreOS (RHCOS)は、VPCクラスタのデフォルト・オペレーティング・システムです。
- RHELワーカーノードはVPCクラスタでは非推奨です。
- バージョン 4.22 は、VPC上のRHELワーカーノードをサポートする最後のバージョンです。 今後のバージョンでは、RHCOS ワーカーノードが必要となります。
VPCクラスタをできるだけ早くRHCOSワーカーノードに移行してください。
| マイルストーン | 説明 |
|---|---|
| 4.18 をリリースした: 23 2025年5月 | クラスタバージョンから 4.18、Red Hat Cluster Red Hat Enterprise LinuxCoreOS OS (RHCOS) がデフォルトのオペレーティングシステムとなり、RHELワーカーノードは本バージョンで非推奨となります。 RHELワーカーは、RHCOSワーカーへの移行を完了するためにのみ、バージョン 4.18。 |
| 4.22 リリース | バージョン 4.22 は、VPC上のRHELワーカーノードをサポートする最後のバージョンです。 今後のバージョンにアップグレードする前に、RHEL 9 ワーカーノードを RHCOS に移行してください。 |
ワーカーノードをRHCOSに移行するには、以下の手順を実行します。
RHCOSに移行するには、新しいワーカープールをプロビジョニングしてから、以前のRHELワーカープールを削除する必要があります。 新しいワーカープールは、前のワーカープールと同じゾーンに存在しなければならない。
ステップ 1: クラスタ・マスターのアップグレード
マスターを更新するには、次のコマンドを実行してください。
ibmcloud ks cluster master update --cluster CLUSTERNAMEORID --version 4.18_openshift
ステップ2:新しいRHCOSワーカープールの作成
新しいRHCOSワーカープールを作成する前に、インスタンスグループのクォータ制限を確認してください。 RHCOSクラスタでは、1クラスタあたり最大12のインスタンスグループを作成できます。 各ワーカープール内の各ゾーンに対して、1つのインスタンスグループが作成されます。 たとえば、各ゾーンに3つのワーカープールがある場合、利用可能な12のインスタンスグループのうち9つを使用することになります。 12 以上のインスタンスグループが必要な場合は、 IBM サポートにお問い合わせいただき、 アカウント アカウント申請してください。
- 新しいプールの
--operating-systemとしてRHCOSを必ず指定すること。 --size-per-zoneオプションで指定したノードの数が、RHEL ワーカー プールのゾーンごとのワーカー数と一致していることを確認する。 ワーカー・プールのゾーンと、ゾーンごとのワーカー数をリストアップするには、ibmcloud oc worker-pool get --worker-pool WORKER_POOL --cluster CLUSTERを実行する。- Cloud Pak の権利がある場合は、
--entitlement ocp_entitledオプションを必ず含めること。
-
ibmcloud oc worker-pool createコマンドを実行して、新しいワーカー・プールを作成する。RHCOSワーカープールを作成するコマンド例。
worker pool create vpc-gen2、コマンドの詳細については CLIリファレンスを 参照してください。 VPCクラスタにワーカーノードを追加する。ibmcloud oc worker-pool create vpc-gen2 --name WORKER_POOL_NAME --cluster CLUSTER_NAME_OR_ID --flavor FLAVOR --size-per-zone NUMBER_OF_WORKERS_PER_ZONE --operating-system RHCOS [--entitlement ocp_entitled] -
ワーカー・プールが作成されていることを確認し、ワーカー・プールIDをメモする。
ibmcloud oc worker-pool ls --cluster CLUSTER_NAME_OR_ID出力例
Name ID Flavor OS Workers my_workerpool aaaaa1a11a1aa1aaaaa111aa11 b3c.4x16.encrypted REDHAT_8_64 0 -
ワーカープールに1つ以上のゾーンを追加します。 ゾーンを追加すると、
--size-per-zoneオプションで指定した数のワーカーノードがゾーンに追加される。 これらのワーカーノードはRHCOSオペレーティングシステムを実行する。 RHCOSワーカープールに追加するゾーンは、置き換えるRHELワーカープールに追加するゾーンと一致させることを推奨します。 ワーカープールに接続されたゾーンを表示するには、ibmcloud oc worker-pool zones --worker-pool WORKER_POOL --cluster CLUSTERを実行します。 RHELワーカープールのゾーンと一致しないゾーンを追加する場合、ワークロードを新しいゾーンに移動しても影響がないことを確認してください。 ファイルやブロックストレージはゾーンをまたいでサポートされていないことに注意。
ステップ3:RHCOSワーカープールにワーカーノードを追加する
VPCクラスタのワーカープールにゾーンを追加する 」を参照してください。
ステップ4:ワークロードの移行
Data Foundation OpenShift などのソフトウェア定義ストレージ(SDS)ソリューションをご利用 Portworx の場合は、RHELワーカーノードを削除する前に、新しいワーカーノードを含めるようストレージ構成を更新し、ワークロードを検証してください。
ワークロードの再スケジュールに関する詳細については、GitHub Kubernetes ドキュメントの Node 「安全なドレイン」 または「 ノード上のポッドの避難方法の理解 」を参照してください Red Hat OpenShift。
-
ノードをコード化し、個々のポッドを削除することで、ポッドごとに移行する。
oc adm cordon no/<nodeName> oc delete po -n <namespace> <podName> -
Node、ノードの水抜きによって移動する。 詳細については、 ノードの安全な排出を参照してください。
-
RHELワーカープール全体を削除して、ワーカープール単位で移行する。
ibmcloud ks worker-pool rm --cluster CLUSTER_NAME_OR_ID --worker-pool WORKER_POOL_NAME_OR_ID
ステップ 5: RHEL ワーカーノードの削除
RHELワーカーを含むワーカープールを削除する。
RHELワーカープールをスケールダウンし、削除する前に数日間保持することを検討してください。 こうすることで、移行プロセス中にワークロードが中断された場合でも、ワーカープールを簡単にスケールアップすることができます。 ワークロードが安定し、正常に機能することが確認できたら、RHEL ワーカープールを安全に削除できます。
- ワーカープールを一覧表示し、削除したいワーカープールの名前をメモしておいてください。
ibmcloud oc worker-pool ls --cluster CLUSTER - ワーカープールを削除するコマンドを実行する。
ibmcloud oc worker-pool rm --worker-pool WORKER_POOL --cluster CLUSTER
オプショナルステップ5: Object Storage プラグインをアンインストールし、再インストールする
クラスタでCOSプラグインを使用している場合、RHELからRHCOSに移行した後、2つのオペレーティングシステム間で kube-driver パスが異なるため、アンインストールして再インストールする必要があります。 これを行わないと、 Error: failed to mkdir /usr/libexec/kubernetes: mkdir /usr/libexec/kubernetes: read-only file system のようなエラーが表示されることがある。