CCE Ingress NGINX Controller 说明
所有文档
menu

容器引擎 CCE

CCE Ingress NGINX Controller 说明

产品详情自助选购

组件介绍

CCE Ingress NGINX Controller是Kubernetes集群中Ingress资源的控制器,该控制器在Kubernetes社区的Ingress NGINX Controller基础上优化了一些参数。

组件功能

该控制器使用NGINX作为反向代理和负载均衡器,实现了Kubernetes Ingress的语义和功能。

  • 除了Kubernetes Ingress规定的配置之外,还提供诸多自定义配置项使得用户可以实现更灵活和精细的负载均衡策略。
  • 组件中包含一个LoadBalancer类型的Service。部署组件后CCE会关联创建一个应用型BLB,以便将流量接入到集群中的该组件的Pod中去。

使用场景

当BLB类型Ingress无法满足需求时,可以使用NGINX类型Ingress来实现更灵活和精细的负载均衡策略。

使用限制

  • 在使用NGINX Ingress时,数据流量会流经组件的Pod。因此该组件需要部署在单独节点组中,避免其他Pod挤占组件的资源。

安装组件

  1. 登录百度智能云官网,并进入管理控制台。
  2. 选择“产品服务>云原生>容器引擎CCE”,单击进入容器引擎管理控制台。
  3. 单击左侧导航栏中的“集群管理>集群列表”。
  4. 在集群列表页面中,单击目标集群名称进入集群管理页面。
  5. 在集群管理页面单击“组件管理”。
  6. 在组件管理列表中选择“CCE Ingress NGINX Controller”组件单击“安装”。
  7. 在配置页面完成组件配置。
  8. 点击“安装”按钮完成组件的安装。

部署情况

安装CCE Ingress NGINX Controller组件后,将在Kubernetes集群中部署以下资源对象。

需要注意的是,在不同的部署配置下,部署内容会有一些差异。

  • 某些对象在相关部署参数启用的情况下才会被部署到集群中。 部分对象的名称及命名空间取决于插件的部署配置。
对象名称 所属NameSpace 所占资源 类型
cce-reserved kube-system - ConfigMap
clusterrole - - ClusterRole
clusterrolebinding - - ClusterRoleBinding
controller-configmap 取决于部署参数 - ConfigMap
controller-configmap-addheaders 取决于部署参数 - ConfigMap
controller-configmap-proxyheaders 取决于部署参数 - ConfigMap
controller-configmap-tcp 取决于部署参数 - ConfigMap
controller-configmap-udp 取决于部署参数 - ConfigMap
controller-daemonset 取决于部署参数 取决于部署参数 DaemonSet
controller-deployment 取决于部署参数 取决于部署参数 Deployment
controller-hpa 取决于部署参数 - HorizontalPodAutoscaler
controller-keda 取决于部署参数 - ScaledObject
controller-poddisruptionbudget 取决于部署参数 - PodDisruptionBudget
controller-prometheusrules 取决于部署参数 - PrometheusRule
controller-psp 取决于部署参数 - PodSecurityPolicy
controller-role 取决于部署参数 - Role
controller-rolebinding 取决于部署参数 - RoleBinding
controller-service 取决于部署参数 - Service
controller-service-internal 取决于部署参数 - Service
controller-service-metrics 取决于部署参数 - Service
controller-service-webhook 取决于部署参数 - Service
controller-serviceaccount 取决于部署参数 - ServiceAccount
controller-servicemonitor 取决于部署参数 - ServiceMonitor
default-backend-deployment 取决于部署参数 - Deployment
default-backend-hpa 取决于部署参数 - HorizontalPodAutoscaler
default-backend-poddisruptionbudget 取决于部署参数 - PodDisruptionBudget
default-backend-psp 取决于部署参数 - PodSecurityPolicy
default-backend-role 取决于部署参数 - Role
default-backend-rolebinding 取决于部署参数 - RoleBinding
default-backend-service 取决于部署参数 - Service
default-backend-serviceaccount 取决于部署参数 - ServiceAccount
dh-param-sercret 取决于部署参数 - Secret
controller-ingressclass 取决于部署参数; 仅在 4.2.5 版本中存在 - IngressClass
controller-wehbooks-networkpolicy 取决于部署参数; 仅在 4.2.5 版本中存在 - NetworkPolicy

使用Helm部署组件

CCE Ingress NGINX Controller组件的配置项比较多,但“组件管理”功能中开放的配置是有限的,可以另外在Helm侧部署和修改组件的配置。

如果希望自行在集群中部署该组件,并与“组件管理”实现联动效果,则在Helm部署时,需要同时满足以下条件:

  1. Helm实例名称为{ingress-class}-ngx-control。
  2. 部署参数fullnameOverride为{ingress-class}-ngx-control。

其中{ingress-class}取值和部署参数中的controller.ingressClass参数一致,如图所示:

截屏2023-03-09 15.13.45.png

版本记录

版本号 适配集群版本 更新时间 更新内容 社区版本
4.11.5 v1.26/v1.28/v1.30 2025-03-31 更新到社区版本v1.11.5,修复CVE-2025-1097、CVE-2025-1098、CVE-2025-1974、CVE-2025-24513、CVE-2025-24514漏洞 v1.11.5
4.11.2 v1.26/v1.28/v1.30 2024-09-20 支持 Kubernetes v1.26 及以上集群使用 v1.11.2
4.2.5 v1.20/v1.22/v1.24 2022-11-01 支持 Kubernetes v1.22/v1.24 集群使用 v1.3.1
3.29.0 v1.16/v1.18/v1.20 2022-06-29 首次上线 v0.45.0
上一篇
CCE Image Accelerate 说明
下一篇
CCE Ingress Controller 说明