Cloud Service Mesh API リソースについて

Gateway API と Istio API を使用して GKE でサービス メッシュを構成すると、GKE で管理していた KRM ベースの API リソースが、一連の Google Cloud API リソースに自動的に変換されます。

  • 追加の請求は発生しません。
  • これらは、マネージド Cloud Service Mesh インフラストラクチャによってのみ管理されます(GKE クラスタで作成した API リソースに基づきます)。これらの Google Cloud API リソースは変更または削除できません。KRM API を変更すると、対応する Google Cloud API リソースの更新または削除がトリガーされます。Cloud Service Mesh サービス メッシュのプロビジョニングを解除すると、Google Cloud API リソースは自動的に削除されます。
  • 機能的には、GKE で管理していた API リソースと同等です。Cloud Service Mesh インフラストラクチャは、これらの API リソースに基づいて GKE クラスタのデータプレーンをプログラムします。 Google Cloud
  • 標準の Google Cloud API 割り当て制御が適用されます。現在の割り当て使用量は、 Google Cloud プロジェクトで確認できます。 Google Cloud リソース割り当てを超えると、データプレーンへの構成の伝播が停止します。 Google Cloud はプロジェクト レベルでリソース割り当てを適用し、これらの Google Cloud API リソースは、ユーザーが管理する同じタイプの Google Cloud API リソースと割り当てを共有します。

次の図は、GKE の API リソースが API リソースにマッピングされる方法の概要を示しています。 Google Cloud ほとんどの場合、GKE でサービス メッシュを使用するには API マッピングを理解する必要はありません。GKE でサービス メッシュを管理するのは Gateway API または Istio API を使用するためです。一方、API マッピングを大まかに理解しておくと、サービス メッシュのスケーリングに応じてGoogle Cloud API 割り当てをより効率的に計画、管理できます。

マネージド Cloud Service Mesh を使用した Istio API

GKE で管理する API リソースは、データプレーン内のトラフィックの動作のさまざまな側面を制御する一連の API リソースにマッピングされます。 Google Cloud これらのリソースには割り当てアラートを設定することをおすすめします。

項目 Istio API リソース Google Cloud API リソース スコープ 割り当てと上限 上限
トラフィック ルーティング VirtualService HTTPRoute
TCPRoute
TLSRoute
グローバル HTTPRoute 割り当て
TCPRoute 割り当て
TLSRoute 割り当て
サービスポートごとに 1 つ、Istio VirtualService HTTPRoute、TCPRoute、TLSRoute ごとに 1 つ。
サービス表現(ルート / ポリシー アタッチメント用) Service
ServiceEntry
BackendService グローバル BackendService の割り当て サービスポートごとに 1 つ(Istio ServiceEntry を含む)。
ワークロードのプロパティ(IP:port、ローカリティなど) Service
ServiceEntry
NetworkEndpointGroup ゾーン NetworkEndpointGroup の割り当て (サービスポート、ゾーン)あたり 1 つ。リージョン GKE クラスタでは、クラスタに少なくとも 1 つのノードがあるすべてのゾーンに、特定のサービスポートの NetworkEndpointGroup が作成されます。
ワークロードの健全性のモニタリング サービス HealthCheck ゾーン HealthCheck の割り当て GKE クラスタごとに 1 つ。
ワークロード ポリシーの接続ポイント PeerAuthentication
AuthorizationPolicy
RequestAuthentication EnvoyFilter
EndpointPolicy グローバル EndpointPolicy の割り当て サービスポートとワークロード ポリシーごとに 1 つ。
認証 PeerAuthentication ClientTlsPolicy
ServerTlsPolicy
グローバル ClientTlsPolicy の割り当て
ServerTlsPolicy の割り当て
サービスポートごとに 1 つの ClientTlsPolicy。TLS Gateway ごとに 1 つの ServerTlsPolicy。
承認 AuthorizationPolicy HttpFilter グローバル HttpFilter の割り当て Istio AuthorizationPolicy ごとに 1 つ
ゲートウェイ Gateway Gateway グローバル Gateway の割り当て Istio Gateway サーバーポートごとに 1 つ
トラフィック分散ポリシー GCPTrafficDistributionPolicy 1 ServiceLbPolicy グローバル ServiceLbPolicy の割り当て GCPTrafficDistributionPolicy ごとに 1 つ

サービス メッシュが異なるプロジェクトの複数のクラスタにまたがっている場合、すべてのGoogle Cloud リソースはフリート プロジェクトに作成されます。

1GCPTrafficDistributionPolicy は Istio API ではありません。Istio API を拡張して、高度なトラフィック管理を提供します。