发布 kubernetes.nginx.org:Kubernetes 上 NGINX 的社区中心及全新 Ingress-NGINX 迁移工具

📅 2026/7/18 21:08:52 👁️ 阅读次数 📝 编程学习
发布 kubernetes.nginx.org:Kubernetes 上 NGINX 的社区中心及全新 Ingress-NGINX 迁移工具

原文作者:Alessandro Fael Garcia-F5 Software Engineer

原文链接:发布 kubernetes.nginx.org:Kubernetes 上 NGINX 的社区中心及全新 Ingress-NGINX 迁移工具

转载来源:NGINX 中文社区

NGINX 唯一中文官方社区 ,尽在 nginx.org.cn


今天,我们很高兴宣布推出 kubernetes.nginx.org,这是一个面向 Kubernetes 上所有 NGINX 网络功能的社区中心,同时发布了全新的 Kubernetes 社区 Ingress-NGINX Migration Tool,旨在帮助用户尽可能顺利地从 Kubernetes 社区 Ingress-NGINX 控制器迁移到 NGINX Ingress Controller。

为什么需要社区中心?

无论您是在运行 NGINX Ingress Controller,还是在探索 NGINX Gateway Fabric,亦或是计划迁移到其中任一产品 —— 我们希望将 NGINX 在 Kubernetes 上的所有功能汇聚在一个地方,使其易于访问和发现,无论您是在评估您的第一个项目,还是在跨集群管理多个 NGINX 部署。

kubernetes.nginx.org 将所有内容整合在一起。每个项目页面都包含功能概览、版本兼容性表、快速启动安装命令,以及 GitHub 和文档的直接链接——提供您快速上手或深入学习所需的一切。

项目:

• NGINX Ingress Controller —— 一款生产级的 Ingress API 实现,支持 VirtualServer CRD、TLS 终止、TCP/UDP 负载均衡、Prometheus 指标和 OpenTelemetry 支持。

• NGINX Gateway Fabric —— 我们的 Gateway API 实现,完全符合 Gateway API v1.4.1 标准,具有控制面/数据面分离、多云支持、流量拆分和 mTLS 功能。

迁移工具:

• Ingress-NGINX Migration Tool —— 一款交互式的 Web 指南,可将您现有的 Ingress-NGINX 注解映射到 NGINX Ingress Controller 对应项,内置 Config Analyzer 并提供可直接使用的输出。

• ingress2gateway —— 一款命令行工具,可将 Ingress 资源转换为 Gateway API 资源,以便在 NGINX Gateway Fabric 中部署,支持包括 NGINX Ingress Controller 和 Ingress-NGINX 在内的多种环境。

Ingress-NGINX 迁移工具

随着社区版 Ingress-NGINX controller 在 v1.15.1 停止维护,许多团队正在评估下一步计划。我们最常听到的问题之一是:“我如何迁移到 NGINX Ingress Controller,这需要多少工作量?”

Ingress-NGINX Migration Tool 就是我们的回答。这是一个交互式基于 Web 的指南,引导您完成整个迁移过程 —— 从了解两个控制器之间的架构差异,到生成可直接使用的配置。

提供的功能

自动完成繁重工作的 Config Analyzer:将您现有的 Ingress YAML 粘贴到分析器中,它会生成迁移建议,并提供可直接复制粘贴的输出。分析器能够识别您的注解,将其映射到 NGINX Ingress Controller 对应项,标记不受支持的内容,并评估迁移的复杂度。

超过130个注解映射:参考指南提供了约 40 个类别的全面对照映射——涵盖访问控制、身份认证、CORS、限流、SSL/TLS、金丝雀部署、负载均衡、超时等。每个映射均附有迁移前后的 YAML 示例,可直接展开并复制使用。

两种迁移策略选择:

CRD 优先(推荐) — 优先使用 VirtualServer 资源和 Policy CRD,以获得更强大且可维护的配置模型,仅在必要时退回到使用 annotation。

Annotation 优先— 尽可能优先使用 annotation 到 annotation 的映射,非常适合希望进行逐步迁移的团队。

为什么这很重要

表面上看,这两个控制器很相似,但它们在处理配置的方式上存在根本差异。社区版 Ingress-NGINX controller 依赖于 nginx.ingress.kubernetes.io/ annotation 和 ConfigMap key。NGINX Ingress Controller 使用 Custom Resource Definitions(CRD)作为主要配置模型,并使用 nginx.org/ annotation。

在大量的 Ingress 清单中手动逐一映射 annotation 既繁琐又容易出错。迁移工具能够翻译所有可用 annotation,突出显示 annotation 到 CRD 的迁移路径,揭示边缘情况,并在修改之前清晰展示整个迁移过程。

此外,在 NGINX Ingress Controller v5.4.0 中,现在可以通过 nginx.org/policies annotation 直接从 Ingress 对象引用 Policy CRD —— 这意味着您无需将所有内容转换为 VirtualServer 资源即可利用基于 CRD 的策略。大大降低了从大量依赖 annotation 配置迁移的门槛。

为社区而打造

kubernetes.nginx.org 和 Ingress-NGINX Migration Tool 都是以社区反馈为核心构建的。我们在 GitHub 问题、NGINX 社区论坛对话以及会议交流中看到的问题,直接影响了我们的优先级。

这是一个持续更新的资源。随着 NGINX Kubernetes 生态系统的演进 — 伴随新功能、新的 Gateway API conformance 配置和新工具 —— 社区中心也将随之演进。

开始体验

• 探索社区中心:kubernetes.nginx.org

• 试用 Ingress-NGINX 迁移工具: kubernetes.nginx.org/ingress-nginx-migration.html

• 获取迁移帮助:NGINX 社区论坛的 Ingress-NGINX Migration Help

• GitHub 上的 NGINX Ingress Controller:github.com/nginx/kubernetes-ingress

• GitHub 上的 NGINX Gateway Fabric: github.com/nginx/nginx-gateway-fabric

如果您参加 KubeCon Europe 2026,欢迎来找我们!我们很乐意现场向您展示社区中心和迁移工具,听取您的使用体验,并了解我们下一步该开发什么。

我们期待您的反馈!您可以提交 issue、试用迁移工具,或者如果有关于从 Ingress-NGINX 迁移的问题,可前往 NGINX 社区论坛的 Ingress-NGINX Migration Help 板块——我们会在那里提供帮助。