Ingress2Gateway 用户指南:支持的所有 Ingress 控制器和转换策略详解
Ingress2Gateway 用户指南支持的所有 Ingress 控制器和转换策略详解【免费下载链接】ingress2gatewayConvert Ingress resources to Gateway API resources项目地址: https://gitcode.com/gh_mirrors/in/ingress2gateway 你是否正在为 Kubernetes Ingress NGINX 的退役而烦恼想要从传统的 Ingress 平滑迁移到现代化的 Gateway API 吗那么 Ingress2Gateway 就是你的完美解决方案这款强大的转换工具能够帮助你轻松将各种 Ingress 控制器资源转换为标准的 Gateway API 资源让你的 Kubernetes 网络配置迈入新时代。什么是 Ingress2GatewayIngress2Gateway是由 Kubernetes SIG-Network 子项目管理的开源工具专门用于将 Ingress 资源和特定提供商的 CRD 转换为 Gateway API 资源。随着 Kubernetes 社区宣布 Ingress NGINX 即将退役Ingress2Gateway 成为了迁移到 Gateway API 的关键桥梁。该工具支持多种流行的 Ingress 控制器包括 ingress-nginx、Traefik、Kong、Istio、GCE 等能够处理复杂的注解转换和资源配置让你的迁移过程更加顺畅。支持的 Ingress 控制器完整列表Ingress2Gateway 目前支持以下主流 Ingress 控制器的转换1.ingress-nginx- Kubernetes 社区标准支持位置: pkg/i2gw/providers/ingressnginx/核心功能: 金丝雀发布、URL 重写、重定向、CORS 配置、超时设置特色转换:金丝雀权重路由 (canary-weight)SSL 透传 (ssl-passthrough)后端 TLS 验证 (proxy-ssl-verify)2.Traefik- 云原生代理支持位置: pkg/i2gw/providers/traefik/核心功能: TLS 配置、入口点管理、HTTP/HTTPS 重定向特色转换:自动 HTTPS 重定向 (router.entrypoints: websecure)自定义入口点配置智能 TLS 处理3.Kong- API 网关支持位置: pkg/i2gw/providers/kong/核心功能: 方法匹配、头部匹配、插件集成特色转换:HTTP 方法匹配 (konghq.com/methods)自定义头部路由 (konghq.com/headers.*)插件配置转换4.Istio- 服务网格支持位置: pkg/i2gw/providers/istio/核心功能: Gateway 和 VirtualService 转换特色转换:复杂重写规则处理跨命名空间引用 (ReferenceGrant)协议转换 (HTTP2/GRPC → HTTPS)5.GCE- Google Cloud Engine支持位置: pkg/i2gw/providers/gce/核心功能: GKE Ingress 特定功能特色转换:内部/外部负载均衡器Cloud Armor 安全策略自定义健康检查6.NGINX- NGINX 官方控制器支持位置: pkg/i2gw/providers/nginx/核心功能: SSL 服务、gRPC、WebSocket 支持特色转换:gRPC 服务转换 (nginx.org/grpc-services)WebSocket 支持通知HSTS 头部配置7.其他支持的控制器APISIX: 高性能 API 网关Cilium: eBPF 网络方案OpenAPI 3: 基于 OpenAPI 规范的配置核心转换策略详解 架构设计Provider 与 Emitter 分离Ingress2Gateway 采用创新的双组件架构Provider提供者: 读取 Ingress 资源和特定提供商的 CRD将其转换为通用的中间表示IREmitter发射器: 将中间表示转换为最终的 Gateway API 输出这种设计使得工具既灵活又易于扩展支持多种输出格式standard: 标准 Gateway API 资源默认envoy-gateway: Envoy Gateway 特定资源gce: Google Cloud Engine 特定配置agentgateway: Agent Gateway 实现airlock-microgateway: Airlock 微网关kgateway: KGateway 实现 Ingress 字段到 Gateway API 的映射关系Ingress 字段Gateway API 配置ingressClassNameGateway 的gatewayClassNamedefaultBackend无主机名的 Gateway Listener 通配 HTTPRoutetls[].hostsHTTPS Listener (端口 443, TLS 终止模式)tls[].secretNameGateway Listener 的certificateRefsrules[].host独立的 HTTP Listener (端口 80)rules[].http.paths[].pathHTTPRouterules[].matches[].path.valuerules[].http.paths[].pathTypeHTTPRoute 路径匹配类型⚙️ 冲突处理规则Ingress2Gateway 采用确定的处理顺序来解决配置冲突创建时间优先: 最早创建的 Ingress 资源具有最高优先级名称空间/名称排序: 如果创建时间相同按命名空间和名称排序冲突报告: 对于冲突的规则如相同路径但不同后端会报告错误实用转换示例示例 1: ingress-nginx 金丝雀发布# 原始 Ingress 配置 apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: canary-demo annotations: nginx.ingress.kubernetes.io/canary: true nginx.ingress.kubernetes.io/canary-weight: 20转换为 Gateway API 后会生成带有权重配置的 HTTPRoute实现精确的流量分流。示例 2: Traefik HTTPS 重定向# Traefik 特定配置 annotations: traefik.ingress.kubernetes.io/router.tls: true traefik.ingress.kubernetes.io/router.entrypoints: websecureIngress2Gateway 会自动生成 HTTP→HTTPS 重定向路由确保所有 HTTP 流量都重定向到 HTTPS。示例 3: Kong 方法匹配# Kong 特定配置 annotations: konghq.com/methods: POST,GET转换为 Gateway API 的 HTTPRoute包含精确的 HTTP 方法匹配规则。安装与使用指南快速安装方法通过 Go install 安装:go install github.com/kubernetes-sigs/ingress2gatewayv1.0.0通过 Homebrew 安装:brew install ingress2gateway从源码构建:git clone https://gitcode.com/gh_mirrors/in/ingress2gateway cd ingress2gateway make build go install .基本使用命令转换集群中的所有 ingress-nginx 资源:ingress2gateway print --providersingress-nginx从文件转换 Traefik 配置:ingress2gateway print --providerstraefik --input-filetraefik-ingress.yaml指定命名空间和输出格式:ingress2gateway print --providersistio --namespaceproduction --outputjson常用命令行选项选项简写默认值说明--providers-必填逗号分隔的提供者列表--input-file--从文件读取支持 YAML/JSON--namespace-n-指定命名空间范围--all-namespaces-Afalse跨所有命名空间--output-oyaml输出格式: yaml, json, kyaml--emitter-standard发射器类型迁移最佳实践 1. 评估现有配置在开始迁移前使用 Ingress2Gateway 的--dry-run模式评估转换结果:ingress2gateway print --providersingress-nginx --dry-run 2. 逐步迁移策略从简单的 Ingress 开始逐步处理复杂配置优先迁移生产环境外的测试集群使用金丝雀发布验证转换结果⚠️ 3. 注意事项注解转换: 不是所有注解都能完美转换部分需要手动调整功能差异: Gateway API 的功能集与 Ingress 有所不同测试验证: 转换后务必进行全面的功能测试 4. 监控与验证使用转换报告检查未转换的注解验证 Gateway API 资源的正确性监控应用行为是否发生变化高级特性与扩展自定义 Emitter 支持Ingress2Gateway 支持自定义发射器开发允许你为特定的 Gateway API 实现生成优化配置。查看 docs/emitters.md 了解如何开发自己的发射器。通知系统工具内置通知系统会详细报告:✅ 成功转换的配置⚠️ 部分支持的注解❌ 无法转换的功能 手动调整建议实验性功能支持通过--allow-experimental-gw-api标志可以启用实验性 Gateway API 功能如 URLRewrite 等高级特性。版本兼容性Ingress2Gateway 版本支持的 Gateway API 版本v1.0v1.5.0 (向前兼容 v1.4)社区与贡献Ingress2Gateway 是 Kubernetes SIG-Network 的子项目欢迎社区贡献:报告不支持的注解或功能提交新的 Provider 支持改进现有转换逻辑添加测试用例查看 CONTRIBUTING.md 了解如何参与贡献。总结Ingress2Gateway 为 Kubernetes 用户提供了从传统 Ingress 到现代 Gateway API 的平滑迁移路径。通过支持多种流行的 Ingress 控制器和灵活的转换策略它大大降低了迁移的技术门槛和风险。无论你使用的是 ingress-nginx、Traefik、Kong 还是其他控制器Ingress2Gateway 都能帮助你顺利完成迁移享受 Gateway API 带来的标准化、扩展性和未来兼容性优势。立即开始你的迁移之旅拥抱 Kubernetes 网络的新时代【免费下载链接】ingress2gatewayConvert Ingress resources to Gateway API resources项目地址: https://gitcode.com/gh_mirrors/in/ingress2gateway创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

