Google Kubernetes Engine(GKE)のリリース チャンネルを使用して、機能の可用性と安定性のバランスを考慮してクラスタのバージョンを選択します。
GKE は、リリース チャンネルに登録されていないクラスタを含むすべてのクラスタを自動的にアップグレードし、クラスタにセキュリティ アップデート、既知の問題の修正、新機能を適用して、サポートされている Kubernetes バージョンが実行されるようにします。アップグレードのタイミングは、メンテナンスの時間枠と除外で制御できます。
クラスタをリリース チャンネルに登録することをおすすめします。これにより、メンテナンスの除外スコープに関して最大限の制御が可能になります。すべてアップグレードするのではなく、特定のタイプのアップグレードを無効にすることも、クラスタ アップグレードのロールアウト シーケンスを使用することもできます。Autopilot クラスタはリリース チャンネルにのみ登録できます。
リリース チャンネルに Standard クラスタを登録しない場合は、選択したノードプールのノードの自動アップグレードを無効にし、ノードプール内のノードのアップグレードを手動で管理します。ただし、クラスタのコントロール プレーンは自動的にアップグレードされ、バージョンがサポート終了になると、リリース チャンネルに登録しているかどうかに関係なく、クラスタのコントロール プレーンとノードが自動的にアップグレードされます。詳細については、リリース チャンネルに登録されているクラスタと登録されていないクラスタの比較をご覧ください。
利用できるチャンネル
次の表に、利用可能なリリース チャンネルのプロパティを示します。各プロパティには、機能の可用性と安定性の間にトレードオフがあります。どのチャンネルから提供されるリリースもサポート対象の GKE リリースであり、一般提供(GA)と見なされます(ただし、個々の機能は必ずしも一般提供とは限りません)。これらのチャンネルの Kubernetes リリースは正式な Kubernetes リリースであり、一般提供とベータ版の両方の Kubernetes API が含まれています。
チャネル | 新しい Kubernetes リリースの可用性 | このチャネルを使用するタイミング |
---|---|---|
Rapid | アップストリーム オープンソースの一般提供から数週間 | Kubernetes の最新リリースをできるだけ早く入手しておくと、一般提供が開始されたときにすぐに新しい GKE 機能を使用できます。クラスタは、パッチ バージョンが常に最新に保たれるように頻繁に更新され、新しい Kubernetes 機能が提供されます。Rapid チャンネルに登録したクラスタは一般提供バージョンを使用しますが、Rapid チャンネルを使用して本番前環境で新しい Kubernetes バージョンと API をテストすることをおすすめします。 |
Regular(デフォルト) | Rapid でのリリースから 2~3 か月後 | 一般提供後の早い段階で GKE と Kubernetes の新機能を使用できます。ただし、より長い期間かけて認定されたバージョンに限られます。機能の可用性とリリースの安定性のバランスが取れているため、ほとんどのユーザーにおすすめです。 |
Stable | Regular でのリリースから 2~3 か月後 | 新機能よりも安定性を優先します。GKE は、Rapid チャンネルと Regular チャンネルで検証された後、このチャンネルの変更と新しいバージョンをロールアウトします。これにより、検証により多くの時間をかけることができます。 |
Extended | Regular チャンネルに合わせて | このチャンネルを使用して長期サポートを利用すると、クラスタをできるだけ長くマイナー バージョンで維持することができます。詳しくは、Extended チャンネルで長期サポートを利用するをご覧ください。 |
チャンネルなし(この設定はおすすめしません)。 | Regular チャンネルに合わせて | このオプションはおすすめしません。コントロール プレーンとノードは、Regular チャンネルと Stable チャンネルに合わせて自動アップグレードされます。ノードプール レベルでノードの自動アップグレードを無効にする必要がある場合は、この構成オプションを使用できます。または、リリース チャンネルを使用して、クラスタレベルでノードの自動アップグレードを無効にすることもできます。詳細については、リリース チャンネルに登録されているクラスタと登録されていないクラスタの比較をご覧ください。 |
クラスタをリリース チャンネルに登録すると、そのクラスタは GKE リリース スケジュールの「自動アップグレード」列に示されている日付以降に自動的にアップグレードされます。
Rapid チャンネルに登録されたバージョンは、クラスタでの安定性が確認されると、Regular チャンネルに昇格します。最終的には、優先度の高いアップデートのみを提供する Stable チャンネルに昇格します。昇格はそれぞれ、そのバージョンを実行しているクラスタで観測されたパフォーマンスに基づいて、段階的な安定性レベルと本番環境の対応状況を表します。
重要なセキュリティ パッチは、クラスタと Google のインフラストラクチャを保護するため、すべてのリリース チャンネルに配信されます。急を要する状況では、GKE により、リリース チャンネルでまだ利用できないバージョンにクラスタが自動アップグレードされることがあります。
チャンネルで利用できるバージョン
各リリース チャンネルには複数のマイナー バージョンがあります。チャンネルで提供されるバージョンは、そのチャンネルの認定基準を満たしています。この利用可能なバージョンのセットには、クラスタ作成のデフォルト バージョンが含まれています。これは、そのチャンネルで利用可能なバージョンのセットから選択されます。リリース チャンネルで使用可能なバージョンを確認するには、リリース チャンネルのデフォルト バージョンと使用可能なバージョンを表示するの説明に従って操作します。
- 新しいパッチのリリースは、すべてのチャンネルで自動アップグレードの対象になる少なくとも 1 週間前から利用可能になります。
- 新しいマイナー リリースは、次のように利用可能になります。
- Rapid チャンネルの自動アップグレードの対象になる少なくとも 2 週間前。
- Regular チャンネルと Stable チャンネルで自動アップグレードの対象になる少なくとも 4 週間前。
本番環境をアップグレードする前に、新しく利用可能になった GKE バージョンをテストできます。たとえば、アップグレードの通知に登録すると、新しく利用可能になったバージョンに関する通知を受け取り、本番環境クラスタの自動アップグレードの対象になる前に本番前環境を新しいバージョンにアップグレードできます。
アップグレードの前に新しいバージョンを検証したり、テストする場合など、クラスタを特定のバージョンにしておく必要がある場合は、メンテナンスの除外を使用することをおすすめします。
マイナー バージョンは、リリース チャンネルで利用可能になってからサポート終了日になるまで、そのリリース チャンネルで新規または既存のクラスタに使用できます。
リリース チャンネルでバージョンが自動アップグレードの対象になった場合
GKE は、時間の経過とともにクラスタを新しい自動アップグレード ターゲットに自動的にアップグレードします。自動アップグレードの新たなターゲットが利用可能になると、GKE は特定のクラスタをその新しいバージョンにアップグレードする必要があるかどうかを評価します。GKE は、クラスタに自動アップグレードを妨げるメンテナンス ポリシーやその他の制約があるかどうかを検討します。特別な緊急事態を除き、これらの理由は無視されません。
クラスタの自動アップグレード ターゲットは、次の方法で確認できます。
- 特定のクラスタの自動アップグレード ターゲットを確認するには、クラスタのアップグレードに関する情報を取得するをご覧ください。
- [現在のバージョンの表] には、各リリース チャンネルの現在の自動アップグレードの対象のリストが表示されます。クラスタに適用される特定のバージョンは、クラスタのマイナー バージョンと特定の制約によって異なります。
- GKE リリースノートには、2024-R33 ノートなどのバージョンの更新で、特定のマイナー バージョンを実行するクラスタの自動アップグレードの新たなターゲットが一覧表示されます。
リリース チャンネルで新しいバージョンがクラスタのマイナー バージョンの自動アップグレードの対象になってから 10 日が経過しても、クラスタの自動アップグレードが開始しない場合は、次のいずれかの理由が考えられます。
- クラスタが一時的に自動アップグレードの対象外になっている。次の原因が考えられます。
- クラスタが、構成されたメンテナンスの時間枠の期間内でない。
- クラスタが、メンテナンスの除外の期間中である。
- 新しいマイナー バージョンで削除される非推奨の Kubernetes 機能がクラスタで使用されているため、自動アップグレードが一時的に停止している。
- 24 時間以内にクラスタがパッチ バージョンに自動的にアップグレードされた。
- 30 日以内にクラスタがマイナー バージョンに自動的にアップグレードされ、自動アップグレードの対象が新しいマイナー バージョンになった。
- 技術的またはビジネス上の理由で、GKE が新しい自動アップグレードの対象のロールアウトを一時停止した。
- 新しいバージョンで技術的な問題が見つかった。
- ブラック フライデーなど、重要なビジネス シーズンが原因で、本番環境がフリーズしている。
推奨される自動アップグレード ターゲットは?
推奨される自動アップグレードのターゲットは、GKE が時間の経過とともにクラスタを段階的にアップグレードするバージョンです。リリース チャンネル内のすべての自動アップグレード ターゲットのうち、GKE は自動アップグレードを実行するときに、このバージョンに近いクラスタに移動します。
自動アップグレードを妨げる制約がない限り、GKE は複数の自動アップグレードを通じて、クラスタがターゲットに到達するまで、リリース チャンネルの推奨される自動アップグレード ターゲットに近づけるようにクラスタをアップグレードします。ターゲットに達すると、クラスタは既存の推奨自動アップグレード ターゲットを継続的に使用し、新しい推奨ターゲットがリリースされると、新しい推奨ターゲットに移行します。
デフォルト バージョンとは
リリース チャンネルでクラスタを作成するとき、デフォルトでは、選択したリリース チャンネルのクラスタ作成のデフォルト パッチ バージョンがクラスタで使用されます。ただし、リリース チャンネルでクラスタを作成するときに、使用可能な別のバージョンを指定できます。
リリース チャンネルには、リリース チャンネルで利用可能な複数のマイナー バージョンがあります。デフォルト バージョンは、リリース チャンネルの自動アップグレードの対象の一つになる場合があります。
パッチ バージョンを早期に取得する
このセクションで説明する方法を使用すると、自動アップグレードまたは手動アップグレードで以前のパッチ バージョンを取得できます。
高速パッチ自動アップグレード
GKE は、新しいクラスタの作成と手動アップグレードでバージョンを利用可能にすることで、新しいパッチ バージョンをリリース チャンネルに導入します。GKE は、パッチ バージョンが適格であると判断すると、新しいパッチ バージョンを自動アップグレードの対象として設定します。つまり、GKE はクラスタをこの新しいパッチ バージョンに自動的にアップグレードし始めます。通常、バージョンが利用可能になってから自動アップグレードが行われるまでの期間は 1 週間以上ですが、リリース チャンネルとバージョンの認定に関する特定の状況によって異なります。
現在のバージョンの可用性について詳しくは、次の操作を行います。
- 現在のバージョンの表や、2025-R26 ノートなどのバージョンの更新のエントリを含む、GKE リリースノートのページをご覧ください。
- 利用可能なバージョンとデフォルト バージョンを確認して、リリース チャンネルで利用可能なバージョンを確認します。
バージョンが利用可能になるとすぐに、GKE がチャンネルでバージョンを自動アップグレードの対象として設定する前にパッチ アップグレードを受け取る場合は、高速パッチ自動アップグレードを使用できます。この設定は、自動アップグレードを通じてセキュリティ パッチをできるだけ早く受け取りたい場合に便利です。
GKE が、チャンネル内のクラスタを新しいパッチ バージョンに自動的にアップグレードする必要があると判断する前に、加速されたスケジュールでクラスタを自動的にアップグレードすることに関連するリスクを理解しておく必要があります。この短縮スケジュールでは、リリース チャンネルのパッチ バージョンの認定プロセスの手順がスキップされます。この加速スケジュールでは、セキュリティ パッチを含むパッチ バージョンだけでなく、すべてのパッチ バージョンがアップグレードされます。この設定はマイナー バージョンのアップグレードには影響せず、リリース チャンネルに登録されているクラスタでのみ使用できます。
この設定は、GKE がクラスタを新しいパッチ バージョンに自動アップグレードするタイミングにのみ影響します。GKE は、メンテナンスの時間枠と除外を遵守し、ロールアウト シーケンスの順序に従い、通常は自動アップグレードに使用される他の標準プラクティスを適用します。
この機能の設定の詳細については、高速パッチの自動アップグレードを使用するをご覧ください。
または、特定のパッチ バージョンが利用可能になったらすぐに、自動アップグレードの対象として設定される前にアップグレードする場合は、クラスタを手動でアップグレードできます。
新しいチャンネルからパッチ バージョンを実行する
リリース チャンネルに記載されている利用可能なパッチ バージョンに加えて、クラスタのリリース チャンネルでマイナー バージョンが利用可能で、gcloud CLI または GKE API を使用している場合は、クラスタが登録されているリリース チャンネルよりも新しいリリース チャンネルのパッチ バージョンを実行できます。
たとえば、Rapid チャンネルと Regular チャンネルで次のバージョンが利用できる場合:
- Rapid: 1.23.2-gke.700、1.22.4-gke.1500
- Regular: 1.21.4-gke.400、1.22.1-gke.400
GKE バージョン 1.22.1-gke.400 を実行し、Regular チャンネルに登録されているクラスタは、1.22.4-gke.1500 に手動でアップグレードできますが、マイナー バージョンが異なる 1.23.2-gke.700 にはアップグレードできません。
新しいチャンネルのパッチ バージョンに手動でアップグレードするには、クラスタのコントロール プレーンが同じマイナー バージョンでパッチリリースを実行する必要があります。たとえば、クラスタで 1.21.3-gke.200 を実行している場合は、まず、現在のリリース チャンネル(1.22.1-gke.400)で利用可能なパッチ バージョンにクラスタを手動でアップグレードする必要があります。その後、クラスタを 1.22.4-gke.1500 にアップグレードできます。
また、1.22.4-gke.1500 を実行し、Regular チャンネルに登録されている新しいクラスタを作成することもできます。
GKE は、クラスタが登録されているチャンネルで自動アップグレードの新たな対象が利用可能になるまで、クラスタを新しいチャンネルのパッチ バージョンのままにします。
チャンネルの最新情報を確認する
リリース チャンネルの新機能については、リリースノートをご覧ください。 全体を対象とするリリースノートだけではなく、各リリース チャンネルごとに個別のリリースノートも提供されています。
リリース チャンネル | リリースノート |
---|---|
Rapid チャンネル | HTML または Atom フィード |
Regular チャンネル | HTML または Atom フィード |
Stable チャンネル | HTML または Atom フィード |
クラスタに最適なリリース チャンネルを選択する
チャンネルには一般提供版の Kubernetes のみが含まれ、各チャンネルは Kubernetes および GKE リリースの品質レベルと成熟度を表します。次の図は、リリース チャンネルの導入サイクルを示しています。
この図に示されているように、利用可能なリリース チャンネルは、導入サイクルの途中でアーリー アドプター(Rapid チャンネル)、アーリー マジョリティ(Regular チャンネル)、マジョリティ(Stable チャンネル)などのバージョンを使用します。導入サイクルの最初の部分は、アップストリームの Kubernetes リリースを使用して最新機能をテストするイノベーターです。導入サイクルの最後の部分はレイト マジョリティです。サポート終了が近づいているバージョンを使用しているため、サポート対象バージョンに移行する必要があります。
本番前環境では、新しいバージョンに Rapid チャンネルを使用して、一般提供が開始したらすぐに機能をテストできます。
新しい機能より成熟度が重要となる本番環境のワークロードには、Regular(デフォルト)チャンネルまたは Stable チャンネルを使用することをおすすめします。
- 新機能を詳しくトラッキングする必要がある場合は、Regular チャンネルの使用を検討してください。このチャンネルでは、Kubernetes OSS バージョンの安定性と鮮度のバランスが保たれます。
- 要件が成熟度の場合(特に本番環境クラスタの場合)、Stable チャンネルを使用します。
GKE は、クラスタをチャンネルの品質基準に適合する新しいバージョンにアップグレードします。ただし、次の目的のため、クラスタを事前にアップグレードしておくことをおすすめします。
- アップグレードの制御と業務時間との調整がしやすくなる。
- 予測がしやすくなる。これは、リリース ターゲットを満たすクラスタ(つまり、次のターゲット バージョンに手動でアップグレードされたクラスタ)の自動アップグレードを GKE がスキップするためです。ノードは、コントロール プレーン バージョンに合わせて、脆弱性やサポートされていないバージョン スキューから保護するために、選択したチャンネルの推奨バージョンに自動的にアップグレードされます。
Extended チャンネルで長期サポートを利用する
GKE は、Extended チャンネルを通じて Kubernetes のマイナー バージョンの長期サポートを提供しています。このチャンネルでは、マイナー バージョンを最大 24 か月間使用できます。14 か月の標準サポート期間が終了すると、クラスタは Extended サポート期間でさらに約 10 か月間セキュリティ パッチを受け取ります。
GKE が Extended チャンネルでクラスタを自動的にアップグレードする仕組み
Extended チャンネルに登録されているクラスタの場合、GKE は次の方法でクラスタを自動的にアップグレードします。
- 標準サポートの期間中: GKE は、Regular チャンネルと同じ頻度で、クラスタを同じマイナー バージョンの新しいパッチ バージョンにアップグレードします。
- 延長サポートの期間中: GKE は、マイナー バージョンのセキュリティ パッチ アップデートを引き続き提供します。延長サポートの終了の約 2 か月前に、GKE はクラスタを次のマイナー バージョンにアップグレードし始めます。ただし、クラスタで非推奨の機能や API が使用されている場合は除きます。メンテナンスの除外を使用すると、延長サポートの終了までマイナー バージョンのアップグレードを防ぐことができます。
- 延長サポートの終了時: GKE は、ブロックする問題に関係なく、サポート対象外のマイナー バージョンを実行しているクラスタをすべてアップグレードします。この日付を過ぎたメンテナンスの除外は構成できません。
利用期間と拡張サポート期間中に GKE が提供するアップグレードの詳細については、GKE のマイナー バージョンのライフサイクルをご覧ください。
Extended チャンネルにクラスタを登録する場合の制限事項
Extended チャンネルに登録されているクラスタの次の制限を確認します。
- 拡張サポート期間中、GKE は、マイルストーンがサポート終了に達したときに、GKE マイナー バージョンで使用される Container-Optimized OS マイルストーンを更新します。GKE はパッチノードの自動アップグレードを一時停止し、クラスタ通知を送信します。この変更の詳細については、拡張サポート期間中の Container-Optimized OS のアップデートをご覧ください。
- サポート期間の延長は、クラスタの認証情報の有効期限を延長するものではありません。有効期限が切れる前にクラスタの認証情報をローテーションします。
次の機能を使用しているクラスタを Extended チャンネルに登録することはできません。
- Autopilot クラスタモード
- アルファ クラスタ
- 明示的に有効になっている Kubernetes ベータ版 API
- Gateway(GKE バージョン 1.30 以降の Extended チャンネルでのみサポート)
- Windows Server ノードプール
- Config Connector
- 次のマルチクラスタ機能:。
延長サポートの料金
クラスタを Extended チャンネルに登録する場合は、拡張サポートの料金を確認してください。クラスタが Extended チャンネルに登録され、クラスタのマイナー バージョンが延長サポート期間に入ると、従量課金が適用されます。
Extended チャンネルのベスト プラクティス
次のシナリオで、Extended チャンネルを使用してマイナー バージョンのアップグレードによる中断を最小限に抑える方法を理解してください。
サポートされているシナリオでは、チャンネルを最大限に活用するため、時間の経過とともに手動での操作が必要になります。次のマイナー バージョンに移行する予定がない場合は、クラスタをチャンネルに登録しないことをおすすめします。GKE は最終的に、他のチャンネルと同じ頻度でクラスタを新しいマイナー バージョンにアップグレードします。クラスタでコストが増加し、最後に新機能が提供される可能性があります。
サポートされているシナリオとサポートされていないシナリオ
サポートされているシナリオとサポートされていないシナリオの詳細については、次の表をご覧ください。詳しくは、長期サポートが必要な場合に Extended チャンネルを使用するをご覧ください。チェックマーク()は、サポートされているシナリオであることを示します。
アップグレード シナリオ | サポート対象 | 概要 | マイナー バージョンの変更間隔 | 手動での対応が必要 |
---|---|---|---|---|
マイナー バージョンを長期間維持する | アップグレードを妨げる問題を軽減するため、マイナー バージョンのままにします。 | 平均的な頻度は同じですが、1 つのマイナー バージョンでの中断時間が長くなります。 |
|
|
マイナー バージョンを年に 1~2 回手動でアップグレードする | クラスタ内のワークロードに最適な場合も、マイナー アップグレードの頻度を下げて新しい機能を入手します。 | 年に 1~2 回。 |
|
|
何もせずに同じ頻度でマイナー アップグレードを受け取る | 他のチャンネルと同じ頻度でマイナー バージョンのアップグレードを受け取り、新機能はできるだけ遅く受け取ります。 | 平均 4 か月ごと |
|
リリース チャンネルに登録されていないクラスタ
リリース チャンネルに登録されていないクラスタには制限事項があるため、この構成オプションはおすすめしませんが、リリース チャンネルに Standard クラスタを登録しないことも可能です(「チャンネルなし」とも呼ばれます、以前は静的でした)。個々のノードプールを自動的にはアップグレードできず、代わりに手動でそれらのノードをアップグレードする必要がある場合を除き、このオプションは使用しないでください。クラスタがリリース チャンネルに登録されていない場合は、選択したノードプールでノードの自動アップグレードを無効にすることができます。リリース チャンネルを使用すると、クラスタレベルですべてのノードプールにわたって同じ結果を得ることができます。ただし、リリース チャンネルに登録しているかどうかに関係なく、クラスタのコントロール プレーンはすべて自動的にアップグレードされ、バージョンがサポート終了になると、クラスタのコントロール プレーンとノードが自動的にアップグレードされます。
Standard クラスタ全体またはそのすべてのノードプールの自動アップグレードを避ける必要がある場合は、リリース チャンネルに登録されたクラスタでメンテナンスの除外を使用することをおすすめします。メンテナンスの除外を使用すると、すべてのノードプールのノードの自動アップグレードを無効にできます。一方、クラスタがリリース チャンネルに登録されていない場合は、ノードプール レベルでノードの自動アップグレードを無効にできます。
リリース チャンネルに登録されているクラスタと登録されていないクラスタの比較
次の表で、リリース チャンネルにクラスタを登録する場合と登録しない場合の類似点と違いを確認してください。
機能 | リリース チャンネルに登録されているクラスタ | リリース チャンネルに登録されていないクラスタ |
---|---|---|
共有アップグレードの動作 |
|
|
アップグレードのタイミング | それぞれのリリース チャンネルに合わせる |
|
高速パッチ自動アップグレード | 利用可能 | 利用不可 |
ノードプールの中断の制御 |
|
|
メンテナンスの時間枠 | 利用可能 | 利用可能 |
メンテナンスの除外 |
使用可能なメンテナンスの除外スコープ:
|
「アップグレードなし」スコープ(30 日間)に限定 |
ロールアウト シーケンス | フリートベースおよびスコープベースのシーケンスで利用可能 | 利用不可 |
長期サポート | Extended リリース チャンネルでのみ可能 | 利用不可 |
Autopilot | 利用可能 | 利用不可 |
Rapid チャンネル クラスタとアルファ クラスタの違い
Rapid リリース チャンネルを使用して作成されたクラスタは、アルファ クラスタではありません。以下の点が異なります。
- リリース チャンネルを使用するクラスタはアップグレード可能です。自動アップグレードが有効であり、無効にはできません。アルファ クラスタはアップグレードできません。
- リリース チャンネルを使用するクラスタに有効期限はありません。アルファ クラスタは 30 日後に期限が切れます。
- アルファ版 Kubernetes API は、リリース チャンネルを使用するクラスタでは有効化できません。
次のステップ
- リリース チャンネルの使用方法を学習する。
- クラスタのアップグレードについて学習する。
- クラスタのアップグレードの可視性を高める方法を学習する。
- クラスタ通知について学習する。
- ロールアウト シーケンスを使用して、環境全体でクラスタの自動アップグレードを管理する方法を学習する。