天天看點

獨家對話火山引擎張鑫:未來3年迎來雲原生容器巅峰期

作者:死者的青銅
獨家對話火山引擎張鑫:未來3年迎來雲原生容器巅峰期

作者 | 楊麗

受訪人 | 張鑫

雷鋒網按:企業對技術路徑的選擇從來不存在唯一性。當下數字化勢頭強勁的浪潮下,雲原生成為技術的流行方向,虛拟化、容器、微服務組合在一起,面向企業業務提供足夠靈活的雲服務,會成為下一個普世化的技術棧道。

由嘗試容器部署開始,位元組跳動的雲原生實踐在近些年走得越來越快。

2016年6月,位元組跳動啟用kubernetes技術棧,開始對業務進行大規模容器化改造,2017、2018年進入階段性上量階段,到2018年這一年部署的容器單叢集已經達到了上萬個節點。

如今,位元組跳動已經有超過95%的應用實作了雲原生化,從最開始的面向容器部署,過渡到面向服務的階段,不僅用上了容器編排工具,更是在這之上建立了比較完善的微服務治理體系。2020年,火山引擎作為位元組跳動旗下的企業級技術服務平台,正式将雲原生的能力開放了出來。

除了沒有太多的曆史包袱,讓這家年輕的企業可以輕裝上陣,無需關注替換帶來的成本外,更多地還有對技術趨勢的判斷力和投入,很早就擁抱了雲的方式。因而,位元組跳動的很多業務一開始就根深蒂固長在了雲上,在接下來設計新的業務系統時,也會充分考慮利用雲的彈性能力。生于雲、長于雲,這成為企業可以借鑒的最直白、卻又最具有普世化特征的雲原生實踐路子。

在與雷鋒網的訪談中,火山引擎副總經理張鑫闡釋了他對雲原生容器技術的趨勢判斷、引入這項技術的面臨的難點與挑戰,以及位元組跳動自身過去五年的雲原生實踐路徑。

“從技術曲線上講,虛拟化差不多經曆了十年的發展曆程,如今到了商業化的穩定期。同樣,容器+k8s從2014年谷歌開源出來到如今,預計未來三年也會達到一個巅峰期。”

但目前kubernetes因其涉及的次元廣泛,包括微服務架構理念、網絡、存儲等各個層級,導緻無論是産品服務商還是企業實踐者,都在這個過程中存在不小的技術挑戰。

張鑫作為火山引擎雲原生應用服務的負責人,也是國内容器産業的早期研究和實踐者。以下将呈現這次訪談的完整總結。

初識雲原生的四個方向

盡管在技術戰略層面,雲原生被各大網際網路企業列為主要發展方向,但雲原生和容器是兩個相關,卻不能劃等号的概念。

一開始,外界可能會比較具象、容易了解的是容器本身,是對資源、應用的一種标準化封裝。但擁有容器化部署,可能隻意味着企業有了雲原生的基礎設施,并不意味着實作了雲原生應用。從容器到雲原生的進化,還是會有比較大的差異。

從雲原生核心技術角度判斷,雲原生進入成熟期應存在東南西北四個方向上的演化:

先看南向,面向新一代的雲原生基礎架構。基礎設施即代碼(iac)作為最近一段時間的流行技術趨勢,目的是為了讓it基礎設施變得更加高效、靈活,通過可配置的方式,将基礎設施更快地進行部署,進一步提升整體架構的性能、靈活性。國内雲廠商也推出了很多類似的産品或技術方案。

再看東西向。有兩個趨勢:一是更多的應用、中間件,包括大資料平台、資料庫、數倉、ai平台等新興業務負載都可以實作雲原生化,甚至是serverless化;二是能夠通過雲原生更好地實作企業内資料孤島的打通、系統的連接配接,包括api服務、api治理、api網關。

然後是北向。這個方向上湧現了一批面向靈活開發的新興産品,如低代碼、無代碼工具,還有面向開發測試場景,面向工業網際網路等行業場景,以及面向業務場景的bpm等,能夠基于雲原生微服務技術,建構面向應用開發的apaas。

