k8s批量删除Evicted Pods

1、查询pod状态

[root@k8s_master prom]# kubectl -n kube-system get pods | grep Evicted
coredns-67cb7b5f46-2crxg                0/1     Evicted   0          4h56m
coredns-67cb7b5f46-2ds7n                0/1     Evicted   0          4h56m
coredns-67cb7b5f46-2pzw5                0/1     Evicted   0          4h56m
coredns-67cb7b5f46-4f8nm                0/1     Evicted   0          166m
coredns-67cb7b5f46-4gncz                0/1     Evicted   0          10h
coredns-67cb7b5f46-4lnw2                0/1     Evicted   0          166m
coredns-67cb7b5f46-4smp6                0/1     Evicted   0          166m
coredns-67cb7b5f46-5hx49                0/1     Evicted   0          166m
coredns-67cb7b5f46-6jxqn                0/1     Evicted   0          166m
coredns-67cb7b5f46-6qh9z                0/1     Evicted   0          166m
coredns-67cb7b5f46-6rn4c                0/1     Evicted   0          10h
coredns-67cb7b5f46-7jsth                0/1     Evicted   0          10h
coredns-67cb7b5f46-7mzvb                0/1     Evicted   0          166m
coredns-67cb7b5f46-92t2k                0/1     Evicted   0          4h56m
coredns-67cb7b5f46-9jqdm                0/1     Evicted   0          10h
coredns-67cb7b5f46-9rxsc                0/1     Evicted   0          4h56m
coredns-67cb7b5f46-9xmkk                0/1     Evicted   0          166m

2、发现有很多 “Evicted” 状态的pod
问题原因:这是由于node节点的磁盘或内存资源不够后将现有的pod进行了驱赶。
3、批量删除kube-system下所有“Evicted”状态的pod即可

[root@k8s_master ]# kubectl -n kube-system  get pods | grep Evicted |awk '{print$1}'|xargs kubectl -n kube-system delete pods

去掉-n kube-system是删除所有的pod

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Kubernetes中,当节点面临资源压力时,可能会触发Pod驱逐(Eviction)的机制。Pod驱逐是指将一些Pod从节点上驱逐出去,以释放资源给其他Pod使用。驱逐的条件和策略可以通过Kubelet的配置进行设置。 根据引用的资料,可以通过配置Kubelet的eviction参数来控制Pod的驱逐行为。Kubelet的配置文件中可以设置eviction的硬阈值、软阈值、软阈值宽限期和最小回收量等参数。当节点资源使用超过这些阈值时,Kubelet会根据驱逐策略来选择性地将一些Pod驱逐出去。 根据引用的描述,如果在重启Kubernetes集群的某个节点的Docker之后,发现大多数Pod的状态为evicted,那么很可能是由于节点面临资源压力导致的。这可能是因为在节点重启后,资源消耗较大的Pod被驱逐出去,以保证节点的正常运行。 根据引用的代码片段,调用ParseThresholdConfig函数可以解析用户配置的阈值参数。这些阈值参数用于配置Pod驱逐的条件。在Kubelet的配置中,可以设置硬阈值、软阈值、软阈值宽限期和最小回收量等参数。这些参数可以根据实际需求进行调整,以适应集群的资源管理策略。 综上所述,k8s Evicted是指在Kubernetes集群中,当节点面临资源压力时,Kubelet会根据配置的阈值参数选择性地将一些Pod驱逐出去,以释放资源给其他Pod使用。节点重启后,如果发现大多数Pod的状态为evicted,那么可能是因为节点资源不足导致的驱逐行为。可以通过调整Kubelet的配置来控制Pod的驱逐行为。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值