解决Kubernetes Pod的Evicted状态及批量删除指定状态的Pods命令


kubectl get pods      

发现很多pod的状态为Evicted

原因

eviction,即驱赶的意思,意思是当节点出现异常时,kubernetes将有相应的机制驱赶该节点上的Pod。
多见于资源不足时导致的驱赶,本次问题为磁盘不足导致。

解决办法
排查资源和异常原因,防止新的驱赶产生。处理资源问题后,删除Evicted状态pod,重新拉起

kubectl get pods | grep Evicted | awk '{print $1}' | xargs kubectl delete pod

批量删除指定状态的 Pods

命令如下:

kubectl get pods -n <Namespace> | grep Evicted | awk '{print $1}' | xargs kubectl delete pod -n <Namespace>
  • kubectl get pods -n <Namespace> 获取指定 Namespace 下的所有 Pods
  • grep <status> 筛选出指定状态的 Pods
  • awk '{print $1}' 取 Pod 的 Name
  • xargs kubectl delete pod -n <Namespace> 传递 Pod's Name 用于删除 Pod


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM