目的
IBMCloudのOpenShift(ROKS)クラスタでは、バージョン4.18以降、"Red Hat Enterprise Linux CoreOS (RHCOS)"がデフォルトのオペレーティングシステムとなり、このバージョンではRHELワーカーノードは非推奨となる。また、バージョン4.21では完全にサポートが終了する。これから作る新規クラスタであれば、最初からRHCOSを使用するば良いため、あまり影響はないと思われるが既存クラスタについてはいくつかのステップを踏む必要があるため、手順をまとめる。
移行ステップの概要
ステップ | 手順内容 | 備考 |
---|---|---|
1 | クラスターのバージョンアップ(マスター) | WebUIまたはCLIからマスターを最新にアップデート(4.18) |
2 | RHCOSノードのある新しいワーカープール作成 | ibmcloud oc worker-pool create |
3 | RHELノードを cordon/drain | スケジュール不可にし、PodをRHCOSに強制移動 |
4 | 動作確認後、RHELワーカープールを削除 | 不要な旧ワーカーノードを削除 |
STEP1 クラスターのバージョンアップ(マスター)
4.17より古いバージョンで作成されたクラスタはRHCOSプールを追加するために
事前に4.18にバージョンアップする必要があるため、マスターのバージョンアップを実施する。
以下のコマンドを実行してマスターを更新する。
ibmcloud ks cluster master update --cluster --version 4.18_openshift
コマンドの実行例
% ibmcloud ks cluster master update --cluster d18c9dpt0cv3rxxxx --version 4.18_openshift
更新中、クラスターにアクセスすることも変更することもできません。 ユーザーがデプロイしたワーカー・ノード、アプリ、リソースは変更されず、引き続き実行されます。
今後のデプロイメント用に、YAML ファイルを変更する必要がある場合があります。 詳しくは、次の資料を確認してください: 'https://ibm.biz/iks-versions'。
Kubernetes API サーバー d18c9dpt0cv3rxxxx を 4.18_openshift に更新しますか? [y/N]> y
クラスター d18c9dpt0cv3rxxxx を更新中...
OK
進行状況確認
% ibmcloud ks cluster get --cluster d18c9dpt0cv3rxxxx
クラスター d18c9dpt0cv3rxxxx を取得中...
OK
名前: mycluster-jp
ID: d18c9dpt0cv3rxxxx
状態: normal
状況: All Workers Normal
作成日: 2025-06-17 10:28:20 +0900 (1 hour ago)
リソース・グループ ID: d72766061fce4e839ce2bdd1247e621c
リソース・グループ名: acs-paas
ポッド・サブネット: 172.17.192.0/18
サービス・サブネット: 172.21.0.0/16
ワーカー: 2
ワーカー・ゾーン: jp-tok-3
Ingress サブドメイン: mycluster-jp-paas-test-d13c20a300620486546182a0effece00-0000.jp-tok.containers.appdomain.cloud
Ingress の秘密: mycluster-jp-paas-test-d13c20a300620486546182a0effece00-0000
Ingress 状況: healthy
Ingress メッセージ: All Ingress components are healthy.
パブリック・サービス・エンドポイント URL: https://c115-e.jp-tok.containers.cloud.ibm.com:30736
プライベート・サービス・エンドポイント URL: https://c115.private.jp-tok.containers.cloud.ibm.com:30736
プル・シークレット: デフォルト名前空間内で有効化
VPC: r022-8e9b2170-851b-45e5-918c-5796921c55c4
VPE Gateway: https://d18c9dpt0cv3rxxxx.vpe.private.jp-tok.containers.cloud.ibm.com:30736
OAuth Server URL: https://c115-e.jp-tok.containers.cloud.ibm.com:30580
Konnectivity Server URL: https://d18c9dpt0cv3rxxxx.vpe.private.jp-tok.containers.cloud.ibm.com:30157
Secure By Default Networking: enabled
Outbound Traffic Protection: disabled
マスター
状況: Version update in progress. (3 minutes ago)
状態: updating
正常性: normal
バージョン: 4.17.28_1540_openshift --> 4.18.11_1544_openshift (pending)
ロケーション: Tokyo
URL: https://c115-e.jp-tok.containers.cloud.ibm.com:30736
バージョンアップ完了を確認
% ibmcloud ks cluster get --cluster d18c9dpt0cv3rxxxx
クラスター d18c9dpt0cv3rxxxx を取得中...
OK
名前: mycluster-jp
ID: d18c9dpt0cv3rxxxx
状態: normal
状況: All Workers Normal
作成日: 2025-06-17 10:28:20 +0900 (3 hours ago)
リソース・グループ ID: d72766061fce4e839ce2bdd1247e621c
リソース・グループ名: acs-paas
ポッド・サブネット: 172.17.192.0/18
サービス・サブネット: 172.21.0.0/16
ワーカー: 2
ワーカー・ゾーン: jp-tok-3
Ingress サブドメイン: mycluster-jp-paas-test-d13c20a300620486546182a0effece00-0000.jp-tok.containers.appdomain.cloud
Ingress の秘密: mycluster-jp-paas-test-d13c20a300620486546182a0effece00-0000
Ingress 状況: healthy
Ingress メッセージ: All Ingress components are healthy.
パブリック・サービス・エンドポイント URL: https://c115-e.jp-tok.containers.cloud.ibm.com:30736
プライベート・サービス・エンドポイント URL: https://c115.private.jp-tok.containers.cloud.ibm.com:30736
プル・シークレット: デフォルト名前空間内で有効化
VPC: r022-8e9b2170-851b-45e5-918c-5796921c55c4
VPE Gateway: https://d18c9dpt0cv3rxxxx.vpe.private.jp-tok.containers.cloud.ibm.com:30736
OAuth Server URL: https://c115-e.jp-tok.containers.cloud.ibm.com:30580
Konnectivity Server URL: https://d18c9dpt0cv3rxxxx.vpe.private.jp-tok.containers.cloud.ibm.com:30157
Secure By Default Networking: enabled
Outbound Traffic Protection: disabled
マスター
状況: Ready (1 hour ago)
状態: deployed
正常性: normal
バージョン: 4.18.11_1544_openshift
ロケーション: Tokyo
URL: https://c115-e.jp-tok.containers.cloud.ibm.com:30736
STEP2 RHCOSノードのある新しいワーカープール作成
コマンド
ibmcloud oc worker-pool create vpc-gen2 --name --cluster --flavor --size-per-zone --operating-system RHCOS [--entitlement ocp_entitled]
フレーバーの確認方法
% ibmcloud ks zone ls --provider vpc-gen2
OK
ID 名前 メトロ フレーバー
au-syd-1 au-syd-1 Sydney -
au-syd-2 au-syd-2 Sydney -
au-syd-3 au-syd-3 Sydney -
br-sao-1 br-sao-1 Sao Paulo -
br-sao-2 br-sao-2 Sao Paulo -
br-sao-3 br-sao-3 Sao Paulo -
ca-mon-1 ca-mon-1 Montreal -
ca-mon-2 ca-mon-2 Montreal -
ca-mon-3 ca-mon-3 Montreal -
ca-tor-1 ca-tor-1 Toronto -
ca-tor-2 ca-tor-2 Toronto -
ca-tor-3 ca-tor-3 Toronto -
eu-de-1 eu-de-1 Frankfurt -
eu-de-2 eu-de-2 Frankfurt -
eu-de-3 eu-de-3 Frankfurt -
eu-es-1 eu-es-1 Madrid -
eu-es-2 eu-es-2 Madrid -
eu-es-3 eu-es-3 Madrid -
eu-gb-1 eu-gb-1 London -
eu-gb-2 eu-gb-2 London -
eu-gb-3 eu-gb-3 London -
jp-osa-1 jp-osa-1 Osaka -
jp-osa-2 jp-osa-2 Osaka -
jp-osa-3 jp-osa-3 Osaka -
jp-tok-1 jp-tok-1 Tokyo -
jp-tok-2 jp-tok-2 Tokyo -
jp-tok-3 jp-tok-3 Tokyo -
us-east-1 us-east-1 Washington D.C. -
us-east-2 us-east-2 Washington D.C. -
us-east-3 us-east-3 Washington D.C. -
us-south-1 us-south-1 Dallas -
us-south-2 us-south-2 Dallas -
us-south-3 us-south-3 Dallas -
% ibmcloud oc flavors --zone jp-tok-3 --provider vpc-gen2
OK
これらのフレーバーについて詳しくは、'https://ibm.biz/flavors' を参照してください
名前 コア メモリー ネットワーク速度 OS サーバー・タイプ ストレージ 2 次ストレージ フレーバー・クラス プロバイダー
bx2.16x64 16 64GB 24Gbps UBUNTU_24_64 virtual 100GB 0B, * bx2 vpc-gen2
bx2.2x8† 2 8GB 4Gbps UBUNTU_24_64 virtual 100GB 0B bx2 vpc-gen2
bx2.32x128 32 128GB 25Gbps UBUNTU_24_64 virtual 100GB 0B, * bx2 vpc-gen2
bx2.48x192 48 192GB 25Gbps UBUNTU_24_64 virtual 100GB 0B, * bx2 vpc-gen2
bx2.4x16 4 16GB 8Gbps UBUNTU_24_64 virtual 100GB 0B, * bx2 vpc-gen2
bx2.8x32 8 32GB 16Gbps UBUNTU_24_64 virtual 100GB 0B, * bx2 vpc-gen2
bx2d.metal.96x384 48 384GB 100Gbps physical 960GB 0B - vpc-gen2
bx3d.128x640 128 640GB 32Gbps UBUNTU_24_64 virtual 100GB 0B, * bx3d vpc-gen2
bx3d.16x80 16 80GB 24Gbps UBUNTU_24_64 virtual 100GB 0B, * bx3d vpc-gen2
bx3d.24x120 24 120GB 32Gbps UBUNTU_24_64 virtual 100GB 0B, * bx3d vpc-gen2
bx3d.32x160 32 160GB 32Gbps UBUNTU_24_64 virtual 100GB 0B, * bx3d vpc-gen2
bx3d.48x240 48 240GB 32Gbps UBUNTU_24_64 virtual 100GB 0B, * bx3d vpc-gen2
bx3d.4x20 4 20GB 6Gbps UBUNTU_24_64 virtual 100GB 0B, * bx3d vpc-gen2
bx3d.64x320 64 320GB 32Gbps UBUNTU_24_64 virtual 100GB 0B, * bx3d vpc-gen2
bx3d.8x40 8 40GB 12Gbps UBUNTU_24_64 virtual 100GB 0B, * bx3d vpc-gen2
bx3d.96x480 96 480GB 32Gbps UBUNTU_24_64 virtual 100GB 0B, * bx3d vpc-gen2
cx2.16x32 16 32GB 24Gbps UBUNTU_24_64 virtual 100GB 0B, * cx2 vpc-gen2
cx2.2x4† 2 4GB 4Gbps UBUNTU_24_64 virtual 100GB 0B cx2 vpc-gen2
cx2.32x64 32 64GB 25Gbps UBUNTU_24_64 virtual 100GB 0B, * cx2 vpc-gen2
cx2.48x96 48 96GB 25Gbps UBUNTU_24_64 virtual 100GB 0B, * cx2 vpc-gen2
cx2.4x8† 4 8GB 8Gbps UBUNTU_24_64 virtual 100GB 0B, * cx2 vpc-gen2
cx2.8x16 8 16GB 16Gbps UBUNTU_24_64 virtual 100GB 0B, * cx2 vpc-gen2
cx2d.metal.96x192 48 192GB 100Gbps physical 960GB 0B - vpc-gen2
cx3d.128x320 128 320GB 32Gbps UBUNTU_24_64 virtual 100GB 0B, * cx3d vpc-gen2
cx3d.16x40 16 40GB 24Gbps UBUNTU_24_64 virtual 100GB 0B, * cx3d vpc-gen2
cx3d.24x60 24 60GB 32Gbps UBUNTU_24_64 virtual 100GB 0B, * cx3d vpc-gen2
cx3d.32x80 32 80GB 32Gbps UBUNTU_24_64 virtual 100GB 0B, * cx3d vpc-gen2
cx3d.48x120 48 120GB 32Gbps UBUNTU_24_64 virtual 100GB 0B, * cx3d vpc-gen2
cx3d.4x10† 4 10GB 6Gbps UBUNTU_24_64 virtual 100GB 0B, * cx3d vpc-gen2
cx3d.64x160 64 160GB 32Gbps UBUNTU_24_64 virtual 100GB 0B, * cx3d vpc-gen2
cx3d.8x20 8 20GB 12Gbps UBUNTU_24_64 virtual 100GB 0B, * cx3d vpc-gen2
cx3d.96x240 96 240GB 32Gbps UBUNTU_24_64 virtual 100GB 0B, * cx3d vpc-gen2
gx3.16x80.l4 16 80GB 32Gbps UBUNTU_24_64 virtual 100GB 0B, * gx3-l4 vpc-gen2
gx3.24x120.l40s 24 120GB 32Gbps UBUNTU_24_64 virtual 100GB 0B, * gx3-l40s vpc-gen2
gx3.32x160.2l4 32 160GB 32Gbps UBUNTU_24_64 virtual 100GB 0B, * gx3-l4 vpc-gen2
gx3.48x240.2l40s 48 240GB 32Gbps UBUNTU_24_64 virtual 100GB 0B, * gx3-l40s vpc-gen2
gx3.64x320.4l4 64 320GB 32Gbps UBUNTU_24_64 virtual 100GB 0B, * gx3-l4 vpc-gen2
mx2.128x1024 128 1024GB 25Gbps UBUNTU_24_64 virtual 100GB 0B, * mx2 vpc-gen2
mx2.16x128 16 128GB 24Gbps UBUNTU_24_64 virtual 100GB 0B, * mx2 vpc-gen2
mx2.2x16† 2 16GB 4Gbps UBUNTU_24_64 virtual 100GB 0B mx2 vpc-gen2
mx2.32x256 32 256GB 25Gbps UBUNTU_24_64 virtual 100GB 0B, * mx2 vpc-gen2
mx2.48x384 48 384GB 25Gbps UBUNTU_24_64 virtual 100GB 0B, * mx2 vpc-gen2
mx2.4x32 4 32GB 8Gbps UBUNTU_24_64 virtual 100GB 0B, * mx2 vpc-gen2
mx2.64x512 64 512GB 25Gbps UBUNTU_24_64 virtual 100GB 0B, * mx2 vpc-gen2
mx2.8x64 8 64GB 16Gbps UBUNTU_24_64 virtual 100GB 0B, * mx2 vpc-gen2
mx2d.metal.96x768 48 768GB 100Gbps physical 960GB 0B - vpc-gen2
mx3d.128x1280 128 1280GB 32Gbps UBUNTU_24_64 virtual 100GB 0B, * mx3d vpc-gen2
mx3d.24x240 24 240GB 32Gbps UBUNTU_24_64 virtual 100GB 0B, * mx3d vpc-gen2
mx3d.32x320 32 320GB 32Gbps UBUNTU_24_64 virtual 100GB 0B, * mx3d vpc-gen2
mx3d.48x480 48 480GB 32Gbps UBUNTU_24_64 virtual 100GB 0B, * mx3d vpc-gen2
mx3d.64x640 64 640GB 32Gbps UBUNTU_24_64 virtual 100GB 0B, * mx3d vpc-gen2
mx3d.96x960 96 960GB 32Gbps UBUNTU_24_64 virtual 100GB 0B, * mx3d vpc-gen2
ox2.128x1024 128 1024GB 25Gbps UBUNTU_24_64 virtual 100GB 0B, * ox2 vpc-gen2
ox2.16x128 16 128GB 24Gbps UBUNTU_24_64 virtual 100GB 0B, * ox2 vpc-gen2
ox2.32x256 32 256GB 25Gbps UBUNTU_24_64 virtual 100GB 0B, * ox2 vpc-gen2
ox2.4x32 4 32GB 8Gbps UBUNTU_24_64 virtual 100GB 0B, * ox2 vpc-gen2
ox2.64x512 64 512GB 25Gbps UBUNTU_24_64 virtual 100GB 0B, * ox2 vpc-gen2
ox2.8x64 8 64GB 16Gbps UBUNTU_24_64 virtual 100GB 0B, * ox2 vpc-gen2
ox2.96x768 96 768GB 25Gbps UBUNTU_24_64 virtual 100GB 0B, * ox2 vpc-gen2
コマンドの実行例
ibmcloud oc worker-pool create vpc-gen2 --name rhcos-worker-pool --cluster d18c9dpt0cv3rxxxx --flavor bx3d.4x20 --size-per-zone 2 --operating-system RHCOS
OK
ワーカープールの確認
% ibmcloud oc worker-pool ls --cluster d18c9dpt0cv3rxxxx
OK
名前 ID フレーバー OS ワーカー
rhcos-worker-pool d18c9dpt0cv3rxxxx-41a4731 bx3d.4x20 RHCOS 0
acs-paas-test d18c9dpt0cv3rxxxx-1ccfe3d bx3d.4x20 RHEL_9_64 2
ワーカープールにゾーンを追加
追加したいゾーン(jp-tok-3)のVPCにあるネットワークを確認
% ibmcloud oc subnets --zone jp-tok-3 --provider vpc-gen2 --vpc-id r022-8e9b2170-851b-45e5-918c-5796921c55c4
OK
名前 ID パブリック・ゲートウェイ名 パブリック・ゲートウェイ ID IPv4 CIDR ブロック 使用可能な IPv4 アドレス
paasnw3 02g7-c931fc19-1177-458d-9dda-0b8b46634222 pgw-53b2eaa0-f6d7-11ee-87c3-5782597ac88b r022-e4eeeb8f-fb7e-4b05-9a25-725f0968e626 10.244.128.0/24 234
ゾーンをワーカー・プールに追加
ibmcloud oc zone add vpc-gen2 --zone --subnet-id --cluster CLUSTER-NAME --worker-pool
コマンド実行例
% ibmcloud oc zone add vpc-gen2 --zone jp-tok-3 --subnet-id 02g7-c931fc19-1177-458d-9dda-0b8b46634222 --cluster d18c9dpt0cv3rxxxx --worker-pool rhcos-worker-pool
OK
正常に追加できたことを確認
% ibmcloud oc worker-pool ls --cluster d18c9dpt0cv3rxxxx
OK
名前 ID フレーバー OS ワーカー
acs-paas-test d18c9dpt0cv3rxxxx-1ccfe3d bx3d.4x20 RHEL_9_64 2
rhcos-worker-pool d18c9dpt0cv3rxxxx-41a4731 bx3d.4x20 RHCOS 2
STEP3 Podをcordon/drainして移動
cordon/drainについては下記の記事を参照して実施
[IBMCloud] IKS(Kubernetes) Cordon/Drain時の挙動確認
STEP4 動作確認後、RHELワーカープールを削除
旧ノード(例:RHEL)からの削除
ワーカープールを削除するコマンドを実行
ibmcloud oc worker-pool rm --worker-pool WORKER_POOL --cluster CLUSTER
コマンド実行例
% ibmcloud oc worker-pool rm --worker-pool acs-paas-test --cluster d18c9dpt0cv3rxxxx
ワーカー・プール acs-paas-test を削除しますか? [y/N]> y
OK
削除を確認
% ibmcloud oc worker-pool ls --cluster d18c9dpt0cv3rxxxx
OK
名前 ID フレーバー OS ワーカー
rhcos-worker-pool d18c9dpt0cv3rxxxx-41a4731 bx3d.4x20 RHCOS 2