【发布时间】:2021-11-10 18:18:32
【问题描述】:
如何一次删除多个 pod?
我运行的命令:
kubectl delete pod pod1
kubectl delete pod pod2
kubectl delete pod pod3
我想使用的方法:
kubectl delete pod pod1 pod2 pod3
任何命令或样式可以帮助我做到这一点?谢谢!
【问题讨论】:
标签: kubernetes
如何一次删除多个 pod?
我运行的命令:
kubectl delete pod pod1
kubectl delete pod pod2
kubectl delete pod pod3
我想使用的方法:
kubectl delete pod pod1 pod2 pod3
任何命令或样式可以帮助我做到这一点?谢谢!
【问题讨论】:
标签: kubernetes
你说你想要的方法:
kubectl delete pod pod1 pod2 pod3
确实有效。如果需要,请继续使用它。
在 Kubernetes 中,对共享公共标签的子集进行操作更为常见,例如:
kubectl delete pod -l app=myapp
此命令将删除标签为 app: myapp 的所有 pod。
【讨论】:
你可以使用标签。
首先用一个通用标签标记每个 pod:
apiVersion: v1
kind: Pod
metadata:
name: myapp
labels:
app: myapp
env: foo
然后选择标签删除它们:
kubectl delete pod -l env=foo
【讨论】:
我假设您要删除的 pod 不共享任何特征。如果它们不共享任何特征,那么您可以简单地使用 xargs 将 pod 的名称通过管道传递给 kubectl delete 命令,如下所示。
echo "pod1 pod2 pod3" | xargs -n1 | xargs kubectl delete pod
【讨论】:
前面的pod有service很常见,你也可以一行删除duo:
kubectl delete pod,svc <podname> <servicename>
【讨论】:
如果您需要删除单个命名空间中的所有 pod,您可以使用下一条命令:
kubectl delete --all pods --namespace=your_namespace_name
【讨论】: