一、Nginx Ingress Controller
注意:说明:
注意:容器服务的扩展组件 NginxIngress 是基于开源项目 Ingress-Nginx Controller 提供的安装服务,其核心代码完全遵循开源版本。
注意:近期,我们已停止对扩展组件 NginxIngress 的版本更新和维护。但请放心,容器服务与开源 Ingress-Nginx Controller 的兼容性不受影响,你仍可通过自建方式或者 TKE 应用市场方式继续使用 Nginx Ingress。
Nginx Ingress Controller 是基于腾讯云负载均衡器 CLB 和 Nginx 反向代理(容器化部署在集群内)的 Ingress Controller,通过 Annotations 扩展了原生 Kubernetes Ingress 的功能。CLB 后增加了一层代理(nginx),适合对接入层路由管理有更多诉求,及有 IP 地址收敛诉求的场景。详情可参见 Nginx 类型 Ingress。
你也可以选择 Others 类型 Ingress。当你使用 Others 类型 Ingress 时,需要指定 IngressClass,并自行安装对应的 Ingress Controller。
二、各类型 Ingress Controllers 功能对比
| 模块 | 功能 | 应用型 CLB | Nginx Ingress Controller |
| 流量管理 | 支持协议 | http,https | http,https,http2,grpc,tcp,udp |
| | IP 管理 | 一条 Ingress 规则对应一个 IP(CLB) | 多条 Ingress 规则对应一个 IP(CLB),IP 地址收敛 |
| | 特征路由 | host,URL | 更多特征支持:header、cookie 等 |
| | 流量行为 | 不支持 | 支持,重定向,重写等 |
| | 地域感知负载均衡 | 不支持 | 不支持 |
| 应用访问寻址 | 服务发现 | 单 Kubernetes 集群 | 单 Kubernetes 集群 |
| 安全 | SSL 配置 | 支持 | 支持 |
| | 认证授权 | 不支持 | 支持 |
| 可观测性 | 监控指标 | 支持(需要在 CLB 中查看) | 支持(云原生监控) |
| | 调用追踪 | 不支持 | 不支持 |
| | 组件运维 | 关联 CLB 已托管,仅需集群内运行 TKE Ingress Controller | 需集群内运行 Nginx Ingress Controller(控制面 + 数据面) |