服务Pod出现大量Evicted状态
- 原因 : 资源不够被驱逐导致大量evcited , 虽然有大量pod , 但是并无实际资源占用
- 解决方案 : 将亲和性关闭 , 由K8S进行自由调度 , 已有的Evicted状态pod只能手动删除
节点资源不足导致实例被驱逐
k8s 中产生 Evicted 状态实例主要是因为节点资源不足实例主动被驱逐导致的,kubelet eviction_manager 模块会定期检查节点内存使用率、inode 使用率、磁盘使用率、pid 等资源,根据 kubelet 的配置当使用率达到一定阈值后会先回收可以回收的资源,若回收后资源使用率依然超过阈值则进行驱逐实例操作。
驱逐实例未被删除原因分析
源码中对于 Statefulset 和 DaemonSet 会自动删除 Evicted 实例,但是对于 Deployment 不会自动删除。
解决方案
编写程序 , 对于状态为Evicted , 容器数为0的Pod进行自动清理

浙公网安备 33010602011771号