當下最熱門的 5 個雲原生技術,你都掌握了嗎?

運維之美2019-09-13 05:27:54


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

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

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

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

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

五大雲原生技術

下面是五個引起業界關注的開源項目。這些項目在 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 中的一個項目的話,那將會十分有意思。

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

來源:Freebuf

原文:http://t.cn/EANoO8y

題圖:來自谷歌圖片搜索

版權:本文版權歸原作者所有

投稿:歡迎投稿,郵箱: [email protected]


你可能還喜歡

點擊下方圖片即可閲讀

利用 Katacoda 免費同步 Docker 鏡像到 Docker Hub


https://hk.wxwenku.com/d/201370763