このページでは、Kubernetes フィーチャー ゲートが Google Kubernetes Engine(GKE)でどのように機能するかについて説明します。フィーチャー ゲートは、Kubernetes 機能を切り替える一連の Key-Value ペアです。GKE では、アルファ クラスタでのみ Kubernetes フィーチャー ゲートを変更できます。詳細については、アルファ クラスタをご覧ください。
Kubernetes プロジェクトでは、新機能がステージで段階的にリリースされます。機能は、アルファ版、ベータ版、一般提供ステージのいずれかです。
バージョン 1.26 以降を実行しているクラスタで有効な機能を確認するには、フィーチャー ゲートの状態を確認するをご覧ください。
クラスタのコントロール プレーンまたはノードのバージョンに対応する機能のステージを確認するには、Kubernetes ドキュメントのアルファ版またはベータ版の機能のフィーチャー ゲートの表をご覧ください。
GKE の一般提供版 Kubernetes 機能
一般提供(安定ともいいます)Kubernetes 機能はデフォルトで GKE で有効になっており、無効にすることはできません。
GKE の Kubernetes ベータ版の機能
ベータ版機能は通常、GKE でデフォルトで有効になっています。機能の既知の問題を緩和するために、または下位互換性を確保するために、あるいは GKE での機能の統合と認定がまだ完了していないことを理由に、GKE は特定のバージョンの特定のベータ版機能を無効にすることがあります。
バージョン 1.26 以降を実行している GKE クラスタで Kubernetes のベータ版機能を使用する場合は、フィーチャー ゲートの状態を確認して、該当の機能が有効になっていることを確認してください。クラスタで 1.26 より前のバージョンが実行されている場合は、該当の機能をテストすることによって、その機能が有効になっているかどうかを確認できます。
ベータ版の機能が GKE クラスタのコントロール プレーンまたはノードのバージョンで有効になっていることを確認できない場合は、Cloud カスタマーケアにお問い合わせください。
GKE クラスタでの Kubernetes ベータ版 API
GKE クラスタでは、Kubernetes ベータ版の機能に加えて、Kubernetes ベータ版 API も使用できます。バージョン 1.24 以降で導入されたベータ版 API の場合は、クラスタごと、リソースごとにベータ版 API を構成する必要があります。詳細については、GKE クラスタで Kubernetes ベータ版 API を使用するをご覧ください。
GKE の Kubernetes アルファ版の機能
デフォルトでは、Kubernetes アルファ版の機能は、アルファ クラスタを除くすべての GKE クラスタで無効になっています。GKE では、特定のコントロール プレーン バージョンで特定のアルファ版機能が有効になっている場合があります。
アルファ クラスタでは、Kubernetes のバージョンで使用可能なすべてのアルファ版機能のフィーチャー ゲートが有効になり、デフォルト値に応じて一部のベータ版機能のフィーチャー ゲートが有効になります。特定のバージョンで使用可能なフィーチャー ゲートと、デフォルトで有効になっているベータ版機能の詳細については、Kubernetes ドキュメントのアルファ版またはベータ版機能のフィーチャー ゲートをご覧ください。特定のフィーチャー ゲートを選択して変更することもできます。詳細については、フィーチャー ゲートとアルファ クラスタをご覧ください。
Kubernetes アルファ版の機能をすべて有効にするには、アルファ版の Standard クラスタを作成します。
フィーチャー ゲートの状態を確認する
バージョン 1.26 以降を実行しているクラスタでは、kubectl
コマンドを実行して、有効になっている機能を確認できます。
GKE クラスタのフィーチャー ゲートの状態を確認するには:
- kubectl をインストールしてアクセスを構成します。
次のコマンドを実行します。
kubectl get --raw /metrics | grep kubernetes_feature_enabled
出力には、次の例のように、フィーチャー ゲートの名前、対応するステージ(
""
は一般提供)、フィーチャー ゲートが有効かどうかが表示されます。1
は有効、0
は無効を意味します。次の出力例をご覧ください。
# HELP kubernetes_feature_enabled [BETA] This metric records the data about the stage and enablement of a k8s feature. # TYPE kubernetes_feature_enabled gauge kubernetes_feature_enabled{name="APIListChunking",stage=""} 1 kubernetes_feature_enabled{name="APIPriorityAndFairness",stage=""} 1 kubernetes_feature_enabled{name="APIResponseCompression",stage="BETA"} 1 kubernetes_feature_enabled{name="APISelfSubjectReview",stage=""} 1 kubernetes_feature_enabled{name="APIServerIdentity",stage="BETA"} 1 kubernetes_feature_enabled{name="APIServerTracing",stage="BETA"} 1 kubernetes_feature_enabled{name="AdmissionWebhookMatchConditions",stage="BETA"} 1 ...
この出力では、たとえば、
APIResponseCompression
機能が有効でベータ版であることが示されています。
次のステップ
- 現在の Kubernetes の機能の完全なリストについては、フィーチャー ゲートをご覧ください。
- GKE の機能の完全なリストについては、GKE のリリースノートをご覧ください。