OpenCV-Python实战(21)——OpenCV人脸检测项目在Web端的部署

OpenCV-Python实战(21)——OpenCV人脸检测项目在Web端的部署

OpenCV-Python实战(21)——OpenCV人脸检测项目在Web端的部署 0. 前言 1. OpenCV 人脸检测项目在 Web 端的部署 1.1 解析请求并构建响应 1.2 构建请求进行测试 2. 根据获得的响应信息在客户端绘制检测框 3. 在服务器端绘制检测框并返回 小结 系列链接 0. 前言 将 OpenCV 计算…

2026/7/25 5:08:04 阅读更多 →
Backbone.offline实战教程:创建离线可用的待办事项应用

Backbone.offline实战教程:创建离线可用的待办事项应用

Backbone.offline实战教程:创建离线可用的待办事项应用 【免费下载链接】backbone-offline [Deprecated] Allows your Backbone.js app to work offline 项目地址: https://gitcode.com/gh_mirrors/ba/backbone-offline 在当今移动优先的时代,用户…

2026/7/24 3:59:29 阅读更多 →
OsMutation完全指南:如何快速将OpenVZ/LXC VPS重装为Debian/CentOS/Alpine系统

OsMutation完全指南:如何快速将OpenVZ/LXC VPS重装为Debian/CentOS/Alpine系统

