You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Cluster Autoscaler非预期缩容 scale-down-enabled设为false时如何禁止缩容

Cluster Autoscaler配置scale-down-enabled=false后仍出现非预期缩容的排查配置项
  • 首先确认全局缩容开关参数是否真的生效
    执行命令kubectl get deploy <你的Cluster Autoscaler部署名> -n kube-system -o yaml,检查spec.template.spec.containers[0].args字段中是否正确添加了--scale-down-enabled=false配置,避免出现配置写错命名空间、写错部署对象、参数格式错误的问题。也可以查看CA运行日志,搜索scale-down-enabled关键词确认运行时加载的配置值确实为false。
  • 排查集群内其他会触发节点删除的组件
    以下组件的缩容行为独立于Cluster Autoscaler,需要单独关闭对应功能:
    • 云厂商侧的自动伸缩组(ASG、ECS弹性伸缩组等)的健康检查替换、自动缩容策略,云厂商托管K8s服务(EKS/GKE/ACK等)平台侧自带的节点自动伸缩开关
    • 集群内同时部署的其他弹性组件,比如Karpenter、自定义节点回收脚本
    • K8s原生的节点压力驱逐、污点驱逐规则,节点操作系统自动更新、集群分发的节点自动升级任务
  • 检查Cluster Autoscaler的特殊强制缩容参数
    全局缩容开关仅关闭常规闲置节点缩容逻辑,以下特殊场景的缩容逻辑仍会独立触发,需要针对性调整:
    • --max-node-provision-time参数:节点创建超过该阈值仍未就绪时,CA会主动删除该节点,如果不需要该逻辑可以将参数值调至足够大的时长
    • 旧版本CA已知Bug:1.21及之前的部分小版本Cluster Autoscaler存在--scale-down-enabled参数不生效的问题,建议升级到和你集群K8s版本匹配的最新CA稳定版
  • 配置兜底缩容防护规则
    如果需要彻底禁止所有节点被CA缩容,可以给所有节点添加Annotation cluster-autoscaler.kubernetes.io/scale-down-disabled: "true",该注解的优先级高于全局缩容开关,添加后CA绝对不会触发对应节点的缩容删除。

内容的提问来源于stack exchange,提问作者Devopsnoob

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 16:09:02