在查看文档时,有一个API调用可以删除单个pod,但是否有一种方法可以删除所有名称空间中的所有pod ?
当前回答
下面是一个单行程序,可以使用grep进行扩展以按名称过滤。
kubectl get pods -o jsonpath="{.items[*].metadata.name}" | \
tr " " "\n" | \
xargs -i -P 0 kubectl delete pods {}
其他回答
我创建了一个python代码删除所有在命名空间
delall.py
import json,sys,os;
obj=json.load(sys.stdin);
for item in obj["items"]:
os.system("kubectl delete " + item["kind"] + "/" +item["metadata"]["name"] + " -n yournamespace")
然后
kubectl get all -n kong -o json | python delall.py
如果你想删除所有命名空间中的pod,只是为了让它们重新启动,并且你知道其中一些将被重新创建,我喜欢下面的for循环:
for i in $(kubectl get pods -A | awk '{print $1}' | uniq | grep -V NAMESPACE); do kubectl delete --all pods -n $i; done
Kubectl bulk (bulk-action on krew)插件可能对您有用,它为您提供了选定资源的批量操作。删除pod的命令
' kubectl bulk pods -n namespace delete '
你可以在这里查看细节
如果你有多个pod崩溃或出错,你想删除它们
Kubectl delete pods——all -n | gep
下面是一个单行程序,可以使用grep进行扩展以按名称过滤。
kubectl get pods -o jsonpath="{.items[*].metadata.name}" | \
tr " " "\n" | \
xargs -i -P 0 kubectl delete pods {}
推荐文章
- 如何在kubernetes中切换命名空间
- 位于另一个名称空间中的服务
- 命名空间“卡住”作为终止,我如何删除它
- Kubernetes如何使部署更新映像
- 如何在gcloud和minikube之间切换kubectl集群
- 如何让容器在Kubernetes上运行?
- 如何手动触发Kubernetes计划作业?
- 如何从Kubernetes复制控制器的所有pod中获取日志?
- 删除Kubernetes pod时重新创建
- 使用/healthz进行应用程序运行状况检查的约定来自哪里?
- Kubernetes Service定义中targetPort和port的区别
- Kubernetes服务外部ip挂起
- 我如何强迫Kubernetes重新拉一张图片?
- 命令删除所有kubernetes命名空间中的所有pod
- 吊舱和部署的区别是什么?