在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删除了,重新创建也会一直异常就需要自己手动排查到底是怎么回事了,好了,没有了就写这些吧,看看其他的吧。。。。。
您可以选择一种方式赞助本站
支付宝扫一扫赞助
微信钱包扫描赞助
赏