全部文档
当前文档

暂无内容

如果没有找到您期望的内容,请尝试其他搜索词

文档中心

Cloud controller manager

最近更新时间:2022-09-29 20:54:39

组件介绍

Cloud Controller Manager(CCM)提供Kubernetes与金山云网络产品的对接能力,例如SLB、VPC等。CCM主要提供负载均衡的创建与管理功能,当Service的类型设置为Type=LoadBalancer时,CCM组件会为该Service创建或配置金山云负载均衡SLB,包括含SLB实例、监听器、后端服务器等资源。当Service对应的后端Endpoint或者集群节点发生变化时,CCM会自动更新SLB的后端服务器组。

使用说明

  • CCM作为系统组件,会随集群创建时默认安装,关于如何在Service中使用Annotations来指定负载均衡相关配置,可以参考通过金山云负载均衡访问服务
  • 若您需对集群内CCM组件版本进行更新,可更新CCM镜像至目标版本,示例如下:
# kubectl set image deployment/cloud-controller-manager -n kube-system cloud-controller-manager=hub-{region-code}.kce.ksyun.com/ksyun/cloud-controller-manager:v1.32-mp

注:不同地域镜像地址中{region-code}请参考支持地域

关于各版本的特性说明,请参考版本更新

版本更新

2022年9月

版本号 更新时间 更新内容 镜像地址
v1.32 2022.09.20 1. 指定负载均衡类型为 internal 时,必须指定子网ID;若不指定将报错创建失败。此更新是为避免老版本中默认创建出公网负载均衡可能带来的问题。
2. 新增支持通过环境变量为负载均衡默认开启健康检查。
3. 新增支持IPHash和MasterSlave的转发方式。
hub-{region-code}.kce.ksyun.com/ksyun/cloud-controller-manager:v1.32-mp
hub-{region-code}.kce.ksyun.com/ksyun/cloud-controller-manager:v1.32-arm64
hub-{region-code}.kce.ksyun.com/ksyun/cloud-controller-manager:v1.32-amd64

通过环境变量配置默认开启健康检查

CCM的默认配置中,创建负载均衡默认不开启健康检查。若您需要健康检查默认开启,可以通过修改deployment/cloud-controller-manager来进行全局配置,避免在每个service中通过annotation配置。

# kubectl edit deploy cloud-controller-manager -n kube-system

在CCM中增加如下环境变量:

containers:
  - env:
    - name: DEFAULT_HEALTHCHECK_STATE
      value: start

开启此功能后,创建负载均衡时将为监听器默认开启健康检查,支持TCP和UDP协议,不支持HTTP和HTTPS。

配置IPHash和MasterSlave转发

IPHash:转发方式支持TCP和UDP协议,通过在annotations中添加指定。

metadata:
  annotations:
    service.beta.kubernetes.io/ksc-loadbalancer-method: "IPHash"

MasterSlave:转发方式支持TCP和UDP协议,添加的后端服务器有且只有两台,为一主一备的配置。

在annotations通过 service.beta.kubernetes.io/ksc-loadbalancer-master-slave 来指明后端服务器,通过逗号隔开,第一个为主机,第二个为备机。

metadata:
  annotations:
    service.beta.kubernetes.io/ksc-loadbalancer-method: "MasterSlave"
    service.beta.kubernetes.io/ksc-loadbalancer-master-slave: "主机ID,备机ID"
文档导读
纯净模式常规模式

纯净模式

点击可全屏预览文档内容
文档反馈