一些jenkins jnlp的pod执行完后不退出(退出规则没设置好),手工执行删除pod。
这类jnlp节点的pod的特点是长期在jenkins中常驻,但执行的shell越来越多不断累积。还不能直接删除因为可能随时有新的任务进来。

获得某类关键字的pod,例子为包含dy的都作为候选清单
for pid in kubectl get po -njenkins -owide --show-labels|grep dy|awk '{print $1}';do
echo $pid;
#获得包含defunct的进程号的数量(某些pod执行shell完毕后会产生一个defunct进程)
pnum=kubectl exec -njenkins $pid -- ps -ef|egrep -v defunct|wc -l;
echo $pnum;
#进程号数量小于4,,说明pod当前已经完成任务,还没有新的任务。
if [ $pnum -lt 4 ];then
echo del…..;
kubectl -njenkins delete pod $pid;
fi;
done