值得關注的五大雲原生技術






雲原生(Cloud-Native)是一種文化,更是一種潮流,它是雲計算的一個必然導向,是讓雲成為雲化戰略成功的基石。雲計算時代,雲原生技術注定將對現代化應用的建設、交付與運維產生顛覆性的影響。

根據相關調查結果顯示:自
2017 年 12 月以來,雲原生技術在生產中的使用量平均增長了 200% 以上。以 Kubernetes、Kubeflow
為代表的雲原生技術讓「雲原生」從一個模糊的概念,強勢成長為通用技術。無論是 Google、微軟、IBM
這些互聯網巨頭,還是國內阿里巴巴、騰訊、百度、當當網等大廠都爭相把雲原生技術項目作為其技術重心。

Kubernates是一個開源容器管理平台,現已成為雲原生技術的主要支柱。自從把它移交給Cloud
Native Compute
Foundation(雲原生計算基金會)以來,該項目在業界已經取得了前所未有的關注,目前沒有一個公有雲環境不提供Kubernates 托管服務。

Kubernates 正迅速成為運行現代容器化應用的操作系統。

Kubernates
的崛起導致了一個全新的生態系統的形成。目前有各種各樣的 ISV 和 Sass
提供商為構建雲原生環境提供了構建工具。這個蓬勃的生態系統,可以輕鬆地與當時微軟或 VMware 在 Windows 和 VSphere
全盛時期所享有的地位相媲美。但它們之間的關鍵區別在於,雲原生的產品大多都是開源的,並在雲端提供一個商業托管版本。

值得關注的五大雲原生技術

5大雲原生技術

下面是五個引起業界關注的開源項目。這些項目在 Kubernates 的基礎上提供了額外的擴展功能,使得其成為運行 Web 規模和企業應用程序的堅實平台。

1. Istio

在 Kubernates 之後, Istio
是最受歡迎的雲原生技術。它是一種服務網格,可以安全地連接一個應用程序的多個微服務。你也可以將 Istio
視為內部和外部的負載均衡器,具有策略驅動的防火牆,支持全面的指標。開發人員和操作人員喜歡 Istio
的原因在於,其具有非侵入式的部署模式。此外,幾乎任何 Kubernates 服務都可以在無需更改代碼或配置的情況下,與 Istio
進行無縫集成。

Google 最近宣布在 GCP 上管理 Istio 服務。除 Google 外,IBM、Pivotal、Red Hat、Tigera 以及 Weaveworkds 也都是該項目的積極貢獻者和支持者。

Istio 為 ISV 提供了向企業提供定制化解決方案和工具的絕佳機會。該項目必將成為建設雲原生平台的核心項目之一,我希望每個托管 Kubernates 服務的平台都有托管的 Istio 服務。

2. Prometheus

Prometheus
是部署在 Kubernates 上用於觀察工作負載的一個雲原生監控工具。它通過全面的指標和豐富的儀表板填補了雲原生世界中存在的重要空白。在
Kubernates 之後,它是唯一從雲原生計算基金中畢業的項目。Prometheus 通過聚合可通過集中式儀表板顯示的指標來填充 Istio
的空白。從反映 Kubernates 集群運行狀況的核心指標,到高級應用程序特定指標,可以毫不誇張地說,Prometheus
幾乎可以監控所有內容。它整合了像 Grafana 這樣主流的數據可視化工具。Kubernates
接下來推出的有關擴展和監控的功能都將取決於Prometheus,這使它成為雲原生平台建設中至關重要的一個項目。

3. Helm

如果說 Kubernates 是新型的操作系統,那麼 Helm 就是應用程序安裝器。基於 Debian 安裝包和 Red Hat Linux RMPS設計,Helm 可以通過執行單個命令輕鬆地部署雲原生工作負載。

Kubernates
應用程序由各種元素組成,例如部署(deployments)、服務(services)、入口控制器(ingress
controllers)、persistant volumes 等等。Helm
則通過將雲原生應用程序的所有元素和依賴關係聚合到稱為「圖表」(Chart)的部署單元中,來充當統一打包工具。

由CNCF負責管理的 Helm 項目,目前的積極參與者主要包括 Bitnami、Google、Microsoft、CodeFresh 以及Ticketmaster 等。Helm 正朝著成為真正意義上的雲原生應用程序安裝器的方向而努力。

4. Spinnaker

雲原生技術的主要承諾之一就是快速交付軟件的能力。Spinnaker
是一個最初在 Netflix 上構建的開源項目,它就做到了這一承諾。Spinnaker
是一個版本管理工具,可以加速雲原生應用程序的部署。通過瞄準傳統的 Iass 環境(如 Amazon EC2 和運行在 Kubernates
上的現代 Cass 平台),Spinnaker 無縫填補了傳統虛擬機和容器之間的空白。其多雲功能也使其成為跨不同雲平台部署應用程序的理想平台。

Spinnaker 可作為當前所有主流的雲環境自托管平台。像 Armory 這樣的初創公司目前也正在提供基於服務等級協議(SLA)的商業級及企業級 Spinnaker。

5. KubeLess

事件驅動計算正在成為現代應用程序架構不可或缺的一部分。功能即服務(Faas)是當前無服務計算的交付模型之一,它通過基於事件的調用來填補容器。現代應用程序會將服務打包為在同一環境中運行的容器和函數。隨著
Kubernates 成為雲原生計算的首選平台,它必須與容器一起運行功能。

來自Bitnami的開源項目 Kubeless,是雲原生生態系統中最受歡迎的無服務器(serverless)項目之一。它與
AWS lambda
的兼容性與對主流語言的支持,使其成為理想的選擇。所謂「無服務器」(serverless)架構,即基於互聯網的系統,其中應用開發不使用常規的服務進程。相反,它們僅依賴於第三方服務(例如
AWS Lambda 服務),客戶端邏輯和服務托管遠程過程調用的組合。

CNCF 目前尚未將無服務器項目納入其中。到目前為止最接近這種形式的是 CloudEvent ——一種以常見方式描述事件數據的標準規範。如果 Kubeless 成為 CNCF 中的一個項目的話,那將會十分有意思。

隨著企業開始接受新的范例,一系列新的工具和平台也正在迅速湧現,以支持現代的雲原生工作負載。

*參考來源:forbes,米雪兒編譯整理,轉載請註明來自FreeBuf.COM

值得關注的五大雲原生技術