主流Kubernetes發行版梳理,看完就會選了

Kubernetes的開源性質及其受歡迎程度催生了容器管理平臺的許多不同發行版。

2014年,Kubernetes作爲內部Google orchestrator Borg開源版本推出,目前已是最成功和發展最快的IT基礎架構項目之一。2018年,Kubernetes已廣泛應用於各種業務,從軟件開發商到航空公司。Kubernetes得以迅速普及的原因之一就是其開源架構及由社區提供的大量手冊、文檔和支持。

就像所有成功的開源項目一樣,Kubernetes也存在很多發行版,開源版本固然好,但太過基礎和存在很多錯誤,因此開發者需要不同的發行版提供額外功能。雖然市面上也有很多雲供應商支持Kubernetes,但本文側重梳理可在本地運行或作爲雲託管選項的發行版,減少被單一供應商綁定的風險。

原版開源Kubernetes

Kubernetes由Cloud Native Computing Foundation(雲原生計算資金會)和Kubernetes用戶組成的多樣化社區支持,也是第一個從CNCF畢業的項目。

開發者對原版Kubernetes最爲熟悉,通過官網或者Github開源網站可輕鬆找到原版Kubernetes的功能列表和官方文檔。需要注意的是,如果選擇該版本,你可以享受所有開源功能和社區支持,但原生開源版本往往存在一些問題或者無法第一時間獲得社區幫助。

許可和定價模型

開源且100%免費,可以像所有開源產品一樣安裝、使用和更新。

安裝

設置Kubernetes集羣的方法有很多,從非常容易到中等難度。 開發者可使用minikube在本地安裝Kubernetes並進行實驗和測試,或使用kubeadm在雲中引導集羣。對於故障排除或最佳實踐示例,可以查閱各種資源或者在GitHub社區發問。

Kubernetes很強大,但絕對不容易。如果沒有準備就緒或者經驗不足,處理問題時可能會導致停機,因此在將Kubernetes用於最終用戶服務之前,開發者需要花一些時間在沙箱模式下練習。

紅帽OpenShift

在Kubernetes之前,OpenShift作爲一個單獨項目並使用完全不同的技術運行。後來,紅帽意識到Kubernetes的能力越來越強大,因此在第3版中明智地將其作爲OpenShift的核心。

與原生開源Kubernetes相比的主要區別在於:

  • 集成用戶管理
  • 集成Docker註冊表
  • 集成CI管道
  • 集成資源模板
  • 使用類似但略有不同的概念,如路由器而不是Ingresses,Projects而不是Namespaces等。

OpenShift由紅帽提供支持,根據Stackalytics的說法,紅帽是繼谷歌和社區之後Kubernetes項目的第三大貢獻者,因此可能是維持Kubernetes發行版最合法的公司之一。

許可和定價模型

OpenShift有三種定價模式:

  • OKD,OpenShift免費發佈的Kubernetes。
  • OpenShift Enterprise,由紅帽託管和管理,也可由客戶端部署在本地,託管版本的起價爲每年48,000美元,包括3個master,3個etcd和4個應用程序節點。
  • OpenShiftOnline,在線提供的PaaS版本。每2 Gb RAM的成本約爲每月50美元,與其他Kubernetes即服務提供商相比,這有點貴。

安裝

該發行版的安裝過程不是很複雜,但需要特定配置。安裝使用Ansible,因此建議使用此配置管理工具。

OpenShift顯然是一個企業級發行版,目標是穩定而不是功能,因此該發行版總是比原生開源版本的發佈速度慢一些。

Platform9 Managed Kubernetes

這是一個非常重要的商業發行版,可在任何環境中部署Kubernetes,無論是公有云還是本地,Platform9的工程師也可以遠程管理,該發行版基本每週六都會對Managed Kubernetes進行一次更新,也會與該公司開發的無服務期計算項目相集成,與幾乎所有編程語言兼容。

許可和定價模型

可以免費試用,也有相關開源工具支持,但持續使用需要付費。

安裝

