云容器引擎 CCE-自定义部署Nginx Ingress Controller:部署Nginx Ingress Controller
部署Nginx Ingress Controller
您可以通过以下步骤在集群中部署多套完全独立的Nginx Ingress Controller服务。
- 获取模板包。
前往社区模板发布页面,选择合适的版本并下载tgz格式的Helm Chart包。本文以社区4.4.2版本的模板包为例,该模板包适用于v1.21及以上的CCE集群。由于不同版本的模板包配置项可能存在差异,本文中的配置仅对4.4.2版本生效。
- 上传模板
- 登录CCE控制台,进入集群,在左侧导航栏中选择“应用模板”,在右上角单击“上传模板”。
- 单击“添加文件”,选中待上传的模板包后,单击“上传”。
- 自定义value.yaml
您可在本地创建一个value.yaml配置文件用于设置安装工作负载参数,在安装时只需导入此配置文件进行自定义安装,其他未指定的参数将会使用默认配置。
配置内容如下:controller: image: repository: swr.cn-east-3.myhuaweicloud.com/hwofficial/nginx-ingress #controller镜像地址,请根据集群所在区域进行替换 registry: "" image: "" tag: "v1.5.1" #controller版本 digest: "" ingressClassResource: name: ccedemo #同一个集群中不同套Ingress Controller名称必须唯一,且不能设置为nginx和cce controllerValue: "k8s.io/ingress-nginx-demo" #同一个集群中不同套Ingress Controller的监听标识必须唯一,且不能设置为k8s.io/ingress-nginx ingressClass: ccedemo #同一个集群中不同套Ingress Controller名称必须唯一,且不能设置为nginx和cce service: annotations: kubernetes.io/elb.id: 5083f225-9bf8-48fa-9c8b-67bd9693c4c0 #ELB ID kubernetes.io/elb.class: performance #仅独享型ELB需要添加此注解 config: keep-alive-requests: 100 extraVolumeMounts: # 挂载节点上的/etc/localtime文件,进行时区同步 - name: localtime mountPath: /etc/localtime readOnly: true extraVolumes: - name: localtime type: Hostpath hostPath: path: /etc/localtime admissionWebhooks: # 关闭webhook验证开关 enabled: false patch: enabled: false resources: # 设定controller的资源限制,可根据需求自定义 requests: cpu: 200m memory: 200Mi defaultBackend: # 设置defaultBackend enabled: true image: repository: swr.cn-east-3.myhuaweicloud.com/hwofficial/defaultbackend #defaultBackend镜像地址,请根据集群所在区域进行替换 registry: "" image: "" tag: "1.5" digest: ""
上述参数详情请参见表1。
- 创建模板实例。