1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

OCI Kubernetesエンジン(OKE)のKubernetesバージョンをアップグレードする

1
Posted at

はじめに

下記のドキュメントにも記載されているように、Kubernetesプロジェクトは、年間3回、マイナー・バージョンを定期的にリリースしています。
そして、Kubernetesエンジンは、新しいクラスタに対して3つのマイナー・バージョンのKubernetesをサポートしています。

従って、定期的にアップグレードをしておかないと、サポートされないバージョンになってしまいます。

なお、バージョンがサポートされないバージョンになっても急に停止したりするわけではありませんが、新しいノードプールを作れないなどの制限も出てきますので、安定運用にはアップグレードが推奨されます。

アップグレード対象

以下の2つになります

  • コントロール・プレーン・ノード
  • ワーカー・ノード

コントロール・プレーン・ノードのアップグレード

OCIコンソールの「Kubernetesクラスタ(OKE)」の「クラスタ詳細」の画面に「Kubernetesバージョン」の項目がありますが、アップグレード可能な場合は以下のように「アップグレード」ボタンが表示されます。

スクリーンショット 2026-09-06 115809.png

「アップグレード」をクリックすると、アップグレードするバージョンを選択できます。
最新バージョンまで差がある場合も一気にアップグレードではなく、1バージョンずつアップグレードしていきます。

スクリーンショット 2026-09-06 120009.png

現在のバージョンが「v1.33.1」で、アップグレード対象に「v1.33」が出てきている理由は、1.33の中のより新しいパッチバージョンが存在しているためです。
下記のkubernetesの公式ページに「最新のパッチバージョンであることを確認してからアップグレードが推奨」とあるため、まず「v.1.33」を選択してアップグレードしてみます。
アップグレードはバージョンを選択して「アップグレード」をクリックするだけです。

しばらくすると無事に最新のパッチバージョンである「v.1.33.10」に更新されました。

スクリーンショット 2026-09-06 121349.png

先ほどと同様に「アップグレード」をクリックし、今度は「v.1.34」を選択してアップグレードします。
今回は選択肢に「v.1.34」だけ表示されました。

スクリーンショット 2026-09-06 121403.png

パッチバージョンは最新バージョンになりますが、もし特定のパッチバージョンにしたい場合は選択することも可能です。ただし、特に理由がなければ選択せずに最新バージョンにするのが推奨されます。

スクリーンショット 2026-09-06 120056.png

執筆時の最新はv1.36であるため、同様の手順で1.36までアップグレードをおこないます。

スクリーンショット 2026-09-06 123001.png
↓
スクリーンショット 2026-09-06 123023.png
↓
スクリーンショット 2026-09-06 124321.png
↓
スクリーンショット 2026-09-06 150219.png
↓
スクリーンショット 2026-09-06 151104.png

v.1.36で最新バージョンになったため、「アップグレード」は表示されなくなりました。

なお、下記に記載されていますが、Kubernetesエンジンは複数のOracle管理コントロール・プレーン・ノードにコントロール・プレーンを分散するため、コントロール・プレーン・ノードで実行されているKubernetesバージョンを停止時間なしでアップグレードできます。

ワーカー・ノードのアップグレード

OCIコンソールの「Kubernetesクラスタ(OKE)」の「ノードプール」の画面に「Kubernetesバージョン」、「kubernetesステータス」の項目があり、アップグレード可能な場合は以下のように「推奨されるアップグレード」と表示されます。

スクリーンショット 2026-09-06 123010.png

ノードプールの詳細画面にも同様に表示されます。
スクリーンショット 2026-09-06 151201.png

ノードプールの編集

まず、画面右上の「ノード・プールの編集」をクリックし、ノード・プールの編集画面を開きます。
そこでKubernetesバージョンを選択します。
特に理由がなければコントロール・プレーンと同じバージョンにするのが良いと思います。

スクリーンショット 2026-09-06 151225.png

続いて、「イメージの変更」をクリックし、「イメージ・ソース」に「OKEワーカー・ノードのイメージ」を選択し、Kubernetesバージョンが「v1.36.1」であるイメージを選択し、「更新」をクリックします。

スクリーンショット 2026-09-06 154851.png

これで、ノード・プールに設定されているバージョンがv1.36.1に変更されました。

ノードの更新

既存のノードのバージョンは古いままなので、ノードプールで設定したバージョンへ変更していきます。
ノードの右の「・・・」から、「サイクル・ノード」をクリックします。

スクリーンショット 2026-09-06 155150.png

「サイクル・オプション」を選択します。
3種類ありますが、クラスタ・タイプが「基本」の場合は、「ノードの交換」のみ利用可能です。
(それ以外の2つを選択した場合、「拡張クラスタの機能を選択している」といったエラーが発生します)

スクリーンショット 2026-09-06 155157.png

今回は「ノードの交換」をおこないます。
cordonとdrainは対象ノードを安全に交換するために、対象ノードを誰も利用していない状態にするための猶予時間です。

スクリーンショット 2026-09-06 155229.png

「サイクル・ノード」をクリックすると、処理が実行されます。
「ノードの交換」の場合は、まずv1.36.1のノードが作成されます。

スクリーンショット 2026-09-06 155303.png

そして、交換対象のノードが削除されます。

スクリーンショット 2026-09-06 155351.png
↓
スクリーンショット 2026-09-06 155927.png

ノードの追加

ノードを追加した場合も、もちろんv1.36.1で作成されます。
2から3に変更してみました。
スクリーンショット 2026-09-06 160243.png

v.1.36.1のノードが追加されました。
スクリーンショット 2026-09-06 160348.png
↓
スクリーンショット 2026-09-06 160933.png

なお、ノードの実態はComputeインスタンスですので、Computeインスタンスの画面からも増えていることが確認できます。
スクリーンショット 2026-09-06 160534.png

また、ロードバランサーのバックエンドも自動的に追加されます。

スクリーンショット 2026-09-06 160835.png

ノードの更新とkubectl get nodesでの確認

最後の1台も同様にアップグレードします。
スクリーンショット 2026-09-06 160942.png

アップグレードしている様子は、Cloud Shell等から「kubectl get nodes」コマンドでも確認できます。

まず対象ノードが利用停止状態になります。
スクリーンショット 2026-09-06 161044.png

しばらくすると削除されました。
スクリーンショット 2026-09-06 161216.png

新しいノードが「NotReady」で追加されました。
スクリーンショット 2026-09-06 161329.png

Readyに変わりました。
スクリーンショット 2026-09-06 161613.png

もちろんOCIコンソール画面も変わりました。
スクリーンショット 2026-09-06 162458.png

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?