清除状态不正常的pod&&celanPods.sh
定时清除脚本
#!/bin/bash
export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
pods_to_delete=$(kubectl get pods --all-namespaces | grep "Terminating\|OutOfpods\|CrashLoopBackOff\|Evicted\|Error\|ContainerStatusUnknown" | awk '{print $2 " -n " $1}')
if [ -z "$pods_to_delete" ]; then
echo "没有需要删除的Pods"
else
echo "$pods_to_delete" | xargs -I {} sh -c 'echo Deleting pod {}; kubectl delete pod {} --force --grace-period=0'
fi
增加到定时任务
# crontab -e
0 */1 * * * /root/cleanPod.sh >> /root/cleanPod.log 2>&1
# 2>&1 , 指示将错误流重定向到输出流