Gateway API是 Kubernetes 官方社區的流量管理標準,支援基於Ingress的南北向流量管理和基於Service Mesh的東西向流量管理,本文介紹其核心概念和南北向流量管理的方案。
核心概念
Gateway API採用了面向角色(Role-Oriented)的分層設計,將基礎設施供給、叢集營運和應用路由解耦。主要包含以下幾類核心資源:
GatewayClass(基礎設施層):類似
IngressClass。定義了網關的控制器類型(ALB、Envoy Gateway 等)和通用配置。Gateway(營運層):定義具體的網關執行個體,描述網路監聽規則(如連接埠、協議、TLS 配置)。
HTTPRoute / GRPCRoute 等(應用程式層):定義具體的流量路由規則(如路徑匹配、Header 修改、流量權重),並綁定到後端 Service。
Policy(策略層):定義了一組特定的配置或者行為(如熔斷、限流、JWT認證等),可以附加到指定的網關、路由或者後端服務上。
ACK 中的 Gateway API 方案
在 ACK 叢集中,可根據業務需求選擇以下合適的Gateway API方案:
方案 | Gateway with Inference Extension | ALB(Application Load Balancer) |
概述 | Gateway with Inference Extension是基於開源Envoy Gateway專案構建的組件,專為雲原生和AI推理情境最佳化。通過監聽Gateway API相關資源,動態建立和刪除網關,管理叢集南北向流量。該組件為非託管組件,部署在使用者叢集的節點上,需要自主營運,無雲產品 SLA 保障。 | ALB Ingress Controller在v2.17.0版本後提供了對Gateway API的支援,可通過配置Gateway、HTTPRoute等資源,將叢集外部七層流量路由至叢集內部由 Service 所管理的工作負載(Pod),管理叢集南北向流量。ALB Ingress Controller 監聽 Gateway API 資源的變化,並即時轉化為底層ALB執行個體的監聽、路由規則和伺服器組配置。 |
適用情境 | 通用流量及AI推理情境 | 通用流量情境 |
核心優勢 |
|
|
相關文檔 |