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

容器服务

复制全文
下载 pdf
节点弹性伸缩
节点弹性伸缩概述
复制全文
下载 pdf
节点弹性伸缩概述
容器服务(VKE)集群支持根据 Pod 的调度状态以及集群内节点资源的使用情况,对集群进行自动扩容或缩容。在保障 Pod 对应业务正常运行的前提下,控制集群资源数量、节约成本。本文介绍 VKE 集群支持的节点自动扩缩容方案​
方案介绍​
注意​
  • 本文中提供的弹性测量数据为理论值,均基于弹性优化的自定义镜像实现,实际数据以您的实际业务环境为准。​
​
方案​
组件​
说明​
节点自动伸缩​
cluster-autoscaler​
以轮询的方式,周期性地维护和检查集群状态。当发现集群满足扩缩容条件时,自动扩缩容集群节点。​
节点即时弹性​
karpenter​
基于事件驱动的节点伸缩控制方案。当集群中存在较多开启弹性伸缩的节点池时,能够保证更好的弹性资源交付。​
​
方案对比​
如果您的集群节点池已开启自动弹性伸缩,节点即时弹性可兼容原弹性节点池的语义与行为,并支持所有类型的应用无感开启与使用。以下重点阐述节点即时弹性相较于节点自动伸缩的特性优化。​
​
特性优化​
节点自动伸缩(Cluster Autoscaler)​
节点即时弹性(Karpenter)​
弹性灵敏度​
采用定时轮询的方式伸缩集群,受集群规格和节点池数量影响大。弹性灵敏度一般超过 5 秒。​
基于事件驱动,能够更快响应具有数十个节点池的复杂生产集群的弹性资源诉求。弹性灵敏度可达秒级。​
弹性效率​
扩容时只会依据扩容策略选择某个节点池进行扩容,只关心节点数量,不关心实例规格。非 GPU 机型扩容耗时约为 50 秒;GPU 机型受具体实例规格影响,不同机型之间扩容耗时差异较大。​
如果节点池支持多个规格,在满足节点池和实例规格优先级的前提下,自动扩容时会倾向于选择节点数更少的扩容方案,从而提高资源交付效率。​
资源交付确定性​
在单次扩容流程中,只会选择单个节点池进行扩容,扩容所使用的实例规格由节点池配置决定。​
在单次扩容流程中,可以主动选择多个节点池的多个可用区的多个实例规格同时扩容,提高资源交付的确定性。​
​
在评估是否使用节点即时弹性方案时,您需要同时了解,节点即时弹性存在以下使用限制:​
  • 不支持在集群维度配置禁止缩容。​
  • 支持的缩容配置与行为和节点自动伸缩存在一定的差异。​
方案选型建议​
如前文的方案对比所述,如果您的业务对弹性速度和资源交付确定性要求相对较低,且无法容忍节点即时弹性的使用限制时,节点自动伸缩方案能够满足您的业务需求。但如果您有以下业务诉求,我们更推荐您使用节点即时弹性。​
  • 集群规模较大,节点池数量较多,节点自动伸缩的扩容效率会明显衰减,而节点即时弹性的性能波动较小。​
  • 对资源交付速度和灵敏度有较高要求,业务场景需要尽可能减少弹性资源交付的等待时间。​
  • 业务负载使用通用计算资源,期望能有更大的弹性资源池,而非依赖特定的单一的实例规格或规格族。​
注意事项​
配额与限制​
  • 在 Flannel 网络模式下,单个节点可允许运行的 Pod 数量受网络配置影响,并且节点需要在专有网络中创建路由;在 VPC-CNI 网络模式下,单个节点可允许运行的 Pod 数量受实例规格影响。​
  • 请合理配置开启自动伸缩的节点池的最大实例数,保证此范围内的节点所依赖的资源和配额充足,例如合理规划 VPC 网段、子网等网络资源,以避免节点扩容失败。​
  • 节点弹性扩容功能不支持包年包月付费类型的节点。如需新建开启自动伸缩的节点池,请勿选择付费类型为包年包月。如需为已有节点池开启自动伸缩,包年包月付费类型的节点在缩容时会被移出集群而非释放。​
  • 节点伸缩功能暂不支持 SideCar Containers。请将使用了 SideCar Containers 的工作负载部署至未开启自动伸缩的节池点上。​
依赖资源的维护​
选择绑定 EIP 时,请勿通过 ECS 控制台直接删除节点伸缩扩容出的 ECS 节点,否则会导致 EIP 无法自动释放。​
应用场景​
节点弹性伸缩的主要应用场景如下:​
  • 在线场景:在业务高峰由 HPA 扩容 Pod,CA 或 Karpenter 扩容伸缩组;业务低谷 HPA 缩容 Pod,CA 或 Karpenter 缩容节点。​
  • 离线场景:由用户下发或定时任务直接创建 Pod,CA 或 Karpenter 扩容伸缩组;任务完成后 CA 或 Karpenter 缩容节点。​
​​​
​
​
​
​
​
最近更新时间:2026.09.23 14:37:30
这个页面对您有帮助吗?
有用
有用
无用
无用