このページは、ロードバランサをデプロイして Google Kubernetes Engine(GKE)クラスタのフリート全体にトラフィックを分散させるための最適な API を選択するのに役立ちます。
次の方法で、ロードバランサを GKE クラスタのフリートにアタッチできます。
マルチクラスタ Ingress リソースや MultiClusterService リソースなどのマルチクラスタ Ingress API を使用します。
Gateway API(GatewayClass、Gateway、HTTPRoute、Policy、ServiceExport、ServiceImport のリソース)を使用します。
Google Cloud コンソール、gcloud CLI、API、Terraform、Config Connector を使用してアプリケーション ロードバランサを設定し、スタンドアロン NEG をユーザー管理のバックエンド サービスに関連付けます。
次の表は、GKE クラスタのフリートにロードバランサを関連付ける方法を示しています。ロードバランサの機能比較ページに記載されている機能のうち、次の表に記載されていない機能は、ロード バランシング用の Kubernetes ネイティブ API に依存するものではなく、スタンドアロン NEG を使用するユーザー管理のロードバランサで動作します。
| ソリューション | マルチクラスタ Ingress | マルチクラスタ Gateway | スタンドアロン NEG を使用するユーザー管理のロードバランサ | 
|---|---|---|---|
| GKE プラットフォーム サポート | |||
| プロダクトのリリース ステージ | GA | GA | GA | 
| クラスタモード | Standard / Autopilot | Standard / Autopilot | Standard / Autopilot | 
| GKE バージョン | 1.18 以降 | GKE 1.24 以降(Standard の場合)、1.26 以降(Autopilot の場合) | 1.18 以降 | 
| アーキテクチャとコンポーネント | |||
| Google マネージド Kubernetes コントローラ | |||
| コントローラ | GKE マルチクラスタ Ingress コントローラ | GKE Gateway Controller | - | 
| コントローラの場所 | クラスタ外 (Google Cloud インフラストラクチャ)  | 
   クラスタ外 (Google Cloudインフラストラクチャ)  | 
   - | 
| API | Kubernetes ネイティブ API | Kubernetes ネイティブ API | Google Cloud API(gcloud CLI) | 
| API リソース | MultiClusterIngress、MultiClusterService | GatewayClass、Gateway、HTTPRoute、*Policy | - | 
| API リリース ステージ | 一般提供(v1) | 一般提供(v1) | - | 
| GKE での API の有効化 | Autopilot / Standard の両方でクラスタ設定 | Autopilot ではデフォルト
 Standard ではクラスタ設定  | 
   - | 
| マルチクラスタ サービスのサポート | |||
| マルチクラスタ サービス(MCS)が必要か | |||
| MCS API バージョン | networking.gke.io/v1 | net.gke.io/v1 | - | 
| リソースの種類 | MultiClusterService | ServiceExport | - | 
| ライセンス | 独自仕様 | オープンソース | - | 
| クラウド ネットワーキング リソースのライフサイクル管理(共有 VPC を除く) | |||
| 自動化されたフロントエンド IP アドレスの管理 | |||
自動化された Cloud ロードバランサの管理
   
  | 
   |||
| 自動化されたネットワーク エンドポイント グループ(NEG)の管理 | 
 (ゾーン NEG のみ)  | 
   
 (ゾーン NEG のみ)  | 
   
 (ゾーン NEG のみ。Kubernetes Service ではアノテーションが必要)  | 
  
| Cloud NGFW の管理 | |||
| 共有 VPC のサポート | |||
| ホスト プロジェクトのクラスタとフリート(ハブ) | |||
| 同じサービス プロジェクトのクラスタとフリート(ハブ) | 
 (ホスト プロジェクトにファイアウォール ルールの権限がある)  | 
   ||
| 異なるプロジェクト内のクラスタとフリート(ハブ) | 
 (プロジェクト間サービス参照を使用)  | 
  ||
