更新时间:2026-06-05 GMT+08:00
网关API概述
Gateway API是Kubernetes官方社区主导的下一代路由与负载均衡标准API,用于替代传统Ingress,统一定义集群南北向、东西向流量接入、路由分发与流量治理规则,是云原生网关的标准化配置底座。
相比传统Ingress,Gateway API具备多租户隔离、精细化路由、多协议统一管理、扩展性更强、语义更清晰等优势,是云原生场景下流量网关的主流演进方向。
在CCE集群中,您可以安装Envoy Gateway插件,使用基于Envoy实现的Gateway API方案。
核心概念
- GatewayClass(基础设施层):类似IngressClass定义了网关的控制器类型。
- Gateway(集群运行层):配置具体的网关实例,比如监听的端口(如 80 或 443)、端口的协议和配置的证书等。
- HTTPRoute(业务应用层):定义具体的流量路由规则(比如路径、Header、流量权重、查询参数等),并绑定到后端Service。
工作原理
Envoy Gateway的工作原理如下:
- 安装Envoy Gateway插件后,集群中会创建对应的GatewayClass。
- 用户创建Gateway API资源(如Gateway、HTTPRoute)。
- 用户在创建Gateway时会声明属于哪个GatewayClass,并定义自己的行为,例如监听80端口处理HTTP流量。
- 用户创建HTTPRoute路由规则时,会绑定到具体的Gateway实例,定义外部请求到后端服务的完整路由规则。
- Envoy Gateway控制器持续监听用户创建的Gateway API资源,当检测到变化时将会执行以下动作:
- 根据Gateway的规格说明,在集群中动态创建相应的基础设施:部署Envoy Proxy实例,并创建一个类型为LoadBalancer的Service作为流量入口。
- 根据Gateway和HTTPRoute生成配置,动态下发至Envoy Proxy实例。
- 外部流量通过LoadBalancer将请求转发到Envoy Proxy实例,然后经过路由规则,继续将请求转发访问到后端服务。
图1 Envoy Gateway工作原理