本文發表於一年多前。舊文章可能包含過時內容。請檢查頁面中的資訊自發布以來是否已變得不正確。
kubeadm 7 週歲生日快樂!
這是一段多麼精彩的旅程!
從 2016 年 9 月的第一篇博文《我們如何讓 Kubernetes 變得極其易於安裝》開始, 隨後是激動人心的發展,並在兩年後實現了正式釋出(GA)/ 《使用 kubeadm 建立生產就緒的 Kubernetes 叢集》。
此後,持續、穩定、可靠的小改進一直延續至今。
什麼是 kubeadm? (快速回顧)
kubeadm 專注於在現有基礎設施上引導 Kubernetes 叢集,並執行一系列必要的維護任務。 kubeadm 介面的核心非常簡單:透過執行 kubeadm init
建立新的控制平面節點,透過執行 kubeadm join
將工作節點加入控制平面。此外,還包括用於管理已引導叢集的實用程式,例如控制平面升級、令牌和證書續訂。
為了保持 kubeadm 的精簡、專注以及廠商/基礎設施無關性,以下任務不在其範圍之內:
- 基礎設施製備
- 第三方網路
- 非關鍵外掛,例如用於監控、日誌記錄和視覺化的外掛
- 特定的雲提供商整合
例如,基礎設施製備工作留給了其他 SIG Cluster Lifecycle 專案,比如 Cluster API。 相反,kubeadm 只涵蓋每個 Kubernetes 叢集的共同點:控制平面。 使用者可以在叢集建立之後,在 Kubernetes 之上安裝他們偏好的網路解決方案和其他外掛。
在幕後,kubeadm 做了很多工作。該工具確保你擁有所有關鍵元件:etcd、API 伺服器、排程器、控制器管理器。你可以加入更多的控制平面節點以提高彈性,或加入工作節點來執行你的工作負載。你將獲得為你設定好的叢集 DNS 和 kube-proxy。元件之間的 TLS 被啟用並用於傳輸加密。
讓我們一起慶祝!kubeadm 的過去、現在和未來
總而言之,kubeadm 的故事與 Kubernetes 的故事以及這個了不起的社群緊密相連。
因此,慶祝 kubeadm 首先是慶祝這個社群,一群人齊心協力,為引導 Kubernetes 叢集尋找一個共同的基礎,一個最小可行的工具。
這個工具在過去對 Kubernetes 的成功起到了關鍵作用,今天依然如此。kubeadm 價值主張的亮點可以總結為兩點:
執著於為大多數使用者提供極致簡單的體驗:kubeadm init 和 kubeadm join,這就是你所需要的一切!
敏銳地專注於一個明確定義的問題範圍:在現有基礎設施上引導 Kubernetes 叢集。正如我們的口號所說:**保持簡單,保持可擴充套件!**
這條亮點,這個明確的契約,是整個 kubeadm 使用者群所依賴的基礎,這篇文章也是對 kubeadm 使用者的慶祝。
我們非常感謝使用者的任何反饋,感謝他們透過 Slack、GitHub、社交媒體、部落格、在每屆 KubeCon 或世界各地的各種聚會上對這個工具持續表現出的熱情。繼續加油!
這麼多年來,一直讓我驚歎的是人們在 kubeadm 之上構建的偉大產品。時至今日,仍然有一個強大且非常活躍的專案列表在這樣做:
- minikube
- kind
- Cluster API
- Kubespray
- 還有更多;如果你今天正在使用 Kubernetes,那麼很有可能你甚至在不知不覺中就在使用 kubeadm 😜
這個社群、kubeadm 的使用者、以及在 kubeadm 之上構建的專案,是 kubeadm 7 週歲生日慶典的亮點,也是未來發展的基石!
敬請關注,並隨時與我們聯絡!
- 立即嘗試使用 kubeadm 安裝 Kubernetes
- 在 GitHub 上參與 Kubernetes 專案
- 在 Slack 上與社群聯絡
- 在 Twitter 上關注我們 @Kubernetesio 獲取最新更新