安裝過程比較容易,適合各種環境

Tectonic

Tectonic是一種非常受歡迎的Kubernetes發行版,目前正在與紅帽集成。與開源Kubernetes相比,優勢功能如下:

  • 易於設置
  • 用戶友好的Web UI
  • 用戶管理
  • 對供應商的支持

Tectonic由CoreOS創建,CoreOS是一家致力於發展容器技術公司,但已被紅帽收購,因此可能會看到RedHat在集成路線圖中宣佈OpenShift和Tectonic融合。

許可和定價模型

Tectonic擁有商業許可模式,最多可免費提供10個節點,而對於更大的集羣,每10個節點的定價約爲每月1000美元,其中包括支持。

安裝

可以通過安裝程序或Terraform安裝。但是,Tectonic的未來方向尚不確定,很可能將完全消失並最終與OpenShift集成。因此,從長遠來看,Tectonic可能不是最佳選擇。

Stackube

HyperHQ提供用於運行容器的Hyper.sh雲服務,Stackube是一款以Kubernetes爲中心的OpenStack發行版。Stackube的一大優勢是可根據所用容器運行時環境提供不同程度的多租戶機制,用戶可選擇Docker或者虛擬機進行配置。

Kubernetes Distribution by Containerum

Containerum有兩種不同但互補的產品,其中一個是Kubernetes發行版稱爲KDC;另一個是開源Containerum平臺,可作爲UI安裝在Kubernetes之上,具有一些額外功能,比如用戶管理,指標監控,CI/CD管道等。

許可和定價模型

KDC和Containerum平臺都是100%開源,因此可以自由部署解決方案。

安裝

設置相對容易,與vanilla Kubernetes安裝非常相似,開發者可以在具有Helm圖表的現有Kubernetes集羣之上安裝Containerum Platform。

KDC + Containerum平臺可能是最簡單的Kubernetes發行版,也符合已經擁有Kubernetes集羣但需要比開源Kubernetes集羣更多功能的用戶需求。

Rancher

Rancher是一個包含Kubernetes的容器管理平臺,因此可以將其視爲Kubernetes發行版。與開源Kubernetes相比,Rancher的主要特點如下:

  • 跨供應商集羣部署
  • 用戶管理
  • Web用戶界面
  • 集成CI/CD管道

Rancher Kubernetes由成立於2014年的創業公司Rancher Labs提供支持,該公司的明星產品是Rancher容器平臺,但也創建RancherOS,一個以容器爲中心的Linux發行版。

許可和定價模型

Rancher是100%開源,該公司可提供諮詢和支持服務,但此部分報價不公開。

安裝

開發者可使用名爲RKE的Kubernetes安裝工具。

Canonical Kubernetes

該發行版由Linux發行版Ubuntu背後的公司Canonical支持,相當於是一個可在主流公有云提供商和OpenStack等私有云解決方案上輕鬆部署的vanilla Kubernetes,能夠輕鬆設置並管理跨供應商的Kubernetes集羣,用戶界面是官方Kubernetes儀表板。

許可和定價模型

Canonical Kubernetes完全免費。但是,每個虛擬節點有幾個支持包,起價爲每年200美元(至少應用2,500美元),支持包從每十個節點14,600起步。

安裝

開發者可使用Canonical開發的部署工具Conjure-up或Juju來完成安裝。

Canonical Kubernetes並沒有給Kubernetes增添太多新功能,但是,它允許設置跨供應商和位置的Kubernetes集羣,並提供企業級支持。

結論

對於這些發行版,不同公司有不同的盤算,有的願意花時間培養內部人員的專業知識,從原生開源版本開始搭建;有些公司則更傾向於使用第三方服務。

如果將Kubernetes用於小型項目或僅僅是爲了練習,更好的選擇是原生開源版本;對於大型項目和關鍵應用程序,建議使用第三方供應商提供的Kubernetes發行版,以便即時訪問支持和故障排除。

參考鏈接:https://dzone.com/articles/kubernetes-distributions-how-do-i-choose-one

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章