從技術曲線上講,虛拟化差不多經曆了十年的發展曆程,如今到了商業化的穩定期。同樣,容器(2013年docker公司公布技術标準)+kubernetes(2014年谷歌開源項目)到如今,預計未來三年也會達到一個巅峰期。從産業數字化發展的現狀來看,現在各行各業都在如火如荼地進行建設,行業數字化在加速,理論上是一個非常好的視窗期。

中國信通院的一份雲原生使用者調查報告顯示,容器化改造依舊是主流趨勢,将容器技術投入核心業務生産的受訪使用者同比增長2.48%。調研機構gartner公布的資料顯示,到2022年,75%的全球企業将在生産中使用雲原生的容器化應用。

但這中間同樣存在巨大的鴻溝,也就是上述東西南北向的技術産品,如何能跟前端業務需求密切連接配接起來。這是需要包括供應商在内的企業,在未來三年快速去落地的事情。

最優先級任務

那麼,火山引擎首先會在這四個層面落地哪些事情?

“我們更多在做的是南北向的事情。即向下修煉内功,向上為開發者提供服務。南向是我們認為最關鍵的内功,任何一個雲上應用、系統,最終還是要回歸到穩定性、可靠性等問題,這是我們一定要做且目前也做得非常好的事情。”張鑫指出。

首先,位元組跳動業務自身就面臨着如何在大規模資料量和業務量的情況下,仍然保持足夠良好的性能的問題。位元組跳動建構有一個非常龐大的資料中心,容納了近百萬台伺服器。在雲原生基礎設施層面,包括将計算、網絡、存儲上如何更好地與容器技術結合上,團隊已經做了很多技術創新。

其次,雲原生應用最終還是要提供給開發者使用,如何讓開發更快、更簡單,這是團隊追求的一個重要優先級。

但目前企業對容器的實踐也可以具體拆分為三個階段:

第一階段,面向容器編排管理,使用者直接跟容器kubernetes打交道;

第二階段,開始進一步提升,使用者從面向容器變成了面向一個個服務,于是就有了各類微服務架構的治理,這時使用者就不需要關注容器配置、管理等問題,而是要考慮整個業務架構如何拆分,應該有哪些微服務元件,不同元件之間如何互聯互通等問題;

第三階段,即serverless階段,這時使用者無需關心整體業務架構如何設計,隻需要關注最前端的業務邏輯如何能夠快速表達,這也就要求廠商需要将業務背後的中台和背景相關元件進行提前預置。

值得一提的是,位元組跳動本身存在一個中台的組織形态,它對内會支援很多的業務線進行建構,可以看到很多的應用或功能,其實是基于serverless的方式進行建構的。

目前來看,多數企業仍處于面向容器、面向服務的第一二階段,而在産品層面,位元組跳動已經開始着力于向第三階段發力。

獨家對話火山引擎張鑫:未來3年迎來雲原生容器巅峰期

一股新興勢力

站在客戶層面,不同類型的客戶對引入雲原生容器服務是會比較明顯的差異的。

其中,網際網路行業成為雲原生采用率占比最高的行業。首先,網際網路企業對雲原生的應用深度和廣度都非常大,也願意為高roi技術買單。

尤其是頭部的網際網路企業,其資源能力極強,且業務形态非常複雜,往往會選擇開源深度定制+自研的方式進行技術實踐,原因在于其業務體量足夠大,能夠通過哪怕1%的性能提升而帶來比較高的roi。

相比之下,很多腰部的網際網路企業可能很難為了提升1%的性能或成本,而投入大量的研發團隊。位元組跳動最近的一項調研也發現,将網際網路行業客戶群體進一步拆分,其中像線上遊戲等垂直行業,其雲原生的采用率占比已經超過80%。

對于傳統行業而言,近些年來因其數字化轉型的業務驅動影響,使得他們對新技術的擁抱越來越高。

如金融、零售電商、工業網際網路、生信醫療、智慧政府等行業,因其數字業務創新的驅動,有了越來越多網際網路相關業務。從團隊最近一段時間的服務觀察,這些行業對新技術的擁抱也越來越高。

