本篇文章已超過一年。較舊的文章可能包含過時內容。請檢查頁面中的資訊自發布以來是否已變得不正確。
押注 Kubernetes:Red Hat 的觀點
兩年前,Red Hat 在 Kubernetes 上下了重注。我們押注在一個簡單的想法上:開源社群是構建應用程式協調未來的最佳場所,而且只有開源社群才能成功整合成功所需的各種能力。作為 Red Hat 的一份子,這個想法並非牽強附會 - 我們已經看到它在許多社群中成功應用,但我們也看到它失敗,尤其是在廣泛的影響力沒有穩固的基礎支持時。在 Kubernetes 1.0 發布一週年,以及 Kubernetes 專案首次開源提交兩年後,值得提出這個問題
Kubernetes 是正確的選擇嗎?
軟體的成功取決於使用者的成功 - 無論該軟體是否為他們帶來新的機會或效率。在這方面,Kubernetes 的成功超乎我們最狂野的夢想。我們知道數百個 Kubernetes 的實際生產部署案例,在企業中,透過 Red Hat 支援多租戶的 OpenShift 發行版本、在 Google Container Engine (GKE) 上、在一些全球最大的軟體公司運行的深度客製化版本中,以及透過教育、娛樂、新創和 DIY 社群。這些部署者回報了更快的交付時間、標準化的應用程式生命週期、更高的資源利用率,以及更具彈性和穩健的應用程式。而這僅僅來自社群的客戶或貢獻者 - 如果現在有數千個 Kubernetes 安裝在野外管理數萬個實際應用程式,我也不會感到驚訝。
我認為這樣的普及驗證了 Kubernetes 背後的願景:透過為分散式運算中的每個核心模式提供工具,來構建適用於所有應用程式的平台。這些模式
- 簡單的複寫式網頁軟體
- 分散式負載平衡與服務發現
- 在容器中運行的不可變更映像檔
- 將相關軟體共置於 Pod 中
- 簡化網路附加儲存的消耗
- 彈性且強大的資源排程
- 在服務工作負載旁運行批次和排程工作
- 管理和維護叢集式軟體,如資料庫和訊息佇列
允許開發人員和運營商轉向更高層次的抽象,就像他們讓 Google 和其他科技生態系統中的公司能夠擴展到資料中心電腦及更遠的地方一樣。從 Kubernetes 1.0 到 1.3,我們不斷提升平台的功能和靈活性,同時也提升了效能、擴展性、可靠性和可用性。在 Kubernetes 之上運行的整合和工具的爆炸式增長,進一步驗證了核心架構決策的可組合性、公開開放且靈活的 API,以及刻意限制核心平台並鼓勵擴展。
今天,Kubernetes 擁有開源生態系統中最大且最活躍的社群之一,幾乎有一千名貢獻者,GitHub 上任何單一儲存庫專案中,人類產生的提交率最高的專案之一,超過一千個基於 Kubernetes 的專案,以及相應活躍的 Stack Overflow 和 Slack 頻道。Red Hat 很榮幸能成為這個生態系統的一份子,作為 Google 之後 Kubernetes 的最大貢獻者,每天都有更多的公司和個人加入我們。Kubernetes 的想法找到了沃土,而你們,社群,提供了使其成長的熱情和承諾。
所以,我們押對了嗎?基於以上所有原因,以及更多原因:是的。
接下來是什麼?
儘管我們對 Kubernetes 的成功感到高興,但現在還不是休息的時候!雖然我們還有許多功能和改進想要構建到 Kubernetes 中,但我認為普遍共識是,我們希望專注於唯一重要的長期目標 - 圍繞 Kubernetes 建立一個健康、成功且蓬勃發展的技術社群。正如約翰·甘迺迪可能說過的話:
> 不要問你的社群能為你做什麼,而要問你能為你的社群做什麼
在最近發布到 kubernetes-dev 列表的一篇文章中,Brian Grant 列出了一系列很棒的近期目標 - 有助於社群成長、改進我們執行方式並實現未來擴展的目標。在每個 Kubernetes 特殊興趣小組 中,我們都試圖建立可持續的團隊,這些團隊可以跨公司和社群執行任務,我們正在積極努力確保每個 SIG 都能在專案的共同願景下,跨越各種不同的利益做出貢獻、協調和交付成果。
我們特別感興趣的是擴展的故事 - Kubernetes 的核心如何成為資料中心作業系統的跳動心臟,並使更多應用程式管理模式能夠在 Kubernetes 之上構建,而不僅僅是構建到其中。在 1.2 和 1.3 版本中圍繞第三方 API、API 發現、彈性排程器策略、外部授權和身份驗證(超出 Kubernetes 內建的範圍)所做的工作僅僅是個開始。當有人有需求時,我們希望他們能夠輕鬆找到解決方案,並且我們也希望其他人能夠輕鬆地使用並為該解決方案做出貢獻。同樣地,驗證想法的最佳方法是針對實際需求進行原型設計,並針對實際問題進行迭代,這應該是容易且自然的。
在 Kubernetes 的第二個生日之際,我希望回顧這一年在精進、使用者成功和社群參與方面的成果。能夠為 Kubernetes 做出貢獻是一種榮幸和榮譽,而且仍然感覺我們才剛剛開始。謝謝您,我希望您能加入這趟旅程!