作者:James Strong、Ricardo Katz
对于所有 Kubernetes API,都有一个创建、维护和最终弃用它们的过程。networking.k8s.io API 组没有不同。即将发布的 Kubernetes 1.22 版本将删除几个与网络相关的弃用 API:
在 v1.22 Kubernetes 集群中,你可以通过稳定的(v1)API 访问 Ingress 和 IngressClass 对象,但无法通过 beta API 访问它们。自2017 年[3]、2019 年[4]1.16 Kubernetes API 弃用以来,以及最近的是 KEP-1453:从 Ingress API 毕业到 GA[5],一直在讨论中这种变化。
在社区会议上,SIG Network 决定使用 Ingress-NGINX 版本 0.47.0,继续支持 Kubernetes 1.22 之前的版本。Kubernetes 1.22 发布后,对 Ingress-NGINX 的支持将持续 6 个月。对于 Ingress-NGINX 的任何额外的 bug 修复和 CVE 都将根据需要进行处理。
Ingress-NGINX 将有独立的分支和 Ingress-NGINX 版本来支持这个模型,这反映了 Kubernetes 项目过程。Ingress-NGINX 项目的未来版本将跟踪并支持 Kubernetes 的最新版本。
Kubernetes version | Ingress-NGINX version | Notes |
---|---|---|
v1.22 | v1.0.0-alpha.2 | New features, plus bug fixes. |
v1.21 | v0.47.x | Bugfixes only, and just for security issues or crashes. No end-of-support date announced. |
v1.20 | v0.47.x | Bugfixes only, and just for security issues or crashes. No end-of-support date announced. |
v1.19 | v0.47.x | Bugfixes only, and just for security issues or crashes. Fixes only provided until 6 months after Kubernetes v1.22.0 is released. |
由于 Kubernetes 1.22 中的更新,v0.47.0 将不能与 Kubernetes 1.22 一起工作。
团队目前正在升级 ingress-nginx 以支持 v1 迁移,你可以在这里跟踪进度[6]。
在完成对 Ingress v1 的支持之前,我们不会对 ingress-nginx 进行特性改进。
同时,确保没有兼容性问题:
欢迎社区对这项工作的反馈和支持。Ingress-NGINX 子项目定期举行社区会议,讨论这个项目面临的问题和其他问题。有关子项目的更多信息,请参阅SIG Network[8]。
[1]
IngressClass: https://kubernetes.io/docs/concepts/services-networking/ingress/#ingress-class
[2]
Ingress: https://kubernetes.io/docs/concepts/services-networking/ingress/
[3]
2017 年: https://github.com/kubernetes/kubernetes/issues/43214
[4]
2019 年: https://kubernetes.io/blog/2019/07/18/api-deprecations-in-1-16/
[5]
从 Ingress API 毕业到 GA: https://github.com/kubernetes/enhancements/tree/master/keps/sig-network/1453-ingress-api#122
[6]
跟踪进度: https://github.com/kubernetes/ingress-nginx/pull/7156
[7]
v0.47.0: https://github.com/kubernetes/ingress-nginx/releases/tag/controller-v0.47.0
[8]
SIG Network: https://github.com/kubernetes/community/tree/master/sig-network