EKS集群自动缩容触发原因:为何会触发此类缩容事件?
EKS集群Cluster Autoscaler自动缩容的触发原因分析
Cluster Autoscaler原生缩容逻辑触发:Cluster Autoscaler默认会持续监控节点资源利用率(CPU、内存等),当节点长期处于低负载状态(比如你日志中CPU利用率仅0.154814的节点,远低于默认50%的阈值),且该节点上的Pod可被调度至其他现有节点时,就会触发自动缩容流程——先标记节点为
DeletionCandidateOfClusterAutoscaler,确认满足所有缩容条件后,再标记为ToBeDeletedByClusterAutoscaler并执行删除。缩容操作的执行路径特性:你提到未修改节点期望数量、无伸缩策略、ASG事件无相关记录且期望与实际状态一致,这是因为Cluster Autoscaler的缩容是先通过Kubernetes API标记节点删除,再同步调整ASG的实际节点数,而非直接修改ASG的期望数值,因此ASG事件中不会出现手动修改期望的记录,但最终ASG的实际节点数会自动与期望保持一致。
满足隐性缩容前提条件:能触发缩容还意味着该节点符合以下隐性条件:
- 节点上的Pod无
PodDisruptionBudget限制,或限制范围内允许驱逐 - 节点未被标记为不可缩容(无
cluster-autoscaler.kubernetes.io/scale-down-disabled注解) - 集群剩余节点资源足够容纳被驱逐的Pod
- 节点上的Pod无
内容的提问来源于stack exchange,提问作者Cr4zyTun4
相关产品推荐
相关产品推荐

