このページでは、Google Kubernetes Engine(GKE)で利用可能な GatewayClass リソースとサポートされている仕様について説明します。
表の凡例
このページの表では次の凡例を使用しています。
- は、フィールドがサポートされていることを示します。
-
は、フィールドがサポートされていないことを示します。- GKE がこのフィールドの一部の値をサポートしている場合は、どの値がサポートされているのかを表に示します。
GatewayClass の機能
次の表に、GKE で使用可能な GatewayClass リソースの機能を示します。
アーキテクチャ
機能 | gke-l7-global-external-managed |
gke-l7-global-external-managed-mc |
gke-l7-regional-external-managed |
gke-l7-regional-external-managed-mc |
gke-l7-rilb |
gke-l7-rilb-mc |
gke-l7-gxlb |
gke-l7-gxlb-mc |
---|---|---|---|---|---|---|---|---|
GKE Gateway Controller | Google がホストする Gateway Controller | |||||||
ロケーション | Google Cloud インフラストラクチャ | |||||||
プラットフォーム | GKE | |||||||
クラスタタイプ | GKE Autopilot または GKE Standard | |||||||
クラスタのスコープ | 単一クラスタ | マルチクラスタ | 単一クラスタ | マルチクラスタ | 単一クラスタ | マルチクラスタ | 単一クラスタ | マルチクラスタ |
GKE バージョン | GKE Autopilot: 1.26 以降 GKE Standard: 1.24 以降 |
|||||||
API のタイプ | CRD | |||||||
CRD バージョン | 新しいクラスタとクラスタのアップグレード: GKE 1.24~1.27.10、1.28.4、1.29.0: 0.7.0 GKE 1.27.10 以降、1.28.4 以降、1.29.0~1.29.2: 0.8.1 GKE 1.29.3-gke.1282001、1.30.0-gke.1000000 以降: 1.0.0 |
|||||||
API バージョン | gateway.networking.k8s.io/v1beta1 (CRD バージョン: 0.7.0 以降、1.0.0 を含む)gateway.networking.k8s.io/v1 (CRD バージョン: 1.0.0 以降) |
|||||||
API の有効化 | GKE Autopilot: デフォルトで有効 | |||||||
リリース ステージ | 一般提供 |
マルチクラスタ サービス
機能 | gke-l7-global-external-managed |
gke-l7-global-external-managed-mc |
gke-l7-regional-external-managed |
gke-l7-regional-external-managed-mc |
gke-l7-rilb |
gke-l7-rilb-mc |
gke-l7-gxlb |
gke-l7-gxlb-mc |
---|---|---|---|---|---|---|---|---|
必須 | ||||||||
API のバージョン | net.gke.io/v1 |
net.gke.io/v1 |
net.gke.io/v1 |
net.gke.io/v1 |
||||
リソースの種類 | ServiceExport | ServiceExport | ServiceExport | ServiceExport |
ロードバランサ
機能 | gke-l7-global-external-managed |
gke-l7-global-external-managed-mc |
gke-l7-regional-external-managed |
gke-l7-regional-external-managed-mc |
gke-l7-rilb |
gke-l7-rilb-mc |
gke-l7-gxlb |
gke-l7-gxlb-mc |
---|---|---|---|---|---|---|---|---|
タイプ | グローバル外部アプリケーション ロードバランサ | リージョン外部アプリケーション ロードバランサ | 内部アプリケーション ロードバランサ | 従来のアプリケーション ロードバランサ | ||||
ロードバランサのスコープ | グローバル | リージョン | リージョン | グローバル | ||||
コンテナ ネイティブのロード バランシング | (デフォルト、GCE_VM_IP_PORT ゾーン NEG を使用) |
VPC
機能 | gke-l7-global-external-managed |
gke-l7-global-external-managed-mc |
gke-l7-regional-external-managed |
gke-l7-regional-external-managed-mc |
gke-l7-rilb |
gke-l7-rilb-mc |
gke-l7-gxlb |
gke-l7-gxlb-mc |
---|---|---|---|---|---|---|---|---|
共有 VPC のサポート | 同じ共有 VPC ホストまたはサービス プロジェクト内のすべてのクラスタとフリート ホスト プロジェクト | |||||||
複数ルートの共有ゲートウェイ / Ingress | ||||||||
自動化された VPC ファイアウォール ライフサイクル管理 |
注: 共有 VPC 環境の Gateway には、ファイアウォール ルールを手動でデプロイする必要があります。 詳細については、Gateway に必要なファイアウォール ルールをご覧ください。 |
Gateway IP アドレス
機能 | gke-l7-global-external-managed |
gke-l7-global-external-managed-mc |
gke-l7-regional-external-managed |
gke-l7-regional-external-managed-mc |
gke-l7-rilb |
gke-l7-rilb-mc |
gke-l7-gxlb |
gke-l7-gxlb-mc |
---|---|---|---|---|---|---|---|---|
Gateway IP アドレスの割り当て | 静的または動的 | |||||||
Network Service Tiers の IP アドレス | プレミアム ティア | スタンダード ティア | プレミアム ティア | プレミアム ティア | ||||
ゲートウェイ IP アドレスのネットワーク到達性 | インターネット | インターネット | VPC 内部 | インターネット | ||||
複数のポート(HTTP、HTTPS)に同じ IP アドレスを使用 |
ルーティングとトラフィック管理
機能 | gke-l7-global-external-managed |
gke-l7-global-external-managed-mc |
gke-l7-regional-external-managed |
gke-l7-regional-external-managed-mc |
gke-l7-rilb |
gke-l7-rilb-mc |
gke-l7-gxlb |
gke-l7-gxlb-mc |
---|---|---|---|---|---|---|---|---|
グローバル アクセス | グローバル ロードバランサの暗黙的な設定 | グローバル ロードバランサの暗黙的な設定 | グローバル ロードバランサの暗黙的な設定 | |||||
クロスリージョン バックエンド ロード バランシング | ||||||||
プロジェクト間のロード バランシング | バックエンド サービスと NEG は同じプロジェクト内に存在する必要があります (GKE Gateway Controller で管理) |
|||||||
Namespace をまたがるルーティング | ||||||||
ホスト / パスのルーティング | 接頭辞、完全一致 | |||||||
ヘッダーベースのルーティング | 完全一致 | |||||||
パスのリダイレクト | ||||||||
URL の書き換え | ||||||||
トラフィック分割 | ||||||||
トラフィックのミラーリング | ||||||||
トラフィックのカットオーバー | ||||||||
トラフィック ベースの自動スケーリング | プレビュー | プレビュー | プレビュー | プレビュー | ||||
カスタム リクエスト ヘッダー | ||||||||
カスタム レスポンス ヘッダー |
フロントエンドのセキュリティ
機能 | gke-l7-global-external-managed |
gke-l7-global-external-managed-mc |
gke-l7-regional-external-managed |
gke-l7-regional-external-managed-mc |
gke-l7-rilb |
gke-l7-rilb-mc |
gke-l7-gxlb |
gke-l7-gxlb-mc |
---|---|---|---|---|---|---|---|---|
SSL ポリシー | ||||||||
HTTP から HTTPS へのリダイレクト | ||||||||
複数の TLS 証明書のサポート | ||||||||
Kubernetes Secret ベースの証明書 | ||||||||
セルフマネージド Compute Engine SSL 証明書 | ||||||||
Google マネージド Compute Engine SSL 証明書 | ||||||||
Certificate Manager を使用したセルフマネージド SSL 証明書 | ||||||||
Certificate Manager を使用した Google マネージド SSL 証明書 |
バックエンド サービスのプロパティ
機能 | gke-l7-global-external-managed |
gke-l7-global-external-managed-mc |
gke-l7-regional-external-managed |
gke-l7-regional-external-managed-mc |
gke-l7-rilb |
gke-l7-rilb-mc |
gke-l7-gxlb |
gke-l7-gxlb-mc |
---|---|---|---|---|---|---|---|---|
コネクション ドレインのタイムアウト | ||||||||
セッション アフィニティ | ||||||||
HTTP アクセス ロギングの構成 | ||||||||
バックエンド サービスのタイムアウト | ||||||||
カスタムのロードバランサのヘルスチェック構成 | ||||||||
バックエンド サービスへの TLS | ||||||||
サポートされているバックエンド サービス プロトコル | HTTP、HTTPS、HTTP/2 | |||||||
カスタムのデフォルト バックエンド |
その他の Google Cloud サービス
機能 | gke-l7-global-external-managed |
gke-l7-global-external-managed-mc |
gke-l7-regional-external-managed |
gke-l7-regional-external-managed-mc |
gke-l7-rilb |
gke-l7-rilb-mc |
gke-l7-gxlb |
gke-l7-gxlb-mc |
---|---|---|---|---|---|---|---|---|
Identity-Aware Proxy(IAP) | ||||||||
Google Cloud Armor バックエンド セキュリティ ポリシー | ||||||||
Cloud CDN |
サポートされている Gateway API フィールド
次の表に、GKE でサポートされている Gateway API 仕様のフィールドを示します。
ゲートウェイ
spec.addresses
詳細については、Gateway のドキュメントで spec.addresses
をご覧ください。
フィールド | gke-l7-global-external-managed |
gke-l7-global-external-managed-mc |
gke-l7-regional-external-managed |
gke-l7-regional-external-managed-mc |
gke-l7-rilb |
gke-l7-rilb-mc |
gke-l7-gxlb |
gke-l7-gxlb-mc |
---|---|---|---|---|---|---|---|---|
type |
NamedAddress |
|||||||
value |
静的グローバル外部アドレス | 静的リージョン外部アドレス | 静的リージョン内部アドレス | 静的グローバル外部アドレス |
spec.listeners
詳細については、Gateway のドキュメントで spec.listeners
をご覧ください。
フィールド | gke-l7-global-external-managed |
gke-l7-global-external-managed-mc |
gke-l7-regional-external-managed |
gke-l7-regional-external-managed-mc |
gke-l7-rilb |
gke-l7-rilb-mc |
gke-l7-gxlb |
gke-l7-gxlb-mc |
---|---|---|---|---|---|---|---|---|
protocol |
HTTP、HTTPS | |||||||
port |
80 または 8080(HTTP)、443(HTTPS) | |||||||
name |
||||||||
hostname |
||||||||
tls |
||||||||
allowedRoutes |
spec.listeners.tls
詳細については、Gateway のドキュメントで spec.listeners.tls
をご覧ください。
フィールド | gke-l7-global-external-managed |
gke-l7-global-external-managed-mc |
gke-l7-regional-external-managed |
gke-l7-regional-external-managed-mc |
gke-l7-rilb |
gke-l7-rilb-mc |
gke-l7-gxlb |
gke-l7-gxlb-mc |
---|---|---|---|---|---|---|---|---|
mode |
Terminate |
|||||||
certificateRefs |
spec.listeners.tls.options
詳細については、Gateway のドキュメントで spec.listeners.tls.options
をご覧ください。
フィールド | gke-l7-global-external-managed |
gke-l7-global-external-managed-mc |
gke-l7-regional-external-managed |
gke-l7-regional-external-managed-mc |
gke-l7-rilb |
gke-l7-rilb-mc |
gke-l7-gxlb |
gke-l7-gxlb-mc |
---|---|---|---|---|---|---|---|---|
networking.gke.io/pre-shared-certs |
グローバル SSL 証明書リソースのリファレンス(セルフマネージドまたは Google マネージド) | リージョン、セルフマネージド SSL 証明書リソースのリファレンス | リージョン、セルフマネージド SSL 証明書リソースのリファレンス | グローバル SSL 証明書リソースのリファレンス(セルフマネージドまたは Google マネージド) |
HTTPRoute
次の表に、GKE でサポートされている HTTPRoute API 仕様の値を示します。
spec.parentRefs
詳細については、Gateway のドキュメントで spec.parentRefs
をご覧ください。
フィールド | gke-l7-global-external-managed |
gke-l7-global-external-managed-mc |
gke-l7-regional-external-managed |
gke-l7-regional-external-managed-mc |
gke-l7-rilb |
gke-l7-rilb-mc |
gke-l7-gxlb |
gke-l7-gxlb-mc |
---|---|---|---|---|---|---|---|---|
parentRefs.group |
||||||||
parentRefs.kind |
||||||||
parentRefs.namespace |
||||||||
parentRefs.name |
||||||||
parentRefs.sectionName |
||||||||
parentRefs.port |
spec.hostnames
詳細については、Gateway のドキュメントで spec.hostnames
をご覧ください。
フィールド | gke-l7-global-external-managed |
gke-l7-global-external-managed-mc |
gke-l7-regional-external-managed |
gke-l7-regional-external-managed-mc |
gke-l7-rilb |
gke-l7-rilb-mc |
gke-l7-gxlb |
gke-l7-gxlb-mc |
---|---|---|---|---|---|---|---|---|
precise, wildcard |
spec.rules
詳細については、Gateway のドキュメントで spec.rules
をご覧ください。
フィールド | gke-l7-global-external-managed |
gke-l7-global-external-managed-mc |
gke-l7-regional-external-managed |
gke-l7-regional-external-managed-mc |
gke-l7-rilb |
gke-l7-rilb-mc |
gke-l7-gxlb |
gke-l7-gxlb-mc |
---|---|---|---|---|---|---|---|---|
path.type |
Exact, PathPrefix |
|||||||
path.value |
||||||||
headers.type |
Exact |
|||||||
headers.name |
||||||||
headers.value |
||||||||
queryParams |
||||||||
method |
spec.rules.backendRefs
詳細については、Gateway のドキュメントで spec.rules.backendRefs
をご覧ください。
フィールド | gke-l7-global-external-managed |
gke-l7-global-external-managed-mc |
gke-l7-regional-external-managed |
gke-l7-regional-external-managed-mc |
gke-l7-rilb |
gke-l7-rilb-mc |
gke-l7-gxlb |
gke-l7-gxlb-mc |
---|---|---|---|---|---|---|---|---|
backendRef.group |
(empty), gateway.networking.k8s.io, net.gke.io |
|||||||
backendRef.kind |
Service |
ServiceImport |
Service |
ServiceImport |
Service |
ServiceImport |
Service |
ServiceImport |
backendRef.name |
||||||||
backendRef.namespace |
||||||||
backendRef.port |
||||||||
backendRef.weight |
||||||||
backendRef.filters |
spec.rules.filters
詳細については、Gateway のドキュメントで spec.rules.filters
をご覧ください。
フィールド | gke-l7-global-external-managed |
gke-l7-global-external-managed-mc |
gke-l7-regional-external-managed |
gke-l7-regional-external-managed-mc |
gke-l7-rilb |
gke-l7-rilb-mc |
gke-l7-gxlb |
gke-l7-gxlb-mc |
---|---|---|---|---|---|---|---|---|
type |
requestHeaderModifier, responseHeaderModifier, requestMirror, requestRedirect, urlRewrite |
|||||||
requestHeaderModifier.add |
||||||||
requestHeaderModifier.remove |
||||||||
requestHeaderModifier.set |
||||||||
responseHeaderModifier.add |
||||||||
responseHeaderModifier.remove |
||||||||
responseHeaderModifier.set |
||||||||
requestMirror.backendRef |
||||||||
requestRedirect.scheme |
HTTP, HTTPS |
|||||||
requestRedirect.hostname |
||||||||
requestRedirect.path |
replaceFullPath, replacePrefixMatch |
|||||||
requestRedirect.port |
||||||||
requestRedirect.statusCode |
||||||||
urlRewrite.hostname |
||||||||
urlRewrite.path |
replacePrefixMatch |