更新时间:2024-11-14 GMT+08:00
分享

CCE突发弹性引擎(对接CCI)

CCE突发弹性引擎(对接 CCI)作为一种虚拟的kubelet用来连接Kubernetes集群和其他平台的API。Bursting的主要场景是将Kubernetes API扩展到无服务器的容器平台(如CCI)。

基于该插件,支持用户在短时高负载场景下,将部署在云容器引擎CCE上的无状态负载(Deployment)、有状态负载(StatefulSet)、普通任务(Job)、定时任务(CronJob)四种资源类型的容器实例(Pod),弹性创建到云容器实例CCI服务上,以减少集群扩容带来的消耗。

约束与限制

  • 仅支持VPC网络模式的CCE Standard集群和CCE Turbo集群,暂不支持Arm集群。如果集群中包含Arm节点,插件实例将不会部署至Arm节点。
  • 暂不支持守护进程集(DaemonSet)以及HostNetwork网络模式的容器实例(Pod)弹性到CCI。
  • 集群所在子网不能与10.247.0.0/16重叠,否则会与CCI命名空间下的Service网段冲突,导致无法使用。
  • 暂不支持使用Volcano调度器将挂载云存储卷的容器实例(Pod)弹性到CCI。

安装插件

  1. 登录CCE控制台。
  2. 选择CCE集群,单击进入CCE集群总览页面。
  3. 在导航栏左侧单击“插件中心”,进入插件中心首页。
  4. 选择“CCE 突发弹性引擎 (对接 CCI)”插件,单击“安装”。
  5. 配置插件参数。

    表1 插件参数说明

    插件参数

    说明

    选择版本

    插件的版本。插件版本和CCE集群存在配套关系,更多信息可以参考CCE突发弹性引擎(对接CCI)插件版本记录

    规格配置

    用于配置插件负载的实例数及资源配额。

    • 选择“系统预置规格”时,您可选择“单实例”或“高可用”规格。
    • 选择“自定义规格”时,您可根据需求修改插件各个组件的副本数以及CPU/内存配置。
    说明:
    • CCE 突发弹性引擎 (对接 CCI) 插件在1.5.2及以上版本,将占用更多节点资源,请在升级CCE突发弹性引擎(对接 CCI)插件前预留空间配额。
      • 单实例:需要预留一个节点,节点下至少需要有7个Pod空间配额。若开启网络互通,则需要有8个Pod空间配额。
      • 高可用:需要预留两个节点,节点下至少需要有7个Pod空间配额,共计14个Pod空间配额。若开启网络互通,则需要有8个Pod空间配额,共计16个Pod空间配额。
    • 弹性到CCI的业务量不同时,插件的资源占用也不相同。业务申请的POD、Secret、Congfigmap、PV、PVC会占用虚机资源。建议用户评估自己的业务使用量,按以下规格申请对应的虚机大小:1000pod+1000CM(300KB)推荐2U4G规格节点,2000pod+2000CM推荐4U8G规格节点,4000pod+4000CM推荐8U16G规格节点。

    网络互通

    开启后,支持CCE集群中的Pod与CCI集群中的Pod通过Kubernetes Service互通,并在插件安装时部署组件proxy。详细功能介绍请参考网络

工作负载下发

  1. 登录CCE控制台。
  2. 选择CCE集群,单击进入CCE集群总览页面。
  3. 在导航栏左侧单击“工作负载”,进入工作负载首页。
  4. 单击“创建工作负载”,具体操作步骤详情请参见创建工作负载
  5. 填写基本信息。“CCI弹性承载”选择“强制调度策略”。关于调度策略更多信息,请参考调度负载到CCI

    CCE集群创建工作负载时,需要弹性到CCI,健康检查不支持配置TCP启动探针。

  6. 进行容器配置。
  7. 配置完成后,单击“创建工作负载”。
  8. 在工作负载页面,选择工作负载名称,单击进入工作负载管理界面。
  9. 工作负载所在节点为CCI集群,说明负载成功已调度到CCI。

插件卸载

  1. 登录CCE控制台。
  2. 选择CCE集群,单击进入CCE集群总览页面。
  3. 在导航栏左侧单击“插件中心”,进入插件中心首页。
  4. 选择“CCE 突发弹性引擎 (对接 CCI)”插件,单击“卸载”。

    表2 特殊场景说明

    特殊场景描述

    场景现象

    场景说明

    CCE集群无节点,卸载插件。

    插件卸载失败。

    bursting插件卸载时会在集群中启动Job用于清理资源,卸载插件时请保证集群中至少有一个可以调度的节点。

    用户直接删除集群,未卸载插件。

    用户在CCI侧的命名空间中有资源残留,如果命名空间有计费资源,会造成额外计费。

    由于直接删除集群,没有执行插件的资源清理Job,造成资源残留。用户可以手动清除残留命名空间及其下的计费资源来避免额外计费。

    关于CCE突发弹性引擎(对接CCI)更多内容详情请参见:CCE突发弹性引擎(对接CCI)

版本记录

表3 CCE突发弹性引擎(对接CCI)插件版本记录

插件版本

支持的集群版本

更新特性

1.5.16

v1.21

v1.23

v1.25

v1.27

v1.28

v1.29

v1.30

仅进行Pod级别CPU和Memory资源规整

1.5.8

v1.21

v1.23

v1.25

v1.27

v1.28

v1.29

适配CCE v1.29集群

1.5.2

v1.21

v1.23

v1.25

v1.27

v1.28

支持弹性至CCI 2.0

1.3.57

v1.21

v1.23

v1.25

v1.27

v1.28

适配CCE v1.28集群

1.3.54

v1.21

v1.23

v1.25

v1.27

修复部分问题

1.3.48

v1.21

v1.23

v1.25

v1.27

  • 支持v1.25、v1.27版本集群
  • 支持JuiceFS类型的存储

1.3.44

v1.17

v1.19

v1.21

v1.23

支持Pod配置全域弹性公网IP

1.3.35

v1.17

v1.19

v1.21

v1.23

  • 支持原地升级镜像
  • 支持ReadinessGates

1.3.25

v1.17

v1.19

v1.21

v1.23

  • 支持DownwardAPI Volume
  • 支持Projected Volume
  • 支持自定义StorageClass

1.3.19

v1.17

v1.19

v1.21

v1.23

支持schedule profile

1.3.7

v1.17

v1.19

v1.21

v1.23

支持v1.21、v1.23版本集群

1.2.12

v1.13

v1.15

v1.17

v1.19

  • 新增了部分metrics指标
  • 支持HPA与CustomedHPA
  • 支持将弹性到CCI的Pod中的hostPath转换为其它类型存储
  • 修复Kubernetes Dashboard无法使用终端问题

1.2.5

v1.13

v1.15

v1.17

v1.19

  • 支持CCE Turbo集群
  • 自动清理CCI中不再被Pod依赖的资源
  • 支持配置Requests与Limits不相等,弹性到CCI时的资源申请量以Limits为准
  • 修复CCI命名空间不存在时插件卸载失败问题
  • 增加对Pod规格超过CCI限制的创建请求的拦截

1.2.0

v1.13

v1.15

v1.17

v1.19

  • 支持v1.19版本集群
  • 支持SFS、SFS Turbo类型存储
  • 支持CronJob
  • 支持配置envFrom
  • 日志文件自动转储
  • 屏蔽TCPSocket类型健康检查
  • 支持配置资源标签(pod-tag)
  • 提升了性能和可靠性
  • 修复了一些已知问题

1.0.5

v1.13

v1.15

v1.17

支持v1.17版本集群

相关文档