Google Kubernetes Engine (GKE) 多集群推理网关可在多个 GKE 集群中对 AI/机器学习推理工作负载进行负载均衡。它集成了 GKE 多集群网关,用于跨集群流量路由,并集成了推理网关,用于 AI/ML 模型部署。此集成可提高部署的可伸缩性和高可用性。本文档介绍了网关的核心概念和优势。
如需详细了解如何部署 GKE 多集群推理网关,请参阅设置 GKE 多集群推理网关。
如需理解本文档,您必须熟悉以下内容:
- GKE 上的 AI/机器学习编排。
- 生成式 AI 术语。
- GKE 网络概念,包括 Service、GKE 多集群网关和 Gateway API。
- Google Cloud中的负载均衡,尤其是负载均衡器如何与 GKE 交互。
本文档面向以下角色:
- 有兴趣使用 Kubernetes 容器编排功能处理 AI/机器学习工作负载的机器学习 (ML) 工程师、平台管理员和运维人员以及数据和 AI 专家。
- 与 Kubernetes 网络交互的云架构师或网络专家。
如需详细了解我们在Google Cloud 内容中提及的常见角色和示例任务,请参阅常见的 GKE Enterprise 用户角色和任务。
GKE 多集群推理网关的优势
GKE 多集群推理网关在管理 AI/机器学习推理工作负载方面具有多项优势,包括:
- 通过跨多个 GKE 集群(甚至跨不同地理区域)的智能负载平衡,增强高可用性和容错能力。推理工作负载保持可用状态,并且如果集群或区域出现问题,系统会自动重新路由请求,从而最大限度地减少停机时间。
- 通过汇集各个集群的 GPU 和 TPU 资源来应对不断增长的需求,从而提高可伸缩性并优化资源用量。这种资源池化可让工作负载超出单个集群的容量,并高效利用整个舰队中的可用资源。
- 通过全局优化的路线规划最大限度地提升性能。网关使用高级指标(例如所有集群的键值对 [KV] 缓存使用情况)来做出高效的路由决策。这种方法有助于确保请求发送到最适合处理它们的集群,从而最大限度地提高 AI/机器学习推理舰队的整体性能。
限制
GKE 多集群推理网关具有以下限制:
Model Armor 集成:GKE 多集群推理网关不支持 Model Armor 集成。
Envoy 代理延迟时间报告:Envoy 代理仅报告成功 (
2xx) 请求的查询延迟时间。它会忽略错误和超时。此行为可能会导致全球服务器负载平衡器 (GSLB) 低估故障后端上的真实负载,从而可能将更多流量定向到已过载的服务。如需缓解此问题,请配置更长的请求超时时间。例如,建议值为600s。
关键组件
GKE 多集群推理网关使用多个 Kubernetes 自定义资源来管理推理工作负载和流量路由:
InferencePool:对目标集群中相同的模型服务器后端进行分组。此资源可简化模型部署实例的管理和伸缩。InferenceObjective:用于定义InferencePool中特定模型的路由优先级。此路由有助于确保某些模型根据您的要求获得流量偏好。GCPInferencePoolImport:通过在配置集群中使用HTTPRoute,使模型后端可用于路由配置。当您从目标集群导出InferencePool时,系统会在配置集群中自动创建此资源。配置集群充当多集群环境的中央控制点。GCPBackendPolicy:自定义流量在后端之间的负载均衡方式。例如,您可以启用基于自定义指标的负载均衡,或设置每个端点的未完成请求数上限,以保护模型服务器。AutoscalingMetric:定义要从模型服务器导出的自定义指标,例如vllm:kv_cache_usage_perc。然后,您可以在GCPBackendPolicy中使用这些指标,以便做出更智能的负载平衡决策,并优化性能和资源利用率。
GKE 多集群推理网关的运作方式
GKE 多集群推理网关可管理流量并将其路由到部署在多个 GKE 集群中的 AI/机器学习模型。具体运作方式如下:
- 集中式流量管理:专用配置集群用于定义流量路由规则。配置集群充当多集群环境的集中控制点。为舰队启用多集群 Ingress 时,您需要指定一个 GKE 集群作为配置集群。借助这种集中式方法,您可以从一个位置管理如何将请求定向到整个 GKE 集群舰队中的模型。
- 灵活的模型部署:实际的 AI/ML 模型在单独的目标集群中运行。这种分离可让您将模型部署在最合适的位置(例如,更靠近数据或具有特定硬件的集群)。
- 轻松集成模型:在目标集群中部署模型时,您可以使用
InferencePool将其服务实例分组。导出此InferencePool会自动使其可用于配置集群中的路由。 - 智能负载均衡:网关不仅可以分配流量,还可以做出智能路由决策。通过配置网关以使用各种信号(包括来自模型服务器的自定义指标),网关有助于确保将传入请求发送到配备最完善的集群或模型实例,从而最大限度地提高性能和资源利用率。例如,您可以根据键值 (KV) 缓存使用率等指标,将请求路由到具有最多可用推理容量的集群。
后续步骤
- 如需部署网关,请参阅设置 GKE 多集群推理网关。
- 如需了解如何在
GCPBackendPolicy资源中使用scopes字段,请参阅使用GCPBackendPolicy范围自定义后端配置。