0
votes

I need to list down all the pods with status complete and with given name.

user@host:~$ kubectl get pods
NAME                             READY     STATUS    RESTARTS   AGE
App1-something                    1/1       Running   570        2d
App2-something                    1/1       completed 597        2d
App3-something                    1/1       completed 570        2d
App4-something                    1/1       Running   597        2d

Using Field Selector i can list completed pods, but not able to find the correct command to list down required pod with specific name

Something to get below output

App3-something                    1/1       completed 570        2d

kubectl get pod --field-selector=status.phase==Succeeded and pod name is App3-something

2

2 Answers

0
votes

Use grep on the output of the kubectl command:

kubectl get pod --field-selector=status.phase==Succeeded | grep -n 'App3-something'
0
votes

You can use comma to add multiple conditions like --field-selector=metadata.name=app3-something,,status.phase=Succeeded.

kubectl get pod --field-selector=metadata.name=App3-something,status.phase=Completed  

Reference: https://kubernetes.io/docs/concepts/overview/working-with-objects/field-selectors/

--

C:\>kubectl get pods
NAME             READY   STATUS    RESTARTS   AGE
app1-something   1/1     Running   0          62s
app2-something   1/1     Running   0          56s
app3-something   1/1     Running   0          52s

C:\>kubectl get pod --field-selector=metadata.name=app3-something,,status.phase=Running
NAME             READY   STATUS    RESTARTS   AGE
app3-something   1/1     Running   0          57s