OsMutation完全指南:如何快速将OpenVZ/LXC VPS重装为Debian/CentOS/Alpine系统 【免费下载链接】OsMutation Reinstall Any OpenVZ/LXC VPS to Debian/CentOS/Alpine 项目地址: https://gitcode.com/gh_mirrors/os/OsMutation OsMutation是一款强大的VPS系统…

2026/7/24 15:19:35 阅读更多 →

最新新闻

MySQL 8 安装与配置全指南:从环境变量到身份验证插件的实战详解

MySQL 8 安装与配置全指南:从环境变量到身份验证插件的实战详解

MySQL 8 的安装,对很多开发者来说,本该是“下一步、下一步”的简单操作,但实际动手时,却常常卡在环境变量、初始化密码、身份验证插件这些看似不起眼的环节上。网上教程版本混杂,照着做却启动失败,最后不得…

2026/7/25 21:15:08 阅读更多 →
CentOS 7下yum安装wget失败的排查与解决

CentOS 7下yum安装wget失败的排查与解决

1. 问题现象与初步排查最近在CentOS 7服务器上遇到一个典型问题:尝试使用yum安装wget时,系统提示"无法执行操作"。这种情况在运维工作中其实相当常见,但背后的原因可能各不相同。第一次遇到这个报错时,我习惯性地先检查…

2026/7/25 21:15:08 阅读更多 →
微信聊天记录永久保存终极指南:WeChatMsg完整教程

微信聊天记录永久保存终极指南:WeChatMsg完整教程

微信聊天记录永久保存终极指南:WeChatMsg完整教程 【免费下载链接】WeChatMsg 提取微信聊天记录,将其导出成HTML、Word、CSV文档永久保存,对聊天记录进行分析生成年度聊天报告 项目地址: https://gitcode.com/GitHub_Trending/we/WeChatMsg…

2026/7/25 21:15:08 阅读更多 →
抖音无水印下载全攻略:5分钟学会批量保存视频、音乐、直播的终极方案

