kubernetes Pod動態擴容與縮放
在實際生產系統中,我們經常會遇到某個服務需要擴容的場景,也可能會遇到由於資源緊張或者工作負載降低而需要減少服務例項數的場景。此時我們可以利用命令 kubectl scale rc 來完成這些任務。以 redis-slave Rc 為例,已定義的最初副本數為2 ,通過執行下面的命令將 redis-slave RC 控制的 Pod 副本數量從初始的 2 更新為 3:
$ kubectl scale rc redis-slave --replicas=3
scaled
執行 kubectl get pods 命令來驗證 Pod 的副本數量增加到3:
$ kubectl get pods
NAME READY STATUS RESTARTS AGE
redis-slave-1 1/1 Running 0 1m
redis-slave-2 1/1 Running 0 1m
redis-slave-3 1/1 Running 0 1m
將 --replicas 設定為比當前 Pod 副本數量更小的數字,系統將會 “殺掉” 一些執行中的 Pod,即可實現應用叢集縮容。
$ kubectl scale rc redis-slave --replicas=1
scaled
$ kubectl get pods
NAME READY STATUS RESTARTS AGE
redis-slave-1 1/1 Running 0 1m