舉個例子,在生信醫療領域,随着蛋白質測序、基因分析等業務持續湧現,以及醫療基礎數字化建設的推進,企業需要越來越多的算力,建構更加靈活的應用系統。此外,生信醫療行業本身也在着力打造一個基礎科研平台,以打通醫院、高校在科研方面存在重複造輪子的資料孤島問題。

企業需要追求新技術嗎?

外界有言,谷歌早在2003年就已經對自身實作了容器化應用,而其後多年一直作為秘密武器秘而不宣。依靠這項技術,僅在運維成本方面每年就能節約一半的費用,這無疑大大提升了企業自身的競争優勢。

曾就職于這家企業的張鑫,目睹過谷歌每天20億個容器計算叢集在跑。

在他看來,對于企業而言,不會單純将追求嘗試新技術為目的,嘗試新技術,仍然需要業務驅動。是以從業務角度進行劃分的話,首先就要看企業是不是有足夠多的敏态業務,然後基于此進一步衡量使用新技術進行改造的roi。

容器技術在更多有狀态應用場景中的延伸,導緻it基礎層架構相應地也在持續優化,比如對存儲、資料庫的能力要求,對開發運維環境帶來的複雜度問題,以及對大規模計算存在的短闆。

從應用角度來看,無狀态應用、有狀态應用、穩态應用等等,不同應用進行雲原生化的roi、難易程度是有差異的。

首先,無狀态的應用,最适合進行第一批雲原生化的改造。

其次,有狀态應用往往可能是叢集化的應用,包括中間件、資料庫、elasticsearch等業務場景。想要解決這部分場景問題需要一定的技術壁壘,但一旦将有狀态應用實作雲原生化之後,其實會有比較好的回報。

容器環境下,有狀态應用經常會遇到的一個問題是,如何做資料的持久化,這對企業存儲的要求發生了改變,如選擇何種存儲系統,是否可以滿足分布式存儲性能?資料能否跟上層的應用編排結合起來?業務排程時,是否需要考慮資料的親和性?

再往後,分布式存儲本身還依賴于強大的網絡體系,這就要求容器本身需要自帶有相應的解決方案。如何基于rdma做高性能傳輸,是否能直接在硬體層面,如基于智能網卡做硬體解除安裝……等等這些技術難點。

但換個角度看,這些問題也為很多雲原生容器廠商提供了很大的空間。因為這些能力并不是在開源的技術體系内就能夠解決,這也是火山引擎希望發力的領域。

第三類就是傳統應用或穩态應用。

對于這類應用而言,首先遷移就會有一定的難度,它們可能是一些商業套裝軟體,可能跑在非x86架構上;其次,如果将這類應用建構完後,未必會産生很多的回報,可能不需要解決高彈性等性能問題,也不需要靈活疊代,甚至都不建議花很多的精力和風險來換取回報。

雲原生時代的新機遇

雲原生,還将影響各家雲廠商對于标準的了解和共識。

一是要形成标準。否則不同廠商之間都有一套封閉系統,彼此間将很難進行相容,且廠商自身也很難做大,企業自身也會面臨越來越多的技術孤島。

其二,雲原生會推動标準的形成。此前容器docker之是以流行,是因為它定義了一套從應用打包、封裝、運作的一套管理标準,kubernetes也是建立了一套對容器如何進行編排的一套标準。雖然未來還會有越來越多的技術如serverless、apaas、低代碼等,但容器+kubernetes其實已經解決了很多這些根本性的标準化問題。

“這個狀态是比較樂觀的。”張鑫最後指出。

據雷鋒網觀察,對開放了解的差異,因不同标準組織涉及的商業利益的平衡政策而不同。當下這個市場,競争局面依然掌握在國際化雲廠商的規模經濟效益中,如何在技術層面有所突破?在赢家通吃的市場中,一起做開放标準,一起開發開源軟體,以抵消市場上司者的優勢地位或許才有出路。

(雷鋒網)

繼續閱讀