了解 Cloud Service Mesh API 资源
当您使用 Gateway API 和 Istio API 在 GKE 上配置服务网格时,您在 GKE 上管理的基于 KRM 的 API 资源将自动转换为一组 Google Cloud API 资源:
- 您无需为此支付任何额外费用。
- 它们由托管式 Cloud Service Mesh 基础架构(基于您在 GKE 集群中创建的 API 资源)专门管理。您将无法修改或删除这些 API 资源。 Google Cloud 对 KRM API 所做的更改会触发相应 API 资源的更新或移除。 Google Cloud 当您停用 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 资源如何映射到 Google Cloud API 资源。在大多数情况下,您无需了解 API 映射即可在 GKE 上使用服务网格,因为您将使用 Gateway API 或 Istio API 在 GKE 上管理服务网格。另一方面,如果您大致了解 API 映射,则有助于您在服务网格扩容时更高效地规划和管理Google Cloud API 配额。
将 Istio API 与托管式 Cloud Service Mesh 搭配使用
您在 GKE 上管理的 API 资源将映射到一组 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 集群中,对于给定的服务端口,集群在至少有一个节点的每个可用区中都会创建一个 NetworkEndpointGroup。 |
工作负载运行状况监控 | 服务 | HealthCheck | 可用区级 | HealthCheck 配额 | 每个 GKE 集群 1 个。 |
工作负载政策附加点 |
PeerAuthentication AuthorizationPolicy RequestAuthentication EnvoyFilter |
EndpointPolicy | 全球 | EndpointPolicy 配额 | 每个服务端口和每个工作负载政策 1 个。 |
身份验证 | PeerAuthentication |
ClientTlsPolicy ServerTlsPolicy |
全球 |
ClientTlsPolicy 配额 ServerTlsPolicy 配额 |
每个服务端口 1 个 ClientTlsPolicy。每个 TLS 网关 1 个 ServerTlsPolicy。 |
授权 | AuthorizationPolicy | HttpFilter | 全球 | HttpFilter 配额 | 每个 Istio AuthorizationPolicy 1 个 |
网关 | 网关 | 网关 | 全球 | 网关配额 | 每个 Istio Gateway 服务器端口 1 个 |
流量分配政策 | GCPTrafficDistributionPolicy 1 | ServiceLbPolicy | 全球 | ServiceLbPolicy 配额 | 每个 GCPTrafficDistributionPolicy 1 个 |
如果您的服务网格跨不同项目中的多个集群,则所有Google Cloud 资源都将在舰队项目中创建。
1GCPTrafficDistributionPolicy 不是 Istio API。它增强了 Istio API,以提供高级流量管理功能。