techtsubame’s blog

備忘録であり、何が起きても責任は取りません

ReplicaでPodをスケール

実施すること

  • podsの作成
  • deploymentの作成

参考

  • 削除
$ kubectl delete deployments.apps nginx
  • podsの強制削除
    • grace-period 猶予期間
    • force 強制
[tsubame@control-plane01 ~]$ kubectl delete pods nginxdep-9b6647544-stkt8 --grace-period 0 --force
Warning: Immediate deletion does not wait for confirmation that the running resource has been terminated. The resource may continue to run on the cluster indefinitely.
pod "nginxdep-9b6647544-stkt8" force deleted
[tsubame@control-plane01 ~]$

事前作業

deployment

nginxを作成

  • エラーが無いこと
[tsubame@control-plane01 ~]$ kubectl create deployment --image nginx nginxdep
deployment.apps/nginxdep created
[tsubame@control-plane01 ~]$

Replica数操作

edit

増やす

  • replicasの値を変更したこと
  • podsの数が指定した数に増えたこと
[tsubame@control-plane01 ~]$ kubectl get pods -o wide
NAME                       READY   STATUS    RESTARTS   AGE   IP                NODE       NOMINATED NODE   READINESS GATES
nginxdep-9b6647544-stkt8   1/1     Running   0          17m   192.168.133.33    worker01   <none>           <none>
[tsubame@control-plane01 ~]$
[tsubame@control-plane01 ~]$ kubectl edit deployments.apps nginxdep

spec:
  progressDeadlineSeconds: 600
  replicas: 3
  revisionHistoryLimit: 10
  selector:
    matchLabels:
      app: nginxdep
  strategy:
[tsubame@control-plane01 ~]$ kubectl get pods -o wide
NAME                       READY   STATUS    RESTARTS   AGE   IP                NODE       NOMINATED NODE   READINESS GATES
nginxdep-9b6647544-j8hqz   1/1     Running   0          23s   192.168.133.182   worker03   <none>           <none>
nginxdep-9b6647544-stkt8   1/1     Running   0          17m   192.168.133.33    worker01   <none>           <none>
nginxdep-9b6647544-xqnbz   1/1     Running   0          23s   192.168.158.67    worker02   <none>           <none>
[tsubame@control-plane01 ~]$

ワンライナー

減らす

  • podsの数が減ったこと
[tsubame@control-plane01 ~]$ kubectl scale deployment nginxdep --replicas 1
deployment.apps/nginxdep scaled
[tsubame@control-plane01 ~]$
[tsubame@control-plane01 ~]$ kubectl get pods -o wide
NAME                       READY   STATUS        RESTARTS   AGE    IP               NODE       NOMINATED NODE   READINESS GATES
nginxdep-9b6647544-xqnbz   1/1     Running       0          2m4s   192.168.158.67   worker02   <none>           <none>
[tsubame@control-plane01 ~]$