Kubernetes 1.13:透過 Kubeadm 簡化叢集管理、容器儲存介面 (CSI) 及 CoreDNS 作為預設 DNS 現已正式發佈
我們很高興宣布 Kubernetes 1.13 的發布,這是我們 2018 年的第四個也是最後一個版本!
Kubernetes 1.13 是迄今為止發布週期最短的版本之一,僅為 10 週。此版本繼續專注於 Kubernetes 的穩定性和可擴展性,其中儲存和叢集生命週期領域的三個主要功能在此週期中升級為正式發布 (GA)。此版本中值得注意的升級功能包括:使用 kubeadm 簡化叢集管理、容器儲存介面 (CSI) 以及作為預設 DNS 的 CoreDNS。
這些穩定版本的發布對於使用者和運營商在設定支援期望方面是一個重要的里程碑。此外,在此版本中,社群還可以持續獲得穩定且不斷改進的內部功能和新的 Alpha 功能。這些功能將在下面的「其他值得注意的功能」部分中討論。
讓我們深入了解此版本的關鍵功能
使用 GA 中的 kubeadm 簡化 Kubernetes 叢集管理
大多數接觸過 Kubernetes 的人都曾在某個時候接觸過 kubeadm。它是一個用於管理叢集生命週期的基本工具,從建立到組態再到升級;現在 kubeadm 已正式 GA。kubeadm 處理在現有硬體上啟動生產叢集,並以最佳實務方式組態核心 Kubernetes 組件,從而為新節點提供安全又易於加入的流程,並支援輕鬆升級。此 GA 版本值得注意的是現在已升級的進階功能,特別是圍繞可插拔性和可組態性。kubeadm 的範圍是成為管理員和自動化、更高等級系統的工具箱,而此版本是朝著這個方向邁出的重要一步。
容器儲存介面 (CSI) 進入 GA
容器儲存介面 (CSI) 在 v1.9 中作為 Alpha 版推出,並在 v1.10 中作為 Beta 版推出後,現已進入 GA。借助 CSI,Kubernetes 磁碟區層變得真正可擴展。這為第三方儲存供應商提供了編寫可與 Kubernetes 互操作的外掛程式的機會,而無需觸及核心程式碼。規格本身也已達到 1.0 狀態。
隨著 CSI 現在趨於穩定,外掛程式作者正在核心之外以自己的步調開發儲存外掛程式。您可以在 CSI 文件中找到範例和生產驅動程式的清單。
CoreDNS 現在是 Kubernetes 的預設 DNS 伺服器
在 1.11 中,我們宣布 CoreDNS 已達到基於 DNS 的服務發現的正式發布 (GA) 狀態。在 1.13 中,CoreDNS 現在正在取代 kube-dns 作為 Kubernetes 的預設 DNS 伺服器。CoreDNS 是一個通用、權威的 DNS 伺服器,它提供與 Kubernetes 向後相容但可擴展的整合。CoreDNS 的移動部件比之前的 DNS 伺服器少,因為它是一個單一可執行檔和單一進程,並且透過建立自訂 DNS 條目來支援靈活的用例。它也是用 Go 語言編寫的,使其具有記憶體安全性。
CoreDNS 現在是 Kubernetes 1.13+ 的推薦 DNS 解決方案。該專案已將通用測試基礎架構切換為預設使用 CoreDNS,我們建議使用者也進行切換。KubeDNS 仍將至少再支援一個版本,但現在是開始規劃您的遷移的時候了。許多 OSS 安裝程式工具已經完成了切換,包括 1.11 中的 Kubeadm。如果您使用託管解決方案,請與您的供應商合作以了解這將如何影響您。
其他值得注意的功能更新
對第三方裝置監控外掛程式的支援已作為 Alpha 功能引入。這從 kubelet 中移除了當前特定於裝置的知識,以便實現未來需要樹外特定於裝置的知識的用例。
Kubelet 裝置外掛程式註冊正在升級為穩定版。這建立了一個通用的 Kubelet 外掛程式發現模型,不同類型的節點級外掛程式 (例如裝置外掛程式、CSI 和 CNI) 可以使用該模型來建立與 Kubelet 的通訊通道。
拓撲感知磁碟區調度現在已穩定。這使調度器能夠感知 Pod 磁碟區的拓撲約束,例如區域或節點。
APIServer DryRun 正在升級為 Beta 版。這將「apply」和宣告式物件管理從 kubectl
移至 apiserver
,以修復許多今天無法修復的現有錯誤。
Kubectl Diff 正在升級為 Beta 版。這允許使用者執行 kubectl
命令來查看本機宣告的物件組態與即時物件的目前狀態之間的差異。
使用持久磁碟區來源的原始區塊裝置正在升級為 Beta 版。這使得原始區塊裝置 (非網路裝置) 可以透過持久磁碟區來源使用。
社群內的每個特殊興趣小組 (SIG) 都將繼續交付針對其各自專業領域最受歡迎的增強功能、修復程式和功能。有關按 SIG 分組的完整列表,請訪問發行說明。
可用性
Kubernetes 1.13 可在 GitHub 上下載。若要開始使用 Kubernetes,請查看這些互動式教學課程。您也可以使用 kubeadm 輕鬆安裝 1.13。
功能部落格系列
如果您有興趣更深入地探索這些功能,請明天回來查看我們的 Kubernetes 五日系列,我們將重點介紹以下功能的詳細演練
- 第 1 天 - 使用 Kubeadm 簡化 Kubernetes 叢集建立
- 第 2 天 - 樹外 CSI 磁碟區外掛程式
- 第 3 天 - 將預設 DNS 外掛程式切換為 CoreDNS
- 第 4 天 - 新的 CLI 提示和技巧 (Kubectl Diff 和 APIServer Dry run)
- 第 5 天 - 原始區塊磁碟區
發布團隊
此版本的發布歸功於數百位貢獻技術和非技術內容的個人的努力。特別感謝由 Google 軟體工程師 Aishwarya Sundar 領導的發布團隊。發布團隊的 39 位成員協調發布的許多方面,從文件編寫到測試、驗證和功能完整性。
隨著 Kubernetes 社群的發展,我們的發布流程代表了開源軟體開發中令人驚嘆的協作示範。Kubernetes 繼續以驚人的速度獲得新使用者。這種成長創造了一個正向回饋循環,更多的貢獻者提交程式碼,從而創建一個更具活力的生態系統。迄今為止,Kubernetes 已擁有超過 25,000 名個人貢獻者和超過 51,000 人的活躍社群。
專案速度
CNCF 繼續完善 DevStats,這是一個雄心勃勃的專案,旨在將專案的無數貢獻視覺化。K8s DevStats 展示了主要公司貢獻者的貢獻細分,以及從個人貢獻者到提取請求生命週期時間等各方面的令人印象深刻的預先組態報告集。在過去一年中,平均每月有 347 家不同的公司和超過 2,372 位個人為 Kubernetes 做出貢獻。查看 DevStats 以了解有關 Kubernetes 專案和社群的整體速度的更多資訊。
使用者亮點
已建立的全球組織正在大規模地在生產環境中使用 Kubernetes。最近發布的社群使用者案例包括
- IBM Cloud 是一家領先的公共雲、私有雲和混合雲功能供應商,正在使用 雲原生技術進行高可用性部署,在五個區域中的每個區域的兩個區域中部署三個實例,並透過故障轉移支援進行負載平衡。
- 美國保險監管官協會 (NAIC) 是美國標準制定和監管支援組織,利用 Kubernetes 在 兩天內創建快速原型,而以前至少需要一個月。
- Ocado 是世界上最大的線上食品零售商,在 Kubernetes 中託管相同的應用程式,在他們的測試環境中使用的硬體資源減少了 15-25%。
- Adform 是一家為跨裝置啟用數位廣告的廣告技術供應商,使用 Kubernetes 來降低硬體資源的利用率,容器的效率比虛擬機器高 2-3 倍。
Kubernetes 是否對您的團隊有所幫助?與社群分享您的故事。
生態系統更新
- CNCF 最近發布了他們以普通話進行的雙年 CNCF 調查的結果,發現自 2018 年 3 月以來,亞洲的雲端使用量成長了 135%。
- CNCF 擴展了其認證產品,以包含認證 Kubernetes 應用程式開發人員考試。CKAD 考試認證個人設計、建置、組態和公開 Kubernetes 雲原生應用程式的能力。更多資訊可以在這裡找到。
- CNCF 新增了一個新的合作夥伴類別,Kubernetes 培訓合作夥伴 (KTP)。KTP 是一級經過審核的培訓供應商,他們在雲原生技術培訓方面擁有豐富的經驗。查看合作夥伴並了解更多資訊這裡。
- CNCF 還提供線上培訓,教授創建和組態真實世界 Kubernetes 叢集所需的技能。
- Kubernetes 文件現在具有使用者旅程:基於讀者是誰以及讀者想要做什麼的特定學習路徑。對於初學者來說,學習 Kubernetes 比以往任何時候都更容易,而更有經驗的使用者可以找到特定於叢集管理員和應用程式開發人員的任務旅程。
KubeCon
世界上最大的 Kubernetes 聚會 KubeCon + CloudNativeCon 即將於 2018 年 12 月 10-13 日在西雅圖和 2019 年 5 月 20-23 日在巴塞隆納舉行。本次會議將包含技術會議、案例研究、開發人員深度探討、沙龍等。註冊將於 2019 年初開放。
網路研討會
於太平洋時間 1 月 10 日上午 9 點加入 Kubernetes 1.13 發布團隊成員,了解此版本的主要功能。在此處註冊。
參與其中
參與 Kubernetes 最簡單的方法是加入眾多與您的興趣相符的特殊興趣小組 (SIG) 之一。有什麼想向 Kubernetes 社群廣播的嗎?在我們的每週社群會議以及以下管道中分享您的聲音。
感謝您的持續回饋和支持。
- 在 Stack Overflow 上發布問題 (或回答問題)
- 加入 Discuss Kubernetes 上的社群討論
- 在 Twitter 上關注我們 @Kubernetesio 以獲取最新更新
- 在 Slack 上與社群聊天
- 分享您的 Kubernetes 故事。