| ロードバランサのサポート | |||
| アプリケーション ロードバランサ | |||
| 従来 | |||
| グローバル外部 | |||
| リージョン外部 | |||
| リージョン内部 | |||
| クロスリージョン内部 | |||
| プロキシ ネットワーク ロードバランサ | |||
| 従来 | |||
| グローバル外部 | |||
| リージョン外部 | |||
| 内部(常にリージョン) | |||
| パススルー ネットワーク ロードバランサ | |||
| 外部(常にリージョン) | |||
| 内部(常にリージョン) | |||
| クライアントとロードバランサの間のプロトコルのサポート | |||
| HTTP、HTTPS、HTTP/2 | |||
| WebSocket | |||
| HTTP/3(IETF QUIC に基づく) | |||
| SSL(TLS)または TCP | |||
| ロードバランサのバックエンド サポート | |||
| Pod(ゾーン NEG) | |||
| 仮想マシン(GKE ノードを含む) | 
 (推奨されません)  | 
   ||
その他のバックエンド:
  | 
   |||
| ロードバランサとバックエンドの間のプロトコルのサポート | |||
| HTTP、HTTPS、HTTP/2(いずれか 1 つ) | |||
| WebSocket | |||
| SSL(TLS)または TCP(いずれか 1 つ) | |||
| IP アドレス指定とプロトコル | |||
| 動的 IP アドレスの割り当て | |||
| 静的 IP アドレスの割り当て | |||
| 複数のポート(HTTP、HTTPS)に同じ IP アドレスを使用 | |||
| IPv6 | 
    (ロードバランサとバックエンドの間のトラフィックは IPv4 のまま)  | 
   
    (ロードバランサとバックエンドの間のトラフィックは IPv4 のまま)  | 
   
    (ロードバランサとバックエンドの間のトラフィックは IPv4 のまま)  | 
  
| ルーティングとトラフィック管理 | |||
| グローバル アクセス | |||
| プロジェクト間のロード バランシング | |||
| ホスト / パスのルーティング | 
 (接頭辞、完全一致)  | 
   
 (接頭辞、完全一致)  | 
   |
| ヘッダーベースのルーティング | 
 (完全一致)  | 
   ||
| パスのリダイレクト | |||
| URL の書き換え | |||
| トラフィック分割 | |||
| トラフィックのミラーリング | |||
| トラフィックのカットオーバー | |||
| トラフィック ベースの自動スケーリング | |||
| カスタム リクエスト ヘッダー | |||
| カスタム レスポンス ヘッダー | |||
| Namespace をまたがるルーティング | |||
| フロントエンドのセキュリティ | |||
| SSL ポリシー | |||
| HTTP から HTTPS へのリダイレクト | |||
| 複数の TLS 証明書のサポート | |||
| Kubernetes Secret ベースの証明書 | |||
| セルフマネージド SSL 証明書 | |||
| Google マネージド SSL 証明書 | |||
| Certificate Manager のサポート | |||
| バックエンド サービスのプロパティ | |||
| コネクション ドレインのタイムアウト | |||
| セッション アフィニティ | |||
| HTTP アクセス ロギングの構成 | |||
| バックエンド サービスのタイムアウト | |||
| カスタムのロードバランサのヘルスチェック構成 | |||
| バックエンド サービスへの TLS | |||
| カスタムのデフォルト バックエンド | |||
| Cloud CDN | 
 (一部の機能は除く)  | 
   
 (すべての機能)  | 
  |
| Identity-Aware Proxy(IAP) | |||
| Google Cloud Armor セキュリティ ポリシー | |||
次のステップ
- マルチクラスタ Ingress を設定する。
 - クラスタ間で Ingress をデプロイする。
 - マルチクラスタ ゲートウェイを有効にする。
 - マルチクラスタ ゲートウェイをデプロイする。
 - スタンドアロン ゾーン NEG によるコンテナ ネイティブのロード バランシング。