kubernetes 如何一次删除多个pod?

cgfeq70w  于 2023-10-17  发布在  Kubernetes
关注(0)|答案(6)|浏览(267)

如何一次删除多个Pod?
我运行的命令:

kubectl delete pod pod1
kubectl delete pod pod2
kubectl delete pod pod3

我想使用的方法:用途:

kubectl delete pod pod1 pod2 pod3

任何命令或样式可以帮助我做到这一点?谢谢你,谢谢

eoigrqb6

eoigrqb61#

你说你想要的方法:

kubectl delete pod pod1 pod2 pod3

实际上工作。你想用就用吧。

在Kubernetes中,更常见的是对共享公共标签的子集进行操作,例如:

kubectl delete pod -l app=myapp

这个命令会删除所有标签为app: myapp的pod。

mwyxok5s

mwyxok5s2#

我假设你要删除的pod没有任何共同的特征。如果它们没有共享任何特征,那么你可以简单地使用xargs将pod的名称通过管道传递给kubectl delete命令,如下所示。

echo "pod1 pod2 pod3" | xargs -n1 | xargs kubectl delete pod
u59ebvdq

u59ebvdq3#

你可以使用标签。
首先用一个通用标签标记每个pod:

apiVersion: v1
kind: Pod
metadata:
  name: myapp
  labels:
    app: myapp
    env: foo

然后选择标签将其删除:

kubectl delete pod -l env=foo

Documentation

bnlyeluc

bnlyeluc4#

这是常见的前吊舱与服务,你可以删除两个在一行,以及:
kubectl delete pod,svc <podname> <servicename>

zhte4eai

zhte4eai5#

如果您需要删除单个命名空间中的所有pod,可以使用下一条命令:

kubectl delete --all pods --namespace=your_namespace_name
inn6fuwd

inn6fuwd6#

我最近偶然发现了如下情况。在这里添加解决方案,因为我们在这里删除多个pod。
如果你有这样的部署-

app1-web
app1-worker1
app1-worker2
app1-ui
app2-web
app2-worker1
app2-worker2
app2-ui

要删除app 1的所有pod,您可以使用-

kubectl delete pods $(kubectl get pods | grep arugula | awk '{print $1}' | awk 'NR>=1')

相关问题