Nginx Ingress 退役在即:云原生网关选型避坑指南
最近阿里云开发者社区一篇文章引起了广泛关注:Nginx Ingress 即将退役,云原生网关选型成为热门话题。很多团队在用 Kubernetes 时,默认就装了 Nginx Ingress Controller,从没想过它有一天会退役。
洹拓科技在为新乡多家企业做云原生改造时,发现一个普遍现象:大家都在用 Nginx Ingress,但对 Ingress、Ingress Controller、Nginx Ingress 这几个概念的区别并不清楚。今天先把概念理清,再谈选型。
先搞清这几个容易混淆的概念
Nginx
一个高性能的 HTTP 服务器和反向代理。它是一个软件,可以独立运行。
Ingress
Kubernetes 的一种资源类型(API 对象),定义了外部流量如何进入集群内部的服务。它只是一组规则,不是具体的实现。
Ingress Controller
Ingress 规则的实际执行者。它监听 Kubernetes API,根据 Ingress 规则配置底层的代理服务器。Nginx Ingress Controller 就是其中一种实现。
Nginx Ingress Controller
基于 Nginx 的 Ingress Controller 实现,由 Kubernetes 社区维护。它把 Ingress 规则翻译成 Nginx 配置,重载 Nginx 处理流量。
Higress
阿里云开源的云原生 API 网关,基于 Envoy 构建,兼容 Ingress API,同时支持 Gateway API。
为什么要退役?
Nginx Ingress Controller 退役的核心原因:
- 架构老旧:每次配置变更都要重载 Nginx 进程,高并发场景下会导致连接中断
- 性能瓶颈:Nginx 的配置模型不适合云原生场景下的频繁变更
- 功能局限:不支持 gRPC、WebSocket 等现代协议的高级特性
- 维护困难:社区维护力量不足,迭代速度慢
替代方案对比
Higress
阿里云开源,基于 Envoy + Wasm。
优点:
- 热更新,不中断连接
- 支持 Wasm 插件,扩展性强
- 兼容 Ingress API 和 Gateway API
- 内置服务网格能力
缺点:
- 相对较新,社区生态还在建设
- 文档偏阿里云风格,通用性待提升
适合:已经在用阿里云的团队,或者需要 Wasm 扩展能力的场景。
Kong
老牌 API 网关,基于 Nginx + Lua。
优点:
- 成熟稳定,社区庞大
- 插件生态丰富(认证、限流、日志)
- 支持传统和云原生两种部署模式
缺点:
- 底层还是 Nginx,配置重载问题依然存在
- 资源消耗较高
- 企业版功能收费
适合:需要丰富插件生态、已有 Kong 使用经验的团队。
APISIX
Apache 基金会项目,基于 Nginx + Lua。
优点:
- 热更新,不需要重载
- 性能优秀,资源消耗低
- 开源社区活跃,国内使用广泛
缺点:
- 学习曲线比 Kong 陡
- 部分高级功能需要自己开发
适合:追求性能、有开发能力的团队。
洹拓科技的迁移建议
在为新乡本地企业做 Nginx Ingress 迁移时,我们总结了三步走策略:
第一步:梳理现有配置
导出所有 Ingress 资源,整理成清单:
kubectl get ingress -A -o yaml > ingress-backup.yaml |
重点关注:
- TLS 证书配置
- 重写规则(rewrite)
- 限流策略
- 自定义 Nginx 注解
第二步:选择目标网关
根据业务需求选择替代方案。如果团队没有特殊需求,推荐 Higress(阿里云生态)或 APISIX(性能优先)。
第三步:灰度迁移
不要一次性切换,用 DNS 权重路由逐步切流量:
- 部署新网关,配置与 Nginx Ingress 相同的规则
- 10% 流量切到新网关,观察 24 小时
- 无问题后扩大到 50%
- 全部切换,下线 Nginx Ingress
洹拓科技的服务
如果你的团队也在为 Nginx Ingress 退役发愁,洹拓科技可以提供:
- 网关选型咨询:根据业务场景推荐最合适的方案
- 迁移实施:从配置梳理到灰度切换,全流程交付
- 运维托管:迁移后的日常运维和故障响应
我们为辉县及新乡本地企业提供云原生网关迁移服务,欢迎联系我们。
新乡洹拓科技有限公司
地址:河南省新乡市辉县市金城百货四楼
电话:400-829-9957
业务:云原生网关 | Kubernetes | 微服务 | 运维托管