古いバージョンに起因するセキュリティリスクや安定性リスクを軽減するため、クラスターを速やかにアップグレードしてください。クラスターのアップグレードには、コントロールプレーンおよびノードプールの両方のアップグレードが含まれます。
クラスターをアップグレードする前に、「クラスターのアップグレード」を確認し、アップグレードプロセス、方法、および重要な注意事項を理解してください。
操作エントリポイント
まず、コントロールプレーンをアップグレードします。次に、ノードプールをアップグレードします。コントロールプレーンをアップグレードする前に、ノード上の kubelet およびコンテナランタイムのバージョンがコントロールプレーンのバージョンと一致していることを確認してください。これにより、アップグレードの失敗やサービス中断を防ぐことができます。たとえば、コントロールプレーンがバージョン 1.32 でノードがバージョン 1.31 の場合、コントロールプレーンを 1.33 にアップグレードする前に、ノードをバージョン 1.32 にアップグレードしてください。
ACK コンソールにログインします。左側のナビゲーションウィンドウで、クラスターリスト をクリックします。
クラスターリスト ページで、ご利用のクラスター名をクリックします。左側のナビゲーションウィンドウで、 をクリックします。
-
クラスターのアップグレード ページで、利用可能な 対象バージョン を選択し、画面の指示に従ってアップグレードプロセスを完了します。
コントロールプレーンのアップグレード
1. 事前チェック
コントロールプレーンのアップグレード前の事前チェックでは、非推奨 API、コンポーネントの互換性、およびクラスター全体のステータスをスキャンします。
バージョン 1.20 以降を実行しているクラスターの場合、事前チェックでは 非推奨 API が存在しないかスキャンされます。スキャン結果はアップグレードプロセスに影響しません。これは通知目的のみです。新しいクラスターバージョンが期待どおりに動作することを保証するために、アップグレード前に問題を解決してください。
クラスターのアップグレード ページで、事前チェック をクリックして、アップグレード前の潜在的なリスクをスキャンします。スキャンが完了したら、事前チェックの結果 セクションで結果を確認します。次の図はその例です。

-
Normal: アップグレードチェックが成功しました。アップグレードを続行できます。
-
Abnormal: この結果は現在のクラスターの操作やステータスに影響しません。提供されたソリューションに基づいて問題を解決してください。詳細については、「クラスターの確認項目とソリューション」をご参照ください。
2. アップグレードの実行
所要時間:ACK マネージドクラスター および ACK サーバーレスクラスター の場合、アップグレードは ACK によって管理され、約 5 分かかります。ACK 専用クラスター の場合、マスターノードは順番に 1 つずつアップグレードされます。各ノードのアップグレードには約 8 分かかります。
事前チェックの問題を解決したら、アップグレード をクリックし、画面の指示に従ってコントロールプレーンをアップグレードします。
コントロールプレーンのアップグレード後、新しくスケールアウトされたノードのバージョンもコントロールプレーンのバージョンに合わせて更新されます。

3. アップグレード後の検証
コントロールプレーンのアップグレード後、以下の項目を確認してください。
コントロールプレーンが正常にアップグレードされました。クラスターバージョンが「クラスター」ページで更新されています。
API Server およびコアコンポーネントが Normal 状態です。
ビジネスアプリケーションが期待どおりに動作しています。
Pod を正常に作成できます。
ノードを正常に追加できます。
ノードプールのアップグレード
コントロールプレーンのアップグレード後、オフピーク時間帯にできるだけ早くノードプールをアップグレードできます。ノードプールのアップグレードには、ノード上の kubelet およびコンテナランタイムのアップグレードが含まれます。
1. 事前チェック
ノードプールのアップグレード前の事前チェックでは、ノードのステータス、システムリソース、ディスクのステータス、およびネットワーク環境をスキャンします。
ノードプールのアップグレード ページで、対象のノードプールをリストから見つけ、**[操作]** 列の アップグレード をクリックします。その後、ページ下部の 事前チェック をクリックして、アップグレードプロセス中の潜在的なリスクをスキャンします。スキャンが完了したら、事前チェックの結果 セクションで結果を確認します。

-
Normal: アップグレードチェックが成功しました。アップグレードを続行できます。
-
Abnormal: この結果は現在のクラスターの操作やステータスに影響しません。コンソールの指示および「クラスターの確認項目とソリューション」に基づいて問題を解決してください。
2. アップグレードポリシーの設定とアップグレードの実行
所要時間:所要時間はノードのバッチ処理方法によって異なります。インプレースアップグレードの場合、バッチあたり約 5~10 分かかります。スナップショットを作成しないディスク置き換えアップグレードの場合、約 8 分かかります。具体的な所要時間はノードドレイン時間に影響されます。スナップショットを作成する場合、スナップショットの作成後にアップグレードが開始されます。スナップショットの作成に必要な時間はデータ量によって異なります。
次の表に示すように、アップグレードポリシーを設定できます。その後、アップグレード をクリックし、画面の指示に従ってノードプールをアップグレードします。
|
設定項目 |
説明 |
|
バージョン情報 |
kubelet およびコンテナランタイムの現在のバージョンと利用可能なバージョン。 |
|
ノードのアップグレード |
すべてのノードを一度にアップグレードするか、一部のノードを先にアップグレードし、正常であることを確認した後に残りのノードをアップグレードできます。 |
|
アップグレード方法 |
|
|
一括更新ポリシー |
|
3. アップグレード後の検証
ノードプールのアップグレード後、以下の項目を確認してください。
ノードが正常にアップグレードされました。kubelet および containerd のバージョンがノード詳細ページで更新されています。
Pod スケジューリングが正常に機能しています。
ビジネスアプリケーションが期待どおりに動作しています。
参考資料
-
クラスターのアップグレード前およびアップグレード中に生じる可能性のある一般的な質問については、「よくある質問」をご参照ください。
-
ACK の Kubernetes バージョンサポートポリシーについては、「バージョンガイド」をご参照ください。
-
バージョン 1.24 以降では、Docker は組み込みコンテナランタイムとしてサポートされなくなりました。バージョン 1.24 以降にアップグレードする場合は、ノードのコンテナランタイムを Docker から containerd に移行する必要があります。
-
バージョン 1.30 以降では、CentOS および Alibaba Cloud Linux 2 はサポートされなくなりました。他のサポートされている オペレーティングシステム を使用できます。
-
バージョン管理に関連する運用負荷を軽減するために、自動クラスターアップグレードを有効にすることもできます。詳細については、「クラスターの自動アップグレード」をご参照ください。