How can I delete more than couple of pods at a time?
The commands I run:
kubectl delete pod pod1
kubectl delete pod pod2
kubectl delete pod pod3
The approach I want to use:
kubectl delete pod pod1 pod2 pod3
Any commands or style that can help me do this? Thanks!
It's common to front pod with service, you can delete the duo in one line as well:
kubectl delete pod,svc <podname> <servicename>
In case you need to delete ALL pods in a single namespace, you can use next command:
kubectl delete --all pods --namespace=your_namespace_name
The approach that you say that you want:
kubectl delete pod pod1 pod2 pod3
actually works. Go ahead and use it if you want.
In Kubernetes it is more common to operate on subsets that share common labels, e.g:
kubectl delete pod -l app=myapp
and this command will delete all pods with the label app: myapp
.
You can use labels.
First label every pod with a common label:
apiVersion: v1
kind: Pod
metadata:
name: myapp
labels:
app: myapp
env: foo
Then delete them selecting the label:
kubectl delete pod -l env=foo
I am assuming that the pods you want to delete do not share any characteristics. If they do not share any characteristics then you can simply use xargs to pipe the names of the pods to the kubectl delete command like below.
echo "pod1 pod2 pod3" | xargs -n1 | xargs kubectl delete pod