Skip to content

Instantly share code, notes, and snippets.

@buzztaiki
Last active June 23, 2022 17:37
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save buzztaiki/181865a8eccb96c9d9603c153e6644ee to your computer and use it in GitHub Desktop.
Save buzztaiki/181865a8eccb96c9d9603c153e6644ee to your computer and use it in GitHub Desktop.
Deployment の Pod を一覧する

Deployment の Pod を一覧する

たとえば以下の状態のときに、app の pod だけ取ってくる。

% kubectl get deploy
NAME   READY   UP-TO-DATE   AVAILABLE   AGE
app    2/2     2            2           74s
ppa    2/2     2            2           74s

% kubectl get pod
NAME                   READY   STATUS    RESTARTS   AGE
app-58554f64c7-6xx9r   1/1     Running   0          79s
app-58554f64c7-k525p   1/1     Running   0          79s
ppa-6858595469-8rhkb   1/1     Running   0          79s
ppa-6858595469-jxt7j   1/1     Running   0          79s

なんか、いい感じの kubectl plugin 探すか作るかした方がいい気もする。

普通に

% kubectl get deploy -owide
NAME   READY   UP-TO-DATE   AVAILABLE   AGE    CONTAINERS   IMAGES   SELECTOR
app    2/2     2            2           105m   web          nginx    app=app
ppa    2/2     2            2           105m   web          nginx    app=ppa

% kubectl get pod -l app=app
NAME                   READY   STATUS    RESTARTS   AGE
app-58554f64c7-6xx9r   1/1     Running   0          106m
app-58554f64c7-k525p   1/1     Running   0          106m

awk を使って -owide の selector を取ってくる

一番最後が selector だからそれを拾う

% selector=$(kubectl get deploy app -owide | awk 'NR>1{print $NF}')
% kubectl get pod -l "$selector"
NAME                   READY   STATUS    RESTARTS   AGE
app-58554f64c7-6xx9r   1/1     Running   0          4m15s
app-58554f64c7-k525p   1/1     Running   0          4m15s

scale サブリソースの selector から拾ってくる

kubernetes/kubernetes#72794 (comment)

% selector=$(kubectl get deploy app --subresource scale -ojson | jq '.status.selector' -r)
% kubectl get pods --selector "$selector"
NAME                   READY   STATUS    RESTARTS   AGE
app-58554f64c7-6xx9r   1/1     Running   0          5m16s
app-58554f64c7-k525p   1/1     Running   0          5m16s

ownerReference を追う

めんどい。なし。

k9s

以下で deployment の一覧を表示して、選んでから enter。

% k9s -c deploy

Manifest

apiVersion: apps/v1
kind: Deployment
metadata:
  labels:
    app: app
  name: app
spec:
  replicas: 2
  selector:
    matchLabels:
      app: app
  template:
    metadata:
      labels:
        app: app
    spec:
      containers:
      - name: web
        image: nginx

---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: ppa
  labels:
    app: ppa
spec:
  replicas: 2
  selector:
    matchLabels:
      app: ppa
  template:
    metadata:
      labels:
        app: ppa
    spec:
      containers:
      - name: web
        image: nginx
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment