本页面比较了 Cloud Load Balancing 提供的负载均衡功能。请先阅读以下内容(如果您还没有了解过):
- 如需大致了解 Google Cloud 中提供的不同负载均衡解决方案,请参阅 Cloud Load Balancing 概览。
- 如需确定哪种 Google Cloud 负载均衡器最符合您的应用需求,请参阅选择负载均衡器。
表示某功能受到支持。如需详细了解功能,请点击信息链接。
负载均衡器的类型
功能 | 应用负载均衡器 | 代理网络负载均衡器 | 直通式网络负载均衡器 | |||
---|---|---|---|---|---|---|
内部 | 外部 | 内部 | 外部 | 内部 | 外部 | |
代理 | 负载均衡器模式: 区域 跨区域 |
负载均衡器模式: 全球 经典 区域 |
负载均衡器模式: 区域 跨区域 |
负载均衡器模式: 全球 经典 区域 |
||
直通 | 负载均衡器模式: 内部 |
负载均衡器模式: 外部 |
从客户端到负载均衡器的协议
下表列出了客户端与不同负载均衡器之间通信支持的协议。
功能 | 应用负载均衡器 | 代理网络负载均衡器 | 直通式网络负载均衡器 | |||
---|---|---|---|---|---|---|
内部 | 外部 | 内部 | 外部 | 内部 | 外部 | |
以下权限之一:
HTTP (HTTP/1.1) HTTPS (HTTP/1.1) HTTP/2(需要 TLS),包括 gRPC1 |
不支持 QUIC |
区域模式不支持 QUIC。 |
||||
HTTP/3(基于 IETF QUIC) | (仅限全球和经典模式) |
|||||
SSL 或 TCP | 仅限 TCP |
区域模式:仅限 TCP 全球和经典 模式:SSL 或 TCP |
||||
TCP、UDP 或 L3_DEFAULT2 | 信息 |
信息 |
||||
WebSockets | 信息 |
信息 |
1 如需支持 gRPC 客户端,请创建一个 HTTPS 负载均衡器,并使用 HTTP/2 作为从负载均衡器到后端的协议。
2 L3_DEFAULT
设置会启用对以下其他 IP 协议的支持:
- 对于内部直通式网络负载均衡器,
L3_DEFAULT
会启用对 TCP、UDP、ICMP、ICMPv6、SCTP、ESP、AH 和 GRE 的支持。 - 对于外部直通式网络负载均衡器,
L3_DEFAULT
会启用对 TCP、UDP、ESP、GRE、ICMP 和 ICMPv6 的支持。
从负载均衡器到后端的协议
下表列出了不同负载均衡器的后端服务支持的 IP 协议设置。如需查看更多参考信息,请参阅后端服务。
功能 | 应用负载均衡器 | 代理网络负载均衡器 | 直通式网络负载均衡器 | |||
---|---|---|---|---|---|---|
内部 | 外部 | 内部 | 外部 | 内部 | 外部 | |
以下权限之一:
HTTP (HTTP/1.1) HTTPS (HTTP/1.1) HTTP/2(需要 TLS),包括 gRPC |
||||||
以下各项之一: SSL (TLS) 或 TCP |
||||||
TCP、UDP 或 UNSPECIFIED1 | 信息 |
信息 |
||||
WebSockets | 信息 |
信息 |
1 UNSPECIFIED
设置会启用对以下其他 IP 协议的支持:
- 对于内部直通式网络负载均衡器,
UNSPECIFIED
会启用对 TCP、UDP、ICMP、ICMPv6、SCTP、ESP、AH 和 GRE 的支持。 - 对于外部直通式网络负载均衡器,
UNSPECIFIED
会启用对 TCP、UDP、ESP、GRE、ICMP 和 ICMPv6 的支持。
后端
功能 | 应用负载均衡器 | 代理网络负载均衡器 | 直通式网络负载均衡器 | |||
---|---|---|---|---|---|---|
内部 | 外部 | 内部 | 外部 | 内部 | 外部 | |
后端可以位于多个区域中 | (仅限跨区域模式) |
(仅限全球和 经典模式) |
(仅限跨区域模式) |
(仅限全球和 经典模式) |
||
后端必须位于同一个区域中 | (仅限区域模式) |
(仅限区域和 经典模式) |
(仅限区域模式) |
(仅限区域和经典模式) |
||
后端存储桶中的 Cloud Storage | (仅限全球和 经典模式) |
|||||
互联网 NEG 中的外部端点 | (仅限区域模式) |
(全球、 区域和经典模式) |
(仅限区域模式) |
(仅限区域模式) |
||
多个后端服务和网址映射 | ||||||
Compute Engine 上的虚拟机后端 | ||||||
自行管理的 Kubernetes 和 GKE | ||||||
可用区级 NEG | GCE_VM_IP_PORT 端点
|
GCE_VM_IP_PORT 端点
|
GCE_VM_IP_PORT 端点 |
GCE_VM_IP_PORT 端点 |
GCE_VM_IP 端点 |
GCE_VM_IP 端点 |
Private Service Connect NEG | (仅限全球模式和区域模式) |
(仅限全球模式和区域模式) |
||||
混合 NEG 后端中的专用外部端点 | 信息 |
信息 |
信息 |
信息 |
||
无服务器后端 | 信息 | 信息 |
健康检查
如需查看参考信息的链接,请参阅健康检查。
功能 | 应用负载均衡器 | 代理网络负载均衡器 | 直通式网络负载均衡器 | |||
---|---|---|---|---|---|---|
内部 | 外部 | 内部 | 外部 | 内部 | 外部 | |
gRPC 健康检查 | 2 | 2 | 2 | 2 | 2 | 1 |
HTTP 健康检查 | 3 | (仅限经典和区域模式) |
1 | |||
HTTPS 健康检查 | 3 | (仅限经典和区域模式) |
1 | |||
HTTP/2 健康检查 | (仅限经典和区域模式) |
1 | ||||
SSL 健康检查 | 1 | |||||
TCP 健康检查 | 1 | |||||
可配置的健康检查 | ||||||
可配置的请求路径(HTTP、HTTPS、HTTP/2) | ||||||
可配置的请求字符串或路径(TCP 或 SSL) | ||||||
可配置的预期响应字符串 | 1 | |||||
分布式 Envoy 健康检查 | (仅限区域模式) |
(仅限区域模式) |
1 基于后端服务的外部直通网络负载均衡器健康检查。基于目标池的负载均衡器仅支持传统 HTTP 健康检查。
2 区域外部应用负载均衡器不支持旧版健康检查。只有在同时满足以下两个条件时,全球外部应用负载均衡器和传统应用负载均衡器才支持传统健康检查:
- 后端是实例组。
- 后端虚拟机 (VM) 实例处理使用 HTTP 或 HTTPS 协议的流量。
3 使用混合 NEG 后端的基于 Envoy 的区域负载均衡器(区域内部和应用负载均衡器以及区域内部和外部代理网络负载均衡器)不支持 gRPC 健康检查。如需了解详情,请参阅混合 NEG 概览。
IP 地址
如需查看参考信息的链接,请参阅地址。
功能 | 应用负载均衡器 | 代理网络负载均衡器 | 直通式网络负载均衡器 | |||
---|---|---|---|---|---|---|
内部 | 外部 | 内部 | 外部 | 内部 | 外部 | |
内部 IP 地址,可在您的 VPC 网络中访问 | ||||||
外部 IP 地址(全球任播) | (仅限全球和经典* 模式) |
(仅限全球和经典* 模式) |
||||
外部 IP 地址(区域级) | (仅限区域和经典† 模式) |
(仅限区域和经典† 模式) |
||||
自备 IP (BYOIP) 的外部 IP 地址 | (仅限全球模式和经典模式) |
(仅限经典模式) |
||||
自备 IPv6 (BYOIPv6) 中的外部 IP 地址 | (仅限 外部 ‡ 模式) |
|||||
具有相同 IP 地址的多个转发规则,每个转发规则都具有唯一的协议和端口组合 | ||||||
可通过互联网访问# | ||||||
可私密访问 | 信息+ |
信息+ |
信息+ |
|||
客户端源 IP 地址保留 | X‑Forwarded‑For 标头 | X‑Forwarded‑For 标头 | PROXY 协议 | PROXY 协议 | ||
IPv6 支持 | IPv6 终止 (仅限全球和经典1 模式) |
IPv6 终止 (仅限全球和经典1 模式) |
信息 |
信息1 |
* 高级层级支持
† 标准层级支持
‡ 目标池后端不支持 BYOIPv6 中的外部 IP 地址。
# 互联网访问还适用于 Google Cloud 中的客户端。
+ 可以在同一个 VPC 网络中和具有全球访问权限的任何区域使用专用访问通道。在跨区域模式下,全球访问默认处于启用状态。
网络拓扑
功能 | 应用负载均衡器 | 代理网络负载均衡器 | 直通式网络负载均衡器 | |||
---|---|---|---|---|---|---|
内部 | 外部 | 内部 | 外部 | 内部 | 外部 | |
Network Service Tiers 支持 | 优质层级 | 全球模式:高级层级 经典和区域模式:高级层级或标准层级 |
优质层级 | 全球模式:高级层级 经典和区域模式:高级层级或标准层级 |
优质层级 | 高级层级或标准层级 |
VPC 网络、负载均衡器及其后端之间的关系 | ||||||
不同 VPC 网络中的负载均衡器和后端 | 信息 |
信息 |
信息 |
信息 |
||
后端可以使用共享 VPC 网络 | ||||||
跨项目服务引用 | 信息 |
信息 (仅限全球模式和区域模式) |
||||
客户端对负载均衡器的访问权限 | ||||||
Google Cloud 或本地客户端必须以私密方式访问负载均衡器1 | ||||||
Google Cloud 客户端虚拟机需要外部 IP 地址或 NAT 解决方案(如 Cloud NAT)才能访问负载均衡器 | ||||||
本地客户端虚拟机需要具有互联网访问权限才能访问负载均衡器 | ||||||
Google Cloud 客户端虚拟机可位于任何区域中 | 信息 |
(仅限全球和传统2 模式) |
信息 |
信息 |
||
Google Cloud 客户端虚拟机可位于任何项目中 |
1 Google Cloud 或本地客户端必须通过位于同一 VPC 网络、对等互连 VPC 网络或使用 Cloud VPN 隧道或 Cloud Interconnect 连接 (VLAN) 连接的其他网络,以私密方式访问负载均衡器
2 高级层级支持
故障切换和可用性
功能 | 应用负载均衡器 | 代理网络负载均衡器 | 直通式网络负载均衡器 | |||
---|---|---|---|---|---|---|
内部 | 外部 | 内部 | 外部 | 内部 | 外部 | |
负载均衡器可以应对可用区级服务中断 自动故障切换到同一区域内健康状况良好的后端 |
||||||
负载均衡器可以应对区域级服务中断 自动故障切换到其他区域内健康状况良好的后端 |
(仅限跨区域模式) |
(仅限全球和经典# 模式) |
(仅限跨区域模式) |
(仅限全球和经典# 模式) |
||
支持主动-主动高可用性配置 | 信息 |
(仅限区域级模式) |
||||
支持主动-被动故障切换配置 | 仅限全球模式 |
|||||
所有后端运行状况都不正常时的行为 | 信息 |
信息 |
信息 |
信息 |
信息 (可配置) |
信息 (可配置*) |
可配置的备用后端 | 信息 (可配置) |
信息 (可配置†) |
||||
故障切换和故障恢复期间的连接排空 | 信息 (可配置) |
信息 (可配置‡) |
* 如果基于目标池的外部直通式网络负载均衡器的所有后端健康状况不佳,则流量会在所有后端之间分配。
† 基于目标池的外部直通式网络负载均衡器使用备用池来支持故障切换。
‡ 基于目标池的外部直通式网络负载均衡器不支持配置故障切换时连接排空。
# 高级层级支持。
监控
功能 | 应用负载均衡器 | 代理网络负载均衡器 | 直通式网络负载均衡器 | |||
---|---|---|---|---|---|---|
内部 | 外部 | 内部 | 外部 | 内部 | 外部 | |
字节数指标 | 信息 |
信息 |
信息 |
信息 |
信息 |
信息 |
数据包计数指标 | 信息 |
信息 |
||||
往返时间 (RTT) 指标 | 信息 |
信息 |
||||
请求延迟时间指标 | 信息 |
信息 |
信息 |
|||
连接数指标 | 信息 |
信息 |
||||
HTTP 请求数指标 | 信息 |
信息 |
日志记录
功能 | 应用负载均衡器 | 代理网络负载均衡器 | 直通式网络负载均衡器 | |||
---|---|---|---|---|---|---|
内部 | 外部 | 内部 | 外部 | 内部 | 外部 | |
日志类型 | ||||||
HTTP 请求和响应特性日志 | 信息 |
信息 |
||||
连接特性日志 | 信息 |
信息 |
信息 |
信息 |
||
日志字段 | ||||||
HTTP 请求 | 信息 |
全球、传统 区域 |
||||
用于说明代理响应的字符串 | proxyStatus | statusDetails proxyStatus |
||||
客户端与负载均衡器之间的 TLS 元数据 | 信息 |
(仅限区域模式) |
||||
连接属性:5 元组、发送和接收的字节数/数据包 | 信息 |
信息 |
信息 |
|||
虚拟机实例详情和 GKE 详情 | 信息 |
(仅限区域模式) |
信息 |
信息 |
||
客户端 VPC 或位置详情 | 信息 |
信息 |
||||
网络层级详情 | 信息 |
|||||
描述负载均衡器资源的标签 | 信息 |
全球、传统 区域 |
信息 |
信息 |
信息 |
信息 |
会话亲和性
如需了解详情,请参阅会话亲和性。
如需查看参考信息的链接,请参阅后端服务。
功能 | 应用负载均衡器 | 代理网络负载均衡器 | 直通式网络负载均衡器 | |||
---|---|---|---|---|---|---|
内部 | 外部 | 内部 | 外部 | 内部 | 外部 | |
标头 | (仅限全球模式和区域模式) |
|||||
HTTP Cookie | (仅限全球和区域) |
|||||
生成的 Cookie | ||||||
客户端 IP 地址、无目的地(1 元组)CLIENT_IP_NO_DESTINATION |
信息 |
|||||
客户端 IP 地址、目的地 IP 地址(2 元组)CLIENT_IP |
1 | 1 | ||||
客户端 IP 地址、目的地 IP 地址、协议(3 元组)CLIENT_IP_PROTO |
1 | 1 | ||||
客户端 IP 地址、客户端端口、目的地 IP 地址、目的地端口、协议(5 元组)CLIENT_IP_PORT_PROTO |
1,2 | 1,2 | ||||
无(5 元组)NONE |
3 | 3 |
1 仅当协议使用会话时(例如 TCP 协议),设置会话亲和性才有意义。
2 如果协议没有端口概念,或者如果数据包不包含端口信息(例如,后续 UDP 分段),则改用客户端 IP、目的地 IP 和协议的 3 元组哈希。
3 如果协议具有端口概念,且数据包含端口信息,则 None
是一个 5 元组哈希。 如果协议没有端口概念,或者数据包不包含端口信息(例如后续 UDP 分段),则 None
是客户端 IP、目的地 IP 和协议的 3 元组哈希。
负载均衡方法
如需了解详情,请参阅后端服务概览。
如需查看参考信息的链接,请参阅后端服务。
功能 | 应用负载均衡器 | 代理网络负载均衡器 | 直通式网络负载均衡器 | |||
---|---|---|---|---|---|---|
内部 | 外部 | 内部 | 外部 | 内部 | 外部 | |
平衡模式:连接 | ||||||
平衡模式:速率(每秒请求数) | 1 | 1 | ||||
平衡模式:后端利用率 (仅限实例组后端) |
1 | 1 | ||||
每个后端实例组或 NEG 可配置的最大容量 | 1 | 全球1 经典 区域 |
||||
熔断 | 1 | (仅限区域模式) |
(仅限区域模式) |
|||
基于权重的负载均衡 | (仅限全球和区域模式) |
1 | ||||
首选互联网中距离客户端最近的区域3 | (仅限全球和经典4模式) |
(仅限全球和经典4模式) |
||||
首选距离负载均衡器最近的区域3 | (仅限全球和经典4 模式) |
(仅限经典4 模式) |
||||
在可用区/区域负载均衡政策范围内 | 6 |
全球5、6 经典5 区域5、6 |
5、6 | 全球5、6 经典5 区域5、6 |
7 |
2 |
1 使用无服务器 NEG 后端的负载均衡器不支持此功能。
2 外部直通式网络负载均衡器在配置了故障切换的活跃池中的所有后端服务之间或区域的所有后端之间使用基于哈希的分布。基于目标池的负载均衡器可以在目标池或备用池中的所有实例之间执行基于哈希的分布。
3 如果最近的区域已达到容量上限或健康状况不佳,则负载均衡器会优先选择下一个最近的区域。
4 高级层级支持
5 在可用区内轮循
6 使用负载均衡位置政策来确定流量如何分配到实例组或 NEG 中的实例或端点
7 在活跃池中的所有后端之间进行基于哈希的分布(如果配置了故障切换),或者在区域内的所有后端之间进行基于哈希的分布。
路由和流量管理
功能 | 应用负载均衡器 | 代理网络负载均衡器 | 直通式网络负载均衡器 | |||
---|---|---|---|---|---|---|
内部 | 外部 | 内部 | 外部 | 内部 | 外部 | |
HTTP 或第 7 层请求路由 | 信息 |
信息 |
||||
故障注入 | 信息 |
(仅限全球和区域模式) |
||||
可配置超时 | 信息1 |
信息 |
信息 |
信息 |
||
重试 | 信息1 |
信息 |
||||
重定向 | 信息 |
全球 经典 区域 |
||||
网址重写 | 信息 |
全球 经典 区域 |
||||
请求和响应标头转换 (在网址映射上配置) |
信息 |
(仅限全球 和区域模式) |
||||
流量分配 | 信息 |
(仅限全球 和区域模式) |
||||
流量镜像 | 信息1 |
(仅限全球和区域模式) |
(仅限区域模式) |
|||
离群值检测 | 信息 |
(仅限全球和区域模式) |
||||
重试失败的请求 | 信息 |
(仅限全球和区域模式) |
||||
自定义错误响应 | (仅限全球模式) |
|||||
服务负载均衡政策 | (仅限跨区域模式) |
(仅限全球模式) |
(仅限跨区域模式) |
(仅限全球模式) |
1 使用无服务器 NEG 后端的负载均衡器不支持此功能。
如需了解 Cloud Service Mesh 提供的流量管理功能,请参阅 Cloud Service Mesh 功能:路由和流量管理。
自动扩缩和自动修复
功能 | 应用负载均衡器 | 代理网络负载均衡器 | 直通式网络负载均衡器 | |||
---|---|---|---|---|---|---|
内部 | 外部 | 内部 | 外部 | 内部 | 外部 | |
基于负载均衡器服务容量的托管式实例组自动扩缩 | ||||||
自动修复(托管实例组和 GKE 的原生功能) | ||||||
连接排空 | 1 |
安全
功能 | 应用负载均衡器 | 代理网络负载均衡器 | 直通式网络负载均衡器 | |||
---|---|---|---|---|---|---|
内部 | 外部 | 内部 | 外部 | 内部 | 外部 | |
Google 代管式 SSL 证书 | 信息 |
信息3 |
(仅限全球和经典模式)1 |
|||
CORS | 信息 |
(仅限全球和区域模式) |
||||
Identity-Aware Proxy (IAP) | (仅限全球和传统模式)2 |
|||||
Google Cloud Armor | 信息 |
(仅限全球和经典模式) |
信息 |
|||
SSL 分流 | (仅限全球模式和经典模式)1 |
|||||
SSL 政策 (TLS 版本和加密套件) |
信息 |
信息 |
信息 (仅限全球模式和经典模式)1 |
|||
前端双向 TLS | 信息 |
信息 |
1 仅在负载均衡器配置了目标 SSL 代理时受支持。
2 IAP 与 Cloud CDN 不兼容。
3 全球外部应用负载均衡器和传统应用负载均衡器同时支持 Compute Engine 和 Certificate Manager Google 管理的 SSL 证书,而区域级外部应用负载均衡器仅支持 Certificate Manager Google 管理的证书。
特殊功能
功能 | 应用负载均衡器 | 代理网络负载均衡器 | 直通式网络负载均衡器 | |||
---|---|---|---|---|---|---|
内部 | 外部 | 内部 | 外部 | 内部 | 外部 | |
Cloud CDN | (仅限全球和经典2 模式) |
|||||
互联网 NEG 中的外部端点,作为 Cloud CDN 的外部后端 | (仅限全球和经典2 模式) |
|||||
Service Extensions 标注 | 信息 |
(仅限全球和区域模式) |
||||
内部 DNS 名称 | (仅限区域模式) |
|||||
作为下一个跃点的负载均衡器 | 信息 |
|||||
指定后端虚拟机的网络接口 | (仅限区域级3 模式和跨区域4 模式) |
5 | 3 | 5 | 6 | |
多 NIC 负载均衡 | 信息 | 信息 | ||||
自定义请求和响应标头 (在后端服务上配置) |
(仅限全球和区域模式) |
|||||
自动 Service Directory 注册(预览版) | 信息 |
信息 |
||||
连接跟踪政策 | 信息 |
信息1 |
||||
基于来源 IP 的流量导向 | 信息1 |
|||||
受 App Hub(预览版)支持。 | (仅限区域模式) |
(仅限区域模式) |
信息 |
(仅限区域模式) |
信息 |
信息 |
1 基于后端服务的外部直通网络负载均衡器支持这些功能。基于目标池的负载均衡器不支持这些功能。
2 高级层级支持
3 后端虚拟机的 nic0
必须在转发规则使用的网络和区域中。
4 后端虚拟机的 nic0
必须在转发规则使用的网络中。
5 负载均衡器仅将流量发送到 nic0
所属的任一 VPC 网络的第一个网络接口 (nic0
)。
6 负载均衡器仅将流量发送到后端虚拟机的第一个网络接口 (nic0
)。
后续步骤
如需详细了解每种负载均衡器,请参阅以下内容:
- 外部应用负载均衡器概览(全球、传统和区域级)
- 内部应用负载均衡器概览(区域级和跨区域)
- 外部代理网络负载均衡器概览(全球、传统和区域)
- 内部代理网络负载均衡器概览(区域和跨区域)
- 外部直通式网络负载均衡器概览
- 内部直通网络负载均衡器概览