各类型 Ingress Controllers 介绍
应用型 CLB
应用型 CLB 是基于腾讯云负载均衡器 CLB 实现的 TKE Ingress Controller,可以配置实现不同 URL 访问到集群内不同的 Service。CLB 直接将流量通过 NodePort 转发至 Pod(CLB 直连 Pod 时直接转发到 Pod),一条 Ingress 配置绑定一个 CLB 实例(IP),适合仅需做简单路由管理,对 IP 地址收敛不敏感的场景。详情可参见 CLB 类型 Ingress。
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(控制面 + 数据面) |