You need to enable JavaScript to run this app.
文档中心
容器服务

容器服务

复制全文
下载 pdf
节点弹性伸缩
配置节点即时弹性(Karpenter)
复制全文
下载 pdf
配置节点即时弹性(Karpenter)
容器服务集群支持基于 Karpenter 的节点即时弹性伸缩,实现多规格弹性伸缩功能。本文介绍如何配置节点即时弹性伸缩。​
背景信息​
为了提高节点池扩容的成功率,防止由于单一规格库存不足导致扩容失败。同时提高大规模集群下的节点扩容效率,容器服务集群支持基于 Karpenter 的节点即时弹性伸缩。Karpenter 支持过滤并选择满足 Pod 调度要求的多个规格,并实现多规格的节点扩容。​
多规格扩容流程为:Karpenter 对 Pending Pod 进行模拟调度并根据节点池中设定的规格范围,筛选符合要求的节点规格。最后使用筛选出来的节点规格和数量,扩容出对应的实例。​
使用限制​
  • cluster-autoscaler 组件和 karpenter 组件互斥,不能同时安装。​
  • karpenter 组件仅支持 Kubernetes 版本为 v1.26 及以上版本的集群。​
  • 安装组件时配置的弹性伸缩规则,与本文中的配置相同。即弹性伸缩配置,有两种配置入口,两边的配置会相互覆盖。​
  • 节点弹性伸缩仅对 按量计费 的节点资源生效。​
前提条件​
  • 已安装 karpenter 组件,详情请参见 安装组件。​
  • 已创建节点池,并启用节点池 弹性伸缩 功能。​
  • 新创建节点池时,允许直接启用弹性伸缩。详情请参见 创建节点池。​
  • ​alt​​
  • 已创建的节点池,通过编辑节点池,启用弹性伸缩。详细操作,请参见 编辑节点池。​
操作步骤​
  1. 单击左侧导航栏中的 集群。​
  1. 在集群列表页面,单击目标集群。​
  1. 在集群管理页面的左侧导航栏中选择 节点池,单击 弹性伸缩配置。​
  • ​alt​​
  1. 在 弹性伸缩配置 页面中,单击 编辑规则,配置弹性伸缩规则参数。​
说明​
该处显示的 弹性伸缩规则 页面配置,与安装组件时的配置一致。若编辑规则,表示更改安装组件时配置的规则。​
  • ​​​
  • ​
    配置项​
    说明​
    集群名称​
    当前集群的名称,不可修改。​
    自动缩容​
    开启后,集群中有较多空闲节点资源时会触发缩容。仅对 按量计费 的节点资源生效。​
    • 非 GPU 节点的缩容阈值:当非 GPU 类型节点的 CPU、内存资源请求率(单资源请求量÷单资源总量*100%)低于该阈值时,可能会触发自动缩容。整数形式,取值范围为 0~100。取值为 0 时表示不缩容。​
    说明​
    非 GPU 类型节点的 CPU 或内存资源均达到缩容阈值时,才会触发该规则。​
    • GPU 节点的缩容阈值:GPU 类型节点的缩容策略根据其是否使用 mGPU 能力,有不同的缩容策略。整数形式,取值范围为 0~100。取值为 0 时表示不缩容。​
    • 未使用 mGPU:当节点的 GPU 资源请求率(单资源请求量÷单资源总量*100%)低于该阈值时,可能会触发自动缩容。​
    • 已使用 mGPU:当 mGPU 的 GPU 算力、GPU 显存、内存、CPU 中任意一个资源的请求率(单资源请求量÷单资源总量*100%)低于该阈值时,可能会触发自动缩容。​
    • 缩容触发时延:节点资源请求率持续低于设定的阈值并持续该时间段后,集群将触发自动缩容。整数形式,取值为 1~60,单位为 分钟。​
    • Pod 终止超时时间:节点排水时等待 Pod 终止的最大时长。整数形式,取值范围为 1~10000,单位为 秒。​
    ​
  1. 单击 确定,完成配置。​
结果验证​
查看配置​
配置完成后,您可以查看弹性伸缩规则和已开启弹性伸缩的节点池。​
​​​
扩容验证​
当集群中的节点资源不足,导致 Pod Pending 时,系统会根据 Pending Pod 的所需资源,自动扩容集群中不同规格的节点。保证资源满足所需的前提下,减少资源浪费。​
例如在本例中,Pending Pod 申请的 CPU 资源分别为 3 Core 和 5 Core,同时,节点池中包含多个规格的节点,分别为 4vCPU 16GiB 和 8vCPU 32GiB。扩容结束后,单击节点池名称,进入节点池详情,选择 伸缩记录 页签,查看该节点池的自动伸缩记录。可以看到扩容了 2 个节点。​
​​​
集群管理页面的左侧导航栏中选择 节点,在节点列表中查看扩容新节点,节点规格分别为 4vCPU 16GiB 和 8vCPU 32GiB,实现了多规格的节点扩容。​
​​​
说明​
同样场景下,使用 CA 进行扩容时,节点池会根据多规格的先后顺序(即优先级),选择一个节点规格进行扩容。当高优先级规格库存不足或其他原因无法创建成功时,才会按顺序使用较低优先级的规格扩容。这种串行机制导致扩容时间较长,并可能造成资源浪费(例如:扩容了 2 个 8vCPU 32GiB 规格的节点)。​
缩容验证​
扩容完成后,删除导致扩容的 Pod,由于节点的资源请求值(Request)低于阈值(可配,默认 50%),且该节点上的其他 Pod 可以被调度到其他节点。因此等待 缩容触发时延 时间后,系统自动完成节点缩容。选择 伸缩记录 页签,查看该节点池的自动伸缩记录。可以看到缩容了 2 个节点。​
​​​
​
​
最近更新时间:2025.09.11 15:25:43
这个页面对您有帮助吗?
有用
有用
无用
无用