在傳統的虛機/物理機環境裡, 如果我們想要對一個有狀態應用擴容, 我們需要做哪些步驟?
今天虛機環境上出現了問題, 是因為 RabbitMQ 資源不足. 手動擴容的過程中花費了較長的時間.
但是在 K8S 上, 有狀態應用的擴容就很簡單, YAML 裡改一下replicas
副本數, 等不到 1min 就擴容完畢.
當然, 最基本的: 下映象, 啟動 pod(相當於上邊的前 3 步), 就不必多提. 那麼, 還有哪些因素, 讓有狀態應用可以在 k8s 上快速擴容甚至自動擴容呢?
原因就是這兩點:
我們今天選擇幾個典型的有狀態應用, 一一梳理下:
在 Kubernetes 上, 有狀態應用快速擴容甚至自動擴容很容易. 這得益於 Kubernetes 優秀的設計以及良好的生態. Kubernetes 就像是一個雲原生時代的作業系統. 它自身就具有:
所以, 需要擴容, 一個 yaml 搞定全部. 包括上邊提到的: 下載, 安裝, 儲存設定, 節點發現, 加入叢集, 監控設定...