前言
我們都知道 Kubernetes 有很多特性可以確保系統與應用程式能夠更加穩定、部署更加流暢與管理更加簡單,而且使用起來也相對容易,但在自建(或地端)部署時,卻與想像的不同,有很多需要關注的問題與事情,例如:高可靠性(Highly Available,HA)、如何安全地更新叢集、裸機負載平衡器(Bare-metal Load Balancer)、動態 DNS 更新、硬體設備整合、分散式儲存整合與離線安裝(Offline Installation)等等,除了上述問題外,還要為了客戶能夠對部署的 Kubernetes 更有信心,因此必須進行壓力測試、E2E 測試、一致性測試與叢集安全掃描等等。從上述簡短的描述中,可以了解到自己蓋一套可以用的 Kubernetes 叢集,並且自己維運是多麼麻煩的事,這對公司來說都是成本支出。也正因此大多數人會偏向使用公有雲的 Kubernetes 服務,如 EKS、GKE 與 AKS 等等來減少維運成本的支出。下圖顯示不同部署的方式需要管理的部分。