抖音无水印下载全攻略:5分钟学会批量保存视频、音乐、直播的终极方案

抖音无水印下载全攻略:5分钟学会批量保存视频、音乐、直播的终极方案 【免费下载链接】douyin-downloader A practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser …

2026/7/25 21:15:08 阅读更多 →
抖音无水印下载终极教程:5步轻松保存高清视频的免费神器

抖音无水印下载终极教程:5步轻松保存高清视频的免费神器

抖音无水印下载终极教程:5步轻松保存高清视频的免费神器 【免费下载链接】douyin-downloader A practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser fallback sup…

2026/7/25 21:15:08 阅读更多 →
Win11Debloat终极指南:5分钟让你的Windows 11重获新生

Win11Debloat终极指南:5分钟让你的Windows 11重获新生

Win11Debloat终极指南:5分钟让你的Windows 11重获新生 【免费下载链接】Win11Debloat A simple, lightweight PowerShell script that allows you to remove pre-installed apps, disable telemetry, as well as perform various other changes to declutter and cu…

2026/7/25 21:14:07 阅读更多 →

日新闻

突破文档下载限制:kill-doc让你看到的都能保存

突破文档下载限制:kill-doc让你看到的都能保存

突破文档下载限制:kill-doc让你看到的都能保存 【免费下载链接】kill-doc 看到经常有小伙伴们需要下载一些免费文档,但是相关网站浏览体验不好各种广告,各种登录验证,需要很多步骤才能下载文档,该脚本就是为了解决您的…

2026/7/25 0:00:35 阅读更多 →
C++ string类模拟实现:从深拷贝到内存管理的完整指南

C++ string类模拟实现:从深拷贝到内存管理的完整指南

1. 项目概述:为什么我们要“手撕”string类?在C的学习道路上,尤其是从C语言过渡到C的“初阶”阶段,string类绝对是一个绕不开的核心。标准库里的std::string用起来太方便了,、find、substr,几个操作符和函数…

2026/7/25 0:00:35 阅读更多 →
三角洲寻宝鼠工具:高效文件搜索与资源管理实战指南

三角洲寻宝鼠工具:高效文件搜索与资源管理实战指南

1. 先搞清楚“三角洲寻宝鼠”到底是什么工具从名称来看,“三角洲寻宝鼠”更像是一个资源查找或文件检索类工具,而不是游戏或娱乐软件。这类工具的核心价值在于帮助用户快速定位特定资源,比如文档、图片、压缩包或特定格式的文件。如果你经常需…

2026/7/25 0:00:35 阅读更多 →

周新闻

Go语言静态资源打包方案对比与实践指南

Go语言静态资源打包方案对比与实践指南

1. 项目背景与核心需求在Go语言开发中,我们经常需要处理静态资源文件的打包问题。无论是Web应用的模板文件、前端资源,还是配置文件、证书等,都需要随程序一起分发。传统做法是将这些文件与编译后的二进制文件放在同一目录下,但这…

2026/7/25 5:08:22 阅读更多 →
Go语言实现高性能LDAP认证服务的架构与实践

Go语言实现高性能LDAP认证服务的架构与实践

1. 项目背景与核心价值LDAP(轻量级目录访问协议)作为企业级身份认证的黄金标准,已经服务了超过80%的财富500强公司。我在金融科技领域实施统一认证体系时,发现传统Java方案存在启动慢、内存占用高等痛点。而Go语言凭借其协程并发模…

2026/7/25 5:13:53 阅读更多 →
【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

【AI面试官实战指南】:用ChatGPT模拟10类高频技术岗面试,3天提升应答精准度92%

更多请点击: https://intelliparadigm.com 第一章:AI面试官实战指南的核心价值与适用场景 AI面试官并非替代人类HR的“黑箱工具”,而是以可解释、可审计、可迭代的方式,赋能招聘全链路的关键基础设施。其核心价值在于将主观经验沉…

2026/7/24 18:52:18 阅读更多 →

月新闻