💡
原文中文,约16700字,阅读约需40分钟。
📝
内容提要
Kubernetes宣布Ingress-NGINX将于2026年退役,用户可迁移至Amazon Load Balancer Controller或Gateway API。本文提供详细的迁移方案,包括架构差异、功能对比及配置示例,确保EKS用户实现零停机迁移。
🎯
关键要点
- Kubernetes宣布Ingress-NGINX将于2026年退役,用户可迁移至Amazon Load Balancer Controller或Gateway API。
- 迁移方案包括架构差异、功能对比及配置示例,确保EKS用户实现零停机迁移。
- 迁移前需确保EKS集群版本≥1.24,已安装kubectl并配置好集群访问,具有集群管理员权限,备份现有配置,准备好测试环境。
- Ingress是Kubernetes的资源对象,用于管理外部访问集群内部服务的方式,Ingress Controller负责根据Ingress规则转发请求。
- Ingress-NGINX的退役不影响Ingress API的使用,Ingress API仍然是稳定的API。
- 用户可选择迁移到Amazon Load Balancer Controller或Gateway API,推荐使用Gateway API。
- Gateway API提供更标准化、功能丰富的网络流量配置方法,解决了Ingress API的局限性。
- Gateway API的核心组件包括GatewayClass、Gateway、HTTPRoute和GRPCRoute。
- Amazon Load Balancer Controller支持Ingress API和Gateway API,提供多层路由功能。
- Ingress与Gateway API的功能对比显示,Gateway API在角色分离、流量拆分、标准化配置等方面具有优势。
- 提供了Ingress-NGINX与Amazon LBC Gateway API的配置对比示例,涵盖基础转发、URL重写、金丝雀发布等场景。
- 迁移路径包括安装Amazon Load Balancer Controller、使用ingress2gateway工具转换Ingress资源、逐步切换流量等步骤。
- 迁移过程中需注意保留旧资源、备份配置、监控告警和准备回滚计划。
- 迁移后,Amazon ALB的性能通常优于Ingress-NGINX,且无需管理Pod资源。
- Gateway API支持跨命名空间路由,提供更强大的路由能力。
- 总结指出Gateway API是Kubernetes网络管理的新标准,适合企业级生产环境。
❓
延伸问答
Ingress-NGINX 退役后,用户应该如何迁移?
用户可以选择迁移到 Amazon Load Balancer Controller 或 Gateway API,推荐使用 Gateway API,以实现更标准化和功能丰富的网络流量配置。
Gateway API 相比 Ingress API 有哪些优势?
Gateway API 在角色分离、流量拆分、标准化配置和多协议支持等方面具有优势,能够更灵活地管理网络流量。
迁移到 Gateway API 需要满足哪些前置要求?
迁移前需确保 EKS 集群版本≥1.24,已安装 kubectl 并配置好集群访问,具有集群管理员权限,备份现有配置,并准备好测试环境。
如何实现从 Ingress-NGINX 到 Amazon LBC 的零停机迁移?
可以通过 DNS 加权路由逐步将流量从 Ingress-NGINX 导向 Amazon LBC,确保在流量完全切换之前不删除旧资源。
Gateway API 的核心组件有哪些?
Gateway API 的核心组件包括 GatewayClass、Gateway、HTTPRoute 和 GRPCRoute,这些组件共同管理 Kubernetes 环境中的流量和路由。
迁移后 Amazon ALB 的性能如何?
迁移后,Amazon ALB 的性能通常优于 Ingress-NGINX,且用户无需管理 Pod 资源。
➡️