アンビエント ネットワーキングの概要

GKE アンビエント ネットワーキングは、レイヤ 4 機能を備えたサービス メッシュに、簡素化されたサイドカーレス デプロイ モデルを提供します。プロキシ機能を GKE Dataplane V2(DPv2)に統合されたノードレベルのコンポーネントに移動することで、アンビエント ネットワーキングはリソース オーバーヘッドを削減し、プロキシ更新のためのワークロードの再起動を不要にし、メッシュのライフサイクル管理を簡素化します。

機能

GKE アンビエント ネットワーキングのプレビューでは、シングルクラスタのレイヤ 4 メッシュ機能がサポートされています。

  • 相互 TLS(mTLS): 暗号化された転送と ID 認証を適用します。
  • サービス ディスカバリ: サービスを検出し、ワークロード間で接続を自動的にルーティングします。
  • レイヤ 4 トラフィック管理: TCP トラフィックのロード バランシングとルーティングを行います。
  • レイヤ 4 テレメトリー: ネットワーク トラフィック、接続、エラーの指標を Cloud Observability に出力します。これらの指標の可視化と分析の詳細については、Network Services Monitoring の概要をご覧ください。

アンビエント ネットワーキングのメリット

サイドカーベースのサービス メッシュ アーキテクチャと比較すると、アンビエント ネットワーキングには、運用とリソースに関するいくつかの重要な利点があります。

  • ライフサイクル管理の簡素化: サイドカー プロキシとアプリケーション コンテナ間の運命共有モデルを排除します。ワークロード Pod を再起動したり、アプリケーションのダウンタイムを発生させたりすることなく、ノードレベルでプロキシの更新、セキュリティ パッチ、アップグレードを適用できます。

  • リソース消費量の削減: プロキシを共有ノードレベルのインスタンスに統合し、サイドカー モデルと比較して CPU とメモリのオーバーヘッドを最大 90% 削減します。

  • サイドカーのリスクの排除: コンテナ プロキシ バイパスの脆弱性、スティッキー接続の中断、信頼性の低い接続終了の伝播など、一般的なサイドカーの問題を解決します。

  • ネイティブ Cloud de Confiance by S3NS プラットフォーム統合: GKE Dataplane V2(DPv2)、マネージド Workload Identity、Certificate Authority Service(CAS)、Google Cloud Observability とネイティブに統合されます。

相互運用性とスコープ

このアンビエント ネットワーキングのプレビュー期間中は、次のスコープと相互運用性の制約に注意してください。

  • Gateway API の要件: アンビエント ネットワーキングには Gateway API が必要です。Istio API はサポートされていません。
  • ワークロードの相互運用性: アンビエント ネットワーキングに登録されたワークロードは、サイドカーが挿入されたワークロード(GKE、Compute Engine、Cloud Run)またはプロキシレス gRPC ワークロードと相互運用できません。

アーキテクチャとコンポーネント

アンビエント ネットワーキングは、Envoy サイドカーをワークロード Pod に挿入するのではなく、各ノードの GKE Dataplane V2(DPv2)に直接統合されます。

既存のコントロール プレーン コンポーネント

アンビエント ネットワーキングは、コントロール プレーン コンポーネントに依存して、ポリシーの配布、構成の変換、証明書の発行を行います。

  • Traffic Director: ポリシーの配布とルーティング構成用の xDS コントロール プレーンを提供します。
  • GKE Gateway Controller: Kubernetes カスタム リソースを Traffic Director 構成に変換します。
  • Certificate Authority Service(CAS): マネージド Workload Identity を使用して、ワークロードの X.509 ID 証明書を発行します。
  • GKE クラスタ コントロール プレーン: 証明書署名リクエスト(CSR)を承認し、CAS にルーティングします。

ノード コンポーネント

アンビエント ネットワーキングでは、各クラスタノードでワークロード トラフィックを直接インターセプトしてプロキシするために、ノードごとに次のコンポーネントがインストールされます。

  • GKE アンビエント NRI プラグイン: Pod トラフィックをインターセプトしてプロキシにリダイレクトするように低レベル ネットワーキングを構成する Node Resource Interface(NRI)プラグイン。

  • GKE アンビエント プロキシ: リスニング ソケットを管理し、Traffic Director から xDS ルールを受信し、GKE コントロール プレーンからオンデマンドで X.509 ID 証明書を取得し、レイヤ 4 トラフィックをプロキシするノードレベルのプロキシ。

ノードレベルのアンビエント データプレーン コンポーネントは、gke-managed-ambient Namespace で DaemonSet として実行され、GKE コントロール プレーンとともに自動的にバージョニング、パッチ適用、アップグレードが行われます。

ターゲット スケールと上限

プレビュー期間中、アンビエント ネットワーキングには次のスコープと相互運用性の制限があります。

リソース指標 GKE DPv2(アンビエントあり) 標準の GKE DPv2(アンビエントなし)
クラスタあたりのノード数 500 7,500
クラスタあたりの Service 数 300 10,000
クラスタあたりの Pod 数 5,000 200,000
ノードあたりの最大 Pod 数 256 256

一般的な GKE クラスタの割り当てについては、クラスタの上限と GKE GKE Dataplane V2 の仕様をご覧ください。

料金

アンビエント ネットワーキングの料金と運用リソースの料金に関する詳細は、以下をご覧ください。

  • アンビエント ラベル networking.gke.io/dataplane-mode=ambient が付いた Namespace 内のすべての Pod には、1 時間あたり $0.004(1 分あたり $0.00006667、1 か月あたり約 $2.90)が課金されます。プレビュー期間中は課金されません。
  • Cloud Observability(Cloud Monitoring / Cloud Logging)と Certificate Authority Service の標準の使用料金が適用されます。

Gateway API リソースについて

アンビエント ネットワーキングを使用すると、クラスタで管理する Kubernetes Gateway API カスタム リソースが、一連のマネージドCloud de Confiance by S3NS API リソースに自動的に変換されます。

機能 マネージド Cloud de Confiance by S3NS API リソース 範囲 カーディナリティ
Mesh Mesh リージョン クラスタごとに 1 つ
サービス ルーティング TCPRoute リージョン クラスタごとに 1 つ、GCPClientTLSPolicy の対象となる Service ごとに 1 つ
サービス表現 BackendService リージョン クラスタごとに 1 つ
クライアント認証 ClientTlsPolicy リージョン クラスタごとに 1 つ
サーバー認証 ServerTlsPolicy リージョン クラスタあたり 3
サーバー認証 EndpointPolicy リージョン GCPServerTLSPolicy ごとに 1 つ、さらに portOverrides 内の個別の mTLS モードごとに 1 つ
承認 AuthzPolicy リージョン enforcementLevel: L4 を使用する各 GCPAuthzPolicy の Pod targetRef ごとに 1 つ
下り(外向き)ルーティング EgressRouting リージョン GCPEgressPolicy を持つ Namespace ごとに 1 つ

次のステップ