後Kubernetes時代,2019的容器技術生態會發生些什麼?

後Kubernetes時代,2019的容器技術生態會發生些什麼?

作者 | 張磊

“Serverless 化”與“多樣性”將成為上層應用服務生態的兩大關鍵詞。

1、Kubernetes 項目的被採納度將持續增長

作為“雲原生”(Cloud Native)理念落地的基礎,Kubernetes 項目已經成為了構建容器化平臺體系的默認選擇。但是,不同於一個只能生產資源的集群管理工具,Kubernetes 項目最大的價值,乃在於它從一開始就提倡的聲明式 API 和以此為基礎“控制器”模式。

在這個體系的指導下, Kubernetes 項目保證了在自身突飛猛進的發展過程中 API 層的相對穩定的和一定的向後兼容能力,這是作為一個平臺級項目被用戶廣泛接受和認可的重要前提。更重要的是,Kubernetes 項目為使用者提供了寶貴的 API 可擴展能力和良好的 API 編程範式,催生出了一個完全基於 Kubernetes API 構建出來的上層應用服務生態。可以說,正是這個生態的逐步完善與日趨成熟,才確立了 Kubernetes 項目如今在雲平臺領域牢不可破的領導地位,也間接宣告了競品方案的邊緣化。

與此同時,上述事實標準的確立,也使得“正確和合理地使用了 Kubernetes 的能力”,成為了評價上層應用服務框架(比如 PaaS 和 Serverless )的一個重要依據:這不僅包括了對框架本身複雜性和易用性的考量,也包括了對框架可擴展性和演進趨勢的預期與判斷。

不過,相比於國外公有云上以 Kubernetes 為基礎的容器化作業的高佔比,國內公有云市場對容器的採納程度目前仍然處於比較初級的水平,直接販賣虛擬機及其關聯 IaaS 層能力依然是國內絕大多數公有云提供商的主要業務形態。所以,不同於國外市場容器技術增長逐步趨於穩定、Kubernetes 公有云服務已經開始支撐頭部互聯網客戶的情況,Kubernetes 以及容器技術在國內雲計算市場裡依然具有巨大的增長空間和強勁發展勢頭。

不難預測,Kubernetes 項目在國內公有云上的逐漸鋪開,會成為接下來幾年國內公有云市場上的一個重要趨勢。而無論是國內還是國外,大量 Kubernetes 項目相關崗位的湧現,正是驗證這個趨勢與變化的一個最直接的徵兆。

2、“Serverless 化”與“多樣性”將成為上層應用服務生態的兩大關鍵詞

當雲上的平臺層被 Kubernetes 項目逐步統一之後,過去長期糾結在應用編排、調度與資源管理上裹足不前的 PaaS 項目得到了生產力的全面釋放,進而在雲平臺層之上催生出了一個日趨多樣化的應用服務生態。

事實上,這個生態的本質與 2014 年之前的 PaaS 生態沒有太大不同。只不過,當原本 PaaS 項目的平臺層功能(編排、調度、資源管理等)被剝離了出來之後,PaaS 終於可以專注於應用服務和發佈流程管理這兩個最核心的功能上,開始向更輕、更薄、更以應用為中心的方向進行演進。而在這個過程中, Serverless 作為 PaaS 最為極端的一種形態,自然開始成為了主流話題。

這裡需要指出的是,Serverless 從 2014 年 AWS 發佈 Lambda 時專門用來指代函數計算(或者說 FaaS)發展到今天,已經被擴展成了包括大多數 PaaS 功能在內的一個泛指術語。而究其本質,“無狀態”、“事件驅動”和“按實際使用計費”,可以認為是 Serverless 最主要的三個特徵。這也是為什麼我們會認為今天大家所談論的 Serverless,其實是 PaaS 的一種極端形態。

伴隨著 Serverless 概念本身的“橫向發展”,我們不難預料到,2019 年之後雲端的應用服務生態,一定會趨於多樣化,進而覆蓋到更多場景下的應用服務管理需求。並且,無論是 Function,傳統應用還是容器,都會開始嘗試以不同的方式和形態嵌入到“無狀態”、“事件驅動”和“按實際使用計費”這三個基本框架當中。

當然,這種變化趨勢的原因也不言而喻:Serverless 三大特徵背後所體現的,乃是雲端應用開發過程向“用戶友好”和“低心智負擔”方向演進的最直接途徑。而這種“簡單、經濟、可信賴”的樸實訴求,正是雲計算誕生的最初期許和永恆的發展方向。

而這種上層應用服務能力向 Serverless 遷移的演進過程,必然還會伴隨著整個雲計算平臺繼續演進,這既包括了面向新應用服務的存儲和網絡方案,也可能會包括計費模型的變化。但最重要的,還是不斷被優化的 Auto-scaling 能力和細粒度的資源隔離技術,只有它們才是確保 Serverless 能為用戶帶來價值的最有力保障。

3、看得見、摸得著、能落地的“雲原生”

自從 CNCF 社區迅速崛起以來,“雲原生”三個字就成了各大雲廠商競相角逐的一個關鍵詞。不過,相比於 Kubernetes 和容器技術實實在在的發展和落地過程,雲原生的概念卻長期以來“曲高和寡”,讓人很難說出個所以然來。

其實,Cloud Native 看似與 Cloud 強相關,但實際上我們不難看出,這個概念的本質,就是對 Kubernetes 項目及其周邊關鍵生態項目組成的容器化基礎設施體系的一個指代,這與 CNCF 創立的初衷和發展歷程是完全一致的。 當然,到了 Kubernetes 已經成為雲端平臺層事實標準的今天,這樣的指代本身可能已經沒有什麼爭議了。

也正是伴隨著這樣的發展過程,雲原生對於使用者的意義,在 2019 年之後已經變得非常清晰:是否採用雲原生技術體系,實際上已經變成了一個是不是要採納和兼容業界主流標準的取捨,這涉及到整個團隊的發展、招聘、產品形態等一系列問題,而絕非一個單純的技術決策。

明白了這一層道理,在 2019 年,我們已經不難看到,國內最頂尖的技術公司們,都已經開始在雲原生技術框架下發起了實實在在的技術體系升級與落地的“戰役”。顯然,大家都已經注意到,相比於討論“雲原生到底是什麼”這樣無謂的意識形態話題,抓緊時間和機遇將 Kubernetes 及其周邊核心技術生態在組織中生長起來,並藉此機會完成自身基礎技術體系的轉型與升級,才是這些體量龐大的技術巨人趕上這次雲計算浪潮的不二法寶。在這個背景下,所謂“雲原生”體系在這些公司的落地,只是這些激動人心的技術革命背後一個微不足道的附加值而已。

而在”雲原生”這個關鍵詞的含義不斷清晰的過程中,我們一定要再次強調 Kubernetes、Envoy、Isito、Knative 和 Prometheus 這幾個關鍵項目:它們其實就是“看得見、摸得著、能落地”的“雲原生”概念的重要組成部分,把握住了這些項目的演進與發展脈絡,就是把握住了未來雲計算發展的主線與方向。

延展閱讀:請注意,容器技術圈已邁入後Kubernetes時代!

張磊,《Docker 容器與容器雲》作者,Kubernetes 社區資深成員與項目維護者,Kubernetes 容器運行時和集群調度等多個核心特性的作者之一。


分享到:


相關文章: