在k8s中定时删除异常的容器

avatar 2024年4月9日18:12:12 评论 125 次浏览

在kubernetes中,运行一段时间后,会发现有一些容器在重启后正常会自动删除Terminating状态的pod,但是有时候有些的pod一直没有自动删除掉,如果是异常的pod不删除就会无法创建占用资源,这个时候就需要我们手动进行删除了,但是,有时候会忘记,所以需要有一个脚本能够定时跑一下。

 #!/bin/bash
 k8s_name=$(kubectl get pod -A | grep -v Running | awk '{print $1}')
 k8s_pod=$(kubectl get pod -A | grep -v Running | awk '{print $2}')
 for i in $k8s_name;
 do
     for j in $k8s_pod;
     do
         kubectl delete pod -n $i $j --force
     done
 done

这里写一个脚本,第一个变量是获取namespace名称,第二个变量是获取异常的pod名称,最后来个循环,然后循环删除即可。这种情况是可以直接删除异常的pod的,但是有问题的pod删除了,重新创建也会一直异常就需要自己手动排查到底是怎么回事了,好了,没有了就写这些吧,看看其他的吧。。。。。

avatar

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: