1.1 雲原生歷史

1.1 雲原生歷史

雲原生的發展歷程

雲原生(Cloud Native)最初來描述雲上應用的典型架構與特性,隨着容器、kubernetes、Serverless、FaaS技術的演進,CNCF(Cloud Native Computing Foundation ,雲原生計算基金會)把雲原生的概念更廣泛地定義爲“讓應用更有彈性、容錯性、觀測性的基礎技術,讓應用更容易部署、管理的基礎軟件、讓應用更容易編寫、編排的運行框架等”,希望能夠讓開發者最好的利用雲的資源、產品和交付能力。

下邊大致梳理一下雲原生的發展過程。

2004 年 ~ 2007 年,Google 已在內部大規模地使用像 Cgroups 這樣的容器技術;
2008 年,Google 將 Cgroups 合併進入了 Linux 內核主幹。
2013 年,Docker 項目正式發佈。
2014 年,Kubernetes 項目也正式發佈。
2015 年,CNCF 成立。
2017 年,CNCF 達到 170 個成員和 14 個基金項目。
2018 年,CNCF 成立三週年有了 195 個成員,19 個基金會項目和 11 個孵化項目,如此之快的發展速度在整個雲計算領域都是非常罕見的。

2014 年 Kubernetes 項目發佈的原因也非常容易理解,因爲有了容器和 Docker 之後,就需要有一種方式去幫助大家方便、快速、優雅地管理這些容器,這就是 Kubernetes 項目的初衷。在 Google 和 Redhat 發佈了 Kubernetes 之後,這個項目的發展速度非常之快。

2015 年由 Google、Redhat 以及微軟等大型雲計算廠商以及一些開源公司共同牽頭成立了 CNCF 雲原生基金會。CNCF 成立之初,就有 22 個創始會員,而且 Kubernetes 也成爲了 CNCF 託管的第一個開源項目。在這之後,CNCF 的發展速度非常迅猛。

雲原生技術生態現狀

因此,如今我們所討論的雲原生技術生態是一個龐大的技術集合。CNCF 有一張雲原生全景圖(https://github.com/cncf/landscape),在這個全景圖裏已經有 200 多個項目和產品了,這些項目和產品也都是和 CNCF 的觀點所契合的。所以如果以這張全景圖作爲背景,加以思考就會發現,我們今天所討論的雲原生其實主要談論了以下幾點:

雲原生基金會 —— CNCF

CNCF 是目前雲計算領域最成功的開源基金會之一,是 Kubernetes、 etcd、Envoy 等知名開源項目的託管基金會。

雲原生技術社區

雲原生技術社區,比如像 CNCF 目前正式託管的 20 多個項目共同構成了現代雲計算生態的基石,其中像 Kubernetes 這樣的項目已經成爲了世界第四活躍的開源項目;目前從 CNCF 畢業的項目以及有 6 個,分別是 Kubernetes 、Prometheus、Envoy、CoreDNS、containerd、Fluentd 。

雲原生技術產業

除了前面兩點之外,現在全球各大公有云廠商都已經支持了 Kubernetes。此外,還有 100 多家技術創業公司也在持續地進行投入。現在阿里巴巴也在談全面上雲,而且上雲就要上雲原生,這也是各大技術公司擁抱雲原生的一個例子。

我們正處於時代的關鍵節點

2019 年正是雲原生時代的關鍵節點,爲什麼這麼說?我們這裏就爲大家簡單梳理一下。

從 2013 年 Docker 項目發佈開始說起,Docker 項目的發佈使得全操作系統語義的沙盒技術唾手可得,使得用戶能夠更好地、更完整地打包自己的應用,使得開發者可以輕而易舉的獲得了一個應用的最小可運行單位,而不需要依賴任何 PaaS 能力。這對經典 PaaS 產業其實是一個“降維打擊”。

2014 年的時候,Kubernetes 項目發佈,其意義在於 Google 將內部的 Borg/Omega 系統思想借助開源社區實現了“重生”,並且提出了“容器設計模式”的思想。而 Google 之所以選擇間接開源 Kubernetes 而不是直接開源 Borg 項目,其實背後的原因也比較容易理解:Borg/Omega 這樣的系統太複雜了,是沒辦法提供給 Google 之外的人使用,但是 Borg/Omega 這樣的設計思想卻可以藉助 Kubernetes 讓大家接觸到,這也是開源 Kubernetes 的重要背景。

這樣到了 2015 年到 2016 年,就到了容器編排“三國爭霸”的時代,當時 Docker、Swarm、Mesos、Kubernetes 都在容器編排領域展開角逐,他們競爭的原因其實也比較容易理解, 那就是 Docker 或者容器本身的價值雖然大,但是如果想要讓其產生商業價值或者說對雲的價值,那麼就一定需要在編排上面佔據一個有利的位置。

其中,Swarm 更偏向於生態,而 Mesos 技術更強一些。相比之下, Kubernetes 則兼具了兩者優勢,最終在 2017 年“三國爭霸”的局面中得以勝出,成爲了當時直到現在的容器編排標準。這一過程的代表性事件就是 Docker 公司宣佈在覈心產品中內置了 Kubernetes 服務,並且 Swarm 項目逐漸停止維護。

到了 2018 年的時候,雲原生技術理念開始逐漸萌芽,這是因爲此時 Kubernetes 以及容器都成爲了雲廠商的既定標準,以“雲”爲核心的軟件研發思想逐步形成。

而到了 2019 年,情況似乎又將發生一些變化。

2019 年 —— 雲原生技術普及元年

爲什麼說 2019 年很可能是一個關鍵節點呢?我們認爲 2019 年是雲原生技術的普及元年。

首先大家可以看到,在 2019 年,阿里巴巴宣佈要全面上雲,而且“上雲就要上雲原生”。我們還可以看到,以“雲”爲核心的軟件研發思想,正逐步成爲所有開發者的默認選項。像 Kubernetes 等雲原生技術正在成爲技術人員的必修課,大量的工作崗位正在涌現出來。

這種背景下,“會 Kubernetes” 已經遠遠不夠了,“懂 Kubernetes”、“會雲原生架構” 的重要性正日益凸顯出來。 從 2019 年開始,雲原生技術將會大規模普及,這也是爲什麼大家都要在這個時間點上學習和投資雲原生技術的重要原因。

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