在查看文档时,有一个API调用可以删除单个pod,但是否有一种方法可以删除所有名称空间中的所有pod ?


当前回答

如果你有多个pod崩溃或出错,你想删除它们

Kubectl delete pods——all -n | gep

其他回答

如果您已经有了重新创建的pod,请考虑先删除所有部署

kubectl delete -n *NAMESPACE deployment *DEPLOYMENT

只需将NAMSPACE和DEPLOYMENT替换为相应的NAMSPACE和DEPLOYMENT,就可以通过以下命令获得所有部署信息

kubectl get deployments --all-namespaces

删除pv的步骤如下:

删除所有与该PV相关的部署和pod或资源 Kubectl delete——all deployment -n namespace Kubectl delete——所有pod -n命名空间 编辑光伏 Kubectl编辑pv pv_name -n namespace 删除kubernetes.io / pv-protection 删除pv Kubectl delete pv pv_name -n namespace

如果你有hpa,那么缩小。

我尝试了这里列出的答案中的命令,但豆荚卡在终止状态。 我发现下面的命令可以删除特定名称空间中的所有pods,如果处于终止状态或无法删除它,那么可以强制删除pods。

kubectl delete pods --all --grace-period=0 --force --namespace namespace

希望对别人有用。

如果你想删除所有命名空间中的pod,只是为了让它们重新启动,并且你知道其中一些将被重新创建,我喜欢下面的for循环:

for i in $(kubectl get pods -A | awk '{print $1}' | uniq | grep -V NAMESPACE); do kubectl delete --all pods -n $i; done