Kubernetes Gateway API 网关选型全景对比

💡 原文中文,约7300字,阅读约需18分钟。
📝

内容提要

本文对支持 Gateway API 的 Kubernetes 网关进行了比较分析,包括 NGINX Ingress、Kong Gateway、Apache APISIX 和 Envoy Gateway,从性能、安全、可观测性和社区活跃度等方面深入解读。推荐在高性能场景使用 Apache APISIX,企业级应用选择 Kong Gateway,标准化需求则推荐 Envoy Gateway。

🎯

关键要点

  • 本文对支持 Gateway API 的 Kubernetes 网关进行了比较分析,包括 NGINX Ingress、Kong Gateway、Apache APISIX 和 Envoy Gateway。
  • Kubernetes 最初依赖 Ingress Controller 暴露 HTTP 服务,现推动采用 Gateway API 作为下一代标准。
  • NGINX Ingress Controller 主要基于传统 Ingress API,NGINX Gateway Fabric 支持核心 Gateway API 功能。
  • Kong Gateway 通过 KIC/Gateway Operator 实现对 Kubernetes Gateway API 的支持,支持多协议流量管理。
  • Apache APISIX 以 API Gateway 为定位,正在开发 Gateway API 支持,未来将支持跨集群等扩展功能。
  • Envoy Gateway 原生基于 Gateway API 设计,充分实现了 Gateway API 所有核心功能。
  • 在性能方面,Apache APISIX 表现突出,吞吐量高于 Kong Gateway。
  • Kong Gateway 在简单代理场景下性能稳定,但略低于 APISIX。
  • NGINX Ingress 性能相对较弱,可能在高负载时出现吞吐下降。
  • Envoy Gateway 在高并发和多路由场景下表现稳定,具有显著的性能优势。
  • 启动时间方面,Kong Ingress Controller 启动最快,NGINX Ingress 启动相对较慢。
  • 所有网关均支持标准的 TLS 终止,Kong 和 APISIX 提供丰富的认证授权插件。
  • 可观测性方面,各网关提供了丰富的支持,部分项目在标准化配置与默认集成方面更具优势。
  • 根据 GitHub 数据,NGINX Ingress 社区活跃度最高,Apache APISIX 次之。
  • 选型建议:高性能场景推荐 Apache APISIX,企业级应用选择 Kong Gateway,标准化需求推荐 Envoy Gateway。
  • Kubernetes 流量网关正从单协议 Ingress 演进到支持多协议的现代 Gateway API 解决方案。

延伸问答

Kubernetes Gateway API 的主要网关有哪些?

主要网关包括 NGINX Ingress、Kong Gateway、Apache APISIX 和 Envoy Gateway。

在高性能场景下,推荐使用哪个网关?

推荐使用 Apache APISIX,因为其性能表现突出,吞吐量高。

Kong Gateway 的启动时间与其他网关相比如何?

Kong Ingress Controller 启动最快,约 1 秒,其他网关如 Envoy Gateway 和 NGINX Ingress 启动时间较长。

各网关在安全能力方面有哪些特点?

所有网关支持 TLS 终止,Kong 和 APISIX 提供丰富的认证授权插件,Envoy Gateway 支持外部认证服务。

哪个网关在社区活跃度方面表现最好?

NGINX Ingress 的社区活跃度最高,其次是 Apache APISIX。

对于希望跟进最新技术标准的团队,推荐使用哪个网关?

推荐使用 Envoy Gateway,因为它完全基于 Gateway API 设计,符合未来标准。

➡️

继续阅读