为 GKE 选择多集群负载均衡 API


本页面可帮助您选择较合适的 API 来部署负载均衡器,以便在一组 Google Kubernetes Engine (GKE) 集群之间分配流量。

您可以通过以下方式将负载均衡器连接到 GKE 集群舰队:

  1. 使用多集群 Ingress API,例如多集群 IngressMultiClusterService 资源。

  2. 使用 Gateway API(GatewayClassGatewayHTTPRoutePolicyServiceExportServiceImport 资源)。

  3. 使用 Google Cloud 控制台、gcloud CLI、API、Terraform、Config Connector 设置应用负载均衡器,并将独立 NEG 附加到用户管理的后端服务。

下表列出了将负载均衡器关联到 GKE 集群舰队的不同方式。负载均衡器功能比较页面中列出的任何未在下表中列出的功能都应适用于具有独立 NEG 的用户管理的负载均衡器,而不是依赖 Kubernetes 原生 API 实现负载均衡。

解决方案 多集群 Ingress 多集群 Gateway 具有独立 NEG 的用户管理的负载均衡器
GKE 平台支持
产品发布阶段 GA GA GA
GKE 版本 Enterprise / Standard Enterprise / Standard Enterprise / Standard
集群模式 Standard / Autopilot Standard / Autopilot Standard / Autopilot
GKE 版本 1.18 及更高版本 适用于 Standard 的 GKE 1.24 及更高版本以及适用于 Autopilot 的 1.26 及更高版本 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 上的集群设置

-
多集群 Service 支持
需要多集群 Service (MCS)
MCS API 版本 networking.gke.io/v1 net.gke.io/v1 -
资源类型 MultiClusterService ServiceExport -
许可 专有 开源 -
Cloud 网络产品资源生命周期管理(不包括共享 VPC)
自动化前端 IP 地址管理
自动化 Cloud 负载均衡器管理
  • 转发规则
  • 目标代理
  • 网址映射
  • 后端服务
  • 健康检查
自动化网络端点组 (NEG) 管理

(仅限可用区级 NEG

(仅限可用区级 NEG

(仅限可用区级 NEG,Kubernetes Service 所需的注解)

Cloud NGFW 管理

(仅限 VPC 防火墙规则全托管式规则

(仅限 VPC 防火墙规则全托管式规则

共享 VPC 支持
宿主项目中的集群和舰队 (Hub)
同一服务项目中的集群和舰队 (Hub)

在宿主项目中具有防火墙规则权限

(在宿主项目中具有防火墙规则权限)

不同项目中的集群和舰队 (Hub)

(使用跨项目 Service 引用

负载均衡器支持
应用负载均衡器
传统版
全球外部
区域外部
区域内部
跨区域内部
代理网络负载均衡器
传统版
全球外部
区域外部
内部(始终为区域级)
直通式网络负载均衡器
外部(始终为区域级)
内部(始终为区域级)
客户端到负载均衡器协议支持
HTTP、HTTPS、HTTP/2
WebSocket
HTTP/3(基于 IETF QUIC)
SSL (TLS) 或 TCP
负载均衡器后端支持
Pod(可用区级 NEG)
虚拟机(包括 GKE 节点)

不推荐

其他后端:
  • Cloud Storage
  • 公共外部端点(互联网 NEG)
  • 专用外部端点(混合 NEG)
  • Private Service Connect (PSC NEG)
  • Cloud Run(无服务器 NEG)
负载均衡器到后端协议支持
HTTP、HTTPS、HTTP/2(其中一种)
WebSocket
SSL (TLS) 或 TCP(其中一种)
IP 地址和协议
动态 IP 地址分配
静态 IP 地址分配
多个端口(HTTP、HTTPS)使用相同的 IP 地址
IPv6

(负载均衡器到后端的流量仍然是 IPv4)

(负载均衡器到后端的流量仍然是 IPv4)

(负载均衡器到后端的流量仍然是 IPv4)

路由和流量管理
全球访问权限
跨项目负载均衡
主机/路径路由

(前缀、完全匹配)

(前缀、完全匹配)

基于标头的路由

(完全匹配)

路径重定向
网址重写
流量分配
流量镜像
流量切换
基于流量的自动扩缩
自定义请求标头
自定义响应标头
跨命名空间路由
前端安全性
SSL 政策
从 HTTP 到 HTTPS 的重定向
多个 TLS 证书支持
基于 Kubernetes Secrets 的证书
自行管理的 SSL 证书
Google 代管式 SSL 证书
Certificate Manager 支持
后端服务属性
连接排空超时
会话亲和性
HTTP 访问日志记录配置
后端服务超时
自定义负载均衡器健康检查配置

(BackendConfig)

(HealthCheckPolicy)

(gcloud CLI / Google Cloud 控制台 / Terraform)

TLS 到后端服务
自定义默认后端
Cloud CDN

(并非所有特性)

(所有特性)

Identity-Aware Proxy (IAP)
Google Cloud Armor 安全政策

后续步骤