如何检查Kubernetes对象是否已完全删除?

如何检查Kubernetes对象是否已完全删除?,kubernetes,Kubernetes,我正在尝试创建一个自动管道,它将在一个命名空间上一个接一个地运行多个pod。当前的问题是,在两次运行之间,我想等待一个pod被完全删除,然后再运行下一次。有没有办法检查给定的pod是否已完全删除 当前脚本: kubectl delete -f pod.yaml sleep 10 kubectl create -f pod.yaml error when creating "pod.yaml": object is being deleted: pods "test-pod" already ex

我正在尝试创建一个自动管道,它将在一个命名空间上一个接一个地运行多个pod。当前的问题是,在两次运行之间,我想等待一个pod被完全删除,然后再运行下一次。有没有办法检查给定的pod是否已完全删除

当前脚本:

kubectl delete -f pod.yaml
sleep 10
kubectl create -f pod.yaml
error when creating "pod.yaml": object is being deleted: pods "test-pod" already exists

您可以这样做:

kubectl delete -f pod.yaml
until kubectl get pod <pod-name> 2>&1 >/dev/null; do sleep 10; done
kubectl create -f pod.yaml
kubectl删除-f pod.yaml
直到kubectl获得pod 2>&1>/dev/null;睡觉10分钟;完成
kubectl创建-f pod.yaml

基本上,等待kubectl get pod返回一个错误,因为它不存在。

kubectl 1.11+等待删除完成后,delete返回

使用
--等待
选项,即:

kubectl delete -f your.yaml --wait=true

如果您想立即删除pod,请使用此选项

kubectl delete pod NAME --grace-period=0 --force