十年,阿里云重構“計算”

來源: 企鵝號
作者:InfoQ
時間:2021-03-26
16807
本文,InfoQ 通過阿里巴巴集團研究員、阿里云智能彈性計算負責人張獻濤,阿里云智能資深技術專家、阿里云容器技術負責人易立的講述,還原阿里云十年“計算”重構史。

采訪嘉賓:張獻濤、易立

編輯:鈺瑩

十年前,“IOE”穩(wěn)穩(wěn)坐在 IT 架構的 C 位,不容置疑;十年后,上云成為大勢所趨,云原生、Docker、Kubernetes 成為主流,以阿里云為代表的國產(chǎn)云計算不斷追趕,不僅縮短了和國際巨頭的差距,還形成了龐大的“計算”家族。本文,InfoQ 通過阿里巴巴集團研究員、阿里云智能彈性計算負責人張獻濤,阿里云智能資深技術專家、阿里云容器技術負責人易立的講述,還原阿里云十年“計算”重構史。

“計算”家族悶頭攻堅的那幾年

2008 年 -2015 年,從“去 IOE”到虛擬化架構的全面升級,從初涉容器到全面容器化。

2008 年,云計算的時代大幕逐步拉開,眾多巨頭加入開啟良性競爭。與此同時,阿里巴巴提出“去 IOE”,這在行業(yè)里掀起了不小的討論。

2009 年,阿里云成立。當時的云計算是不太可能使用 VMWare 這樣的商業(yè)化軟件,所以就采用了當時比較流行的開源虛擬化軟件 Xen。第二年,阿里云就推出了首個彈性計算產(chǎn)品 ECS。

除此之外,阿里云網(wǎng)絡產(chǎn)品也開始有了聲音,AVS 和 SLB 相繼上線。但是,從技術產(chǎn)品上來看,阿里云早期的“計算”家族還是比較單薄的,也存在一些限制,云計算的概念在業(yè)界基本處于萌芽階段,玩家不多。

2011 年開始,各種各樣的云開始出現(xiàn),更強更新的 CPU 帶來了云上虛擬機計算能力的提升和換代,阿里云的計算產(chǎn)品家族逐漸豐富,接連推出 ECS 2.0、ECS 企業(yè)級產(chǎn)品家族,從對 Xen 架構研發(fā)過渡到 KVM 架構,并為 12306 提供了技術支持。

與此同時,阿里云開始研究容器技術,如今盛行的 Docker 當時還未出現(xiàn),整個團隊研究的是 T4,一種基于 LXC 的云技術,容器調(diào)度技術開始逐步支撐阿里集團的在線業(yè)務,云原生時代開啟。

2013 年,淘寶最后一臺小型機下線,阿里自研的飛天云操作系統(tǒng)開始支撐集團業(yè)務。隨后不久,洛神 1.0 發(fā)布,這是國內(nèi)首發(fā)自研 SDN 系統(tǒng)。雖然這些消息的發(fā)布讓外界震驚于阿里云居然有這樣的實力,但只有他們自己最清楚技術瓶頸尚需突破。當時,業(yè)內(nèi)依舊停留在如何把當前 CPU 提供的能力,比如 Xen、KVM 等虛擬化的軟件應用好,卻沒有發(fā)生太大變革。除了 VMWare 提供的二進制翻譯技術以及劍橋大學提出的準虛擬化技術 paravirtualization,行業(yè)內(nèi)并沒有太大創(chuàng)新。

“當時我們的虛擬化技術,已經(jīng)滿足不了云計算發(fā)展的步伐。尤其在那個時間點上,我們也在探討,怎樣能夠把自有業(yè)務也遷移到云上面來,這遇到了很大的難題,我們需要去變革虛擬化技術?!薄獜埆I濤

“不行,我們需要創(chuàng)新“

2015 年,整個團隊開始探索可行的改革方式。當時遇到的主要問題是虛擬化的性能損耗,這是云計算打娘胎里出來就帶著的缺點。從成立以來,阿里云工程師一直在致力降低云計算虛擬化的損耗,當時已經(jīng)做到比業(yè)內(nèi)平均水平低很多了。但在 2016 年雙 11 的技術復盤會上,時任阿里巴巴集團 CTO 張建鋒提出了極為苛刻的要求——把虛擬化開銷也降低到 0。這看似是違背能量守定律的,即便在學術界也沒有相關研究。

最終阿里云團隊另辟蹊徑,想出了新的解決方案——通過專用芯片來解決虛擬化開銷。

從技術的實現(xiàn)思路看,阿里云研發(fā)團隊需要重構一套計算架構,通過研發(fā)一個新的芯片組來為每個節(jié)點提供功能性和管理性的需求支持,在此基礎上,再研發(fā)出一套新的服務器硬件,和配套的系統(tǒng)軟件;然后再將這套技術架構融入到現(xiàn)有的產(chǎn)品設計中去。

軟硬協(xié)同架構設計的理念已然飄向了云端,體量大的云廠商服務器部署規(guī)模達到百萬級別,意味著可以定制任何硬件,而云廠商也開始重新審視芯片、硬件和軟件的協(xié)同創(chuàng)新。要想收獲軟硬融合的技術紅利,重要的前提是可以自定義芯片,自主研發(fā)硬件。

就這樣,張獻濤的整個團隊開始了下一代虛擬化技術——“神龍”的研發(fā)之旅。回憶起這個決定,張獻濤在采訪中表示:“我們大概從 2016 年開始規(guī)劃下一代虛擬化技術,也就是神龍。我們當時對此的判斷是這是未來數(shù)據(jù)中心,特別是云數(shù)據(jù)中心虛擬化技術的前進方向。比較有趣的是最近幾年,業(yè)界幾乎所有云計算公司都在往神龍架構的方向演進,我們則很早就開始采用神龍架構支撐雙 11 業(yè)務”。

2017 年,神龍架構問世了。它真正使用軟硬融合、軟硬件協(xié)同設計的模式,改變了傳統(tǒng)虛擬化技術和當前的計算架構不友好的地方。與“神龍”的意義類似,阿里云這一年推出了全球首個云企業(yè)網(wǎng) CEN,引領了業(yè)界云上網(wǎng)絡互聯(lián)產(chǎn)品的發(fā)展方向。這一年,阿里云網(wǎng)絡產(chǎn)品大爆發(fā),先后上線了遷移 VPC 方案、VPN 網(wǎng)關、共享流量包、共享帶寬、全球加速以及云企業(yè)網(wǎng)。

神龍架構發(fā)布不久,一家汽車廠商就慕名前來詢問是否可以提供高性能計算方面的能力。面對工程仿真服務的計算資源供不應求,本地 HPC 集群硬件資源老化,性能難以滿足業(yè)務需求,更新迭代又會影響業(yè)務進度,整個公司是進退兩難。就這樣,雙方聯(lián)手建設了業(yè)內(nèi)首個 IaaS 混合型工業(yè)仿真計算服務平臺,并于 2018 年初成功上線。

同期,阿里云的容器團隊也開始融入 Docker 技術,并于 2015 年底正式發(fā)布了企業(yè)級容器服務 ACK,正式對外開放容器技術,整個集團也開始實現(xiàn)全面容器化,推動了整個應用開發(fā),交付和運維方式的變革。易立在采訪中如是說道。

這一年,全面容器化幫助雙 11 大促實現(xiàn)快速彈性擴容。由于業(yè)務的超大規(guī)模使得其復雜程度非常高,這也為容器技術帶來了更大的挑戰(zhàn)。例如在容器鏡像分發(fā)過程中,一次發(fā)布分發(fā)幾萬個鏡像,這樣巨大的流量是一個不小的挑戰(zhàn)。為實現(xiàn)效率的極致要求,阿里云利用 P2P 技術,實現(xiàn)大規(guī)模大批量的快速分發(fā),實現(xiàn) 10 秒內(nèi)完成跨機房鏡像下載容器啟動。容器技術對于雙 11 的顯著影響還包括在具體的混部技術實施中,通過混部技術,阿里巴巴集團范圍內(nèi)能夠節(jié)省 30% 左右的 IT 成本支出,在雙 11 這個特殊時間段里,將每萬筆交易成本下降超過 75%。

這一年,云網(wǎng)絡也邁入了云原生時代,推出云原生 SDWAN,并全面支持 IPv6。

至此,整個阿里云“計算”家族已經(jīng)相當完善且龐大,并嘗試在雙 11 中進行應用。

一場統(tǒng)一的“畢業(yè)大考”:全面支撐雙 11

2016 年 -2019 年,阿里云“計算”家族從初涉雙 11 到全面支撐,從這場畢業(yè)大考中取得優(yōu)異成績。

2018 年的雙 11,阿里嘗試將部分流量用神龍架構來支撐,這在一定程度上可以驗證神龍整體產(chǎn)品和技術架構是否具備支撐雙 11 超級流量的能力。

“我們對這件事情是非常謹慎的,不僅需要能夠支撐住這些流量的沖擊,還需要讓其在性能、穩(wěn)定性、效率等方面比上一代技術更加優(yōu)異,并且可以帶來成本的節(jié)約”。

經(jīng)過了 2018 年的順利過關,2019 年阿里將把核心交易系統(tǒng)全部搬到了云上,“這些系統(tǒng)對存儲 IO 能力、計算能力、網(wǎng)絡延遲等的要求相當于將神龍的能力榨取到極致。雙 11 大促如果可行,我們服務超大型客戶就更有信心了?!?/span>

在這個部署過程中,容器和神龍架構也完成了完美適配,神龍裸金屬服務器運行的容器對比物理機有 10%-30% 的性能優(yōu)勢?!叭萜鞅旧砭褪且粋€非常輕量的、OS虛擬化的技術,其最大的特點是敏捷、彈性、可移植。容器化應用對底層資源的第一個要求就是具備強大的彈性能力;第二個需要有不同的彈性計算資源供給,神龍架構可以統(tǒng)一支持虛擬機、物理機甚至 Serverless 彈性容器實例,可以滿足容器應用多樣化需求;第三個要求是更高的計算密度,神龍架構下計算、存儲、網(wǎng)絡密度都有很大提升?!币琢⑷缡钦f道。

在 2019 年的這場大考中,整個阿里云“計算”家族順利畢業(yè),拿下了 2500 億的交易額,同年發(fā)布的洛神 2.0 系統(tǒng)也在這次雙 11 中完美首秀。

這一年雙 11,集群的規(guī)模超過百萬容器,單容器集群節(jié)點數(shù)量過萬,數(shù)據(jù)庫的峰值超過 54 萬筆每秒,對應 8700 萬查詢每秒,而實時計算每秒峰值處理消息超過 25 億條,消息系統(tǒng) RocketMQ 峰值處理了超過每秒 1.5 億條消息。

在總結會上,行癲表示:過去的一天,20 個小時是阿里技術上最經(jīng)受考驗的一次。阿里云承載阿里巴巴 100% 的核心系統(tǒng),這是我們?nèi)虻谝粋€做到的,我們有自己自研的飛天操作系統(tǒng)、神龍架構、云原生的數(shù)據(jù)庫、計算存儲分離的架構、全球第一個大規(guī)模 RDMA 網(wǎng)絡。

經(jīng)此一役,阿里云“計算”家族的技術能力被廣泛認可。然而,突如其來的疫情再次將其拉回備考狀態(tài)。

2020 年,突如其來的小考

2020 年一場疫情打破了很多人生活的節(jié)奏,如果說“雙 11”是一場畢業(yè)大考,疫情就是一場臨時小考。為應對疫情中在線辦公和在線教育場景下激增的流量,阿里云迅速幫助釘釘在 2 小時內(nèi)緊急擴容一萬臺云服務器,這個數(shù)字也創(chuàng)下了阿里云快速擴容的新紀錄。

借助自身的大規(guī)模集群管理能力,在短短幾天之內(nèi),阿里云幫助百家云團隊有效升級了原有的架構方案,實現(xiàn)了數(shù)十倍的擴容,大幅提升了其性能與穩(wěn)定性,并擁有了應對爆發(fā)性規(guī)模的能力,用戶毫無察覺。

“隨著阿里云計算能力不斷發(fā)增強,我們已經(jīng)能夠一分鐘擴容 1000 臺虛擬機,彈性容器實例平均啟動時間僅為 10 秒。”

這一年,阿里云又迎來了數(shù)據(jù)湖分析、實時計算、大數(shù)據(jù)分析等產(chǎn)品基于容器或者 Serverless 服務的方式對外交付,此時已經(jīng)可以看到 Serverless 成為新的可能。

2020 年 9 月 18 日,2020 杭州云棲大會上,阿里巴巴正式成立云原生技術委員會,云原生成為阿里技術新戰(zhàn)略。在云原生技術委員會成立之后的雙 11,雙 11 核心系統(tǒng)又實現(xiàn)了全面云原生化。

在采訪中,易立表示支撐這場雙 11 戰(zhàn)役在支持規(guī)模和創(chuàng)新上有四點重要突破:一是極致彈性。雙 11 的突發(fā)業(yè)務量可以達到平時的十倍以上,不只是阿里集團,還有與之合作的商家、物流等都需要面對這樣的流量沖擊,阿里云都可以有效支撐。

二是極致算力,雙 11 期間的大數(shù)據(jù)平臺批處理日志量及實時計算的數(shù)據(jù)都非常大,阿里云實現(xiàn)了核心數(shù)據(jù)庫的全面云原生化,讓整個數(shù)據(jù)庫充滿彈性。

三是三位一體,開源產(chǎn)品與商業(yè)云產(chǎn)品以及集團內(nèi)部實現(xiàn)統(tǒng)一,比如 OpenKruise 是容器團隊開源的云原生應用自動化引擎,本質(zhì)是基于 Kubernetes 標準擴展出來一個的應用負載項目,它可以配合原生 Kubernetes 使用,并為管理應用容器、sidecar、鏡像分發(fā)等方面提供更加強大和高效的能力,從而在不同維度上通過自動化的方式解決 Kubernetes 之上應用的規(guī)模化運維和規(guī)?;ㄕ締栴},包括部署、升級、彈性擴縮容、QoS 調(diào)節(jié)、健康檢查、遷移修復等。截至 2020 年 雙 11,阿里巴巴內(nèi)部已運行近十萬 OpenKruise 的 workload、管理著上百萬容器。而且,阿里巴巴內(nèi)部運行的 OpenKruise 版本代碼超 95% 來自社區(qū)倉庫。

四是 Serverless 的大規(guī)模實踐。眾多業(yè)務都在采用 Serverless 的方式進行開發(fā),其彈性伸縮能力相比以前提升了至少 10 倍,可以極大提升整個平臺的彈性和穩(wěn)定性。

截至 2020 年,經(jīng)過 10 多年的技術實踐,阿里云已經(jīng)擁有國內(nèi)最豐富的云原生產(chǎn)品家族,覆蓋 10 多個類別 100 余款產(chǎn)品,涵蓋底層基礎設施、數(shù)據(jù)智能、分布式應用等,可以滿足不同行業(yè)場景的需求,為企業(yè)數(shù)字創(chuàng)新打造最短路徑。

567bab4f-c8d8-4024-9b0f-a7520f72ba46.png

面向下一個十年的技術籌備

“我們堅信 Serverless 是云計算的未來”

隨著以 Kubernetes 為代表的云原生技術成為云計算的容器界面,Kubernetes 成為云計算的新一代操作系統(tǒng)。因為屏蔽了服務器的各種運維復雜度,Serverless 讓開發(fā)人員可以將更多精力用于業(yè)務邏輯設計與實現(xiàn),而逐漸成為云原生主流技術之一。

易立表示,Serverless 計算可以分為 Serverless 運行時 和后端服務( Backend as a Service)。其中 Serverless 應用運行時在阿里云上有非常豐富的產(chǎn)品選擇:如面向事件驅(qū)動應用的函數(shù)計算 FunctionCompute,提供了極簡的編程和運維體驗;面向微服務應用的 Serverless 應用引擎(SAE),對于傳統(tǒng)微服務架構應用無需任何修改即可以輕松上云。

此外,阿里云還提供了Serverless容器的產(chǎn)品,比如彈性容器實例 ECI 和 Serverless Kubernetes(ASK),它們提供了標準的Kubernetes界面,不但可以讓用戶享受到極致的彈性能力,并且是完全免運維的。它們在過去一年有了 9 倍的高速增長。

動態(tài)、混合、分布式的云環(huán)境將成為新常態(tài)

上云已是大勢所趨,但對于企業(yè)而言,有些業(yè)務出于對數(shù)據(jù)主權、安全隱私的考量,會采用混合云架構。

此外,邊緣計算將成為企業(yè)云戰(zhàn)略的重要組成部分,為應用提供更低網(wǎng)絡延遲,更高網(wǎng)絡帶寬和更低網(wǎng)絡成本。我們需要有能力將智能決策、實時處理能力從云延展到邊緣和 IoT 設備端。隨著云平臺成為企業(yè)數(shù)字化轉(zhuǎn)型的創(chuàng)新平臺,一個變化隨之產(chǎn)生——云正在靠近它們。在分布式云中,公有云的服務能力可以位于不同的物理位置,而公共云平臺提供者會負責服務的運維、治理、更新和演變。

軟硬一體化全面升級

云計算的發(fā)展推動了整個計算架構的演進,面向數(shù)據(jù)中心的芯片層出不窮,計算密度得到了大幅提升,如果將其與 Serverless 結合能夠全面提升計算效率和資源利用率;過去,我們已經(jīng)經(jīng)歷了 CPU 和存儲資源的池化,如今我們可以看到越來越多的 GPU 資源池化,開發(fā)者可以按需創(chuàng)建彈性的 GPU,大幅降低 AI 的計算成本,資源池化使得整個計算能力的彈性進一步增強,可以讓 Serverless 計算場景覆蓋更多的領域。

此外,Serverless 也在全面推動軟硬一體化的進一步升級。阿里云“計算”家族的整體性價比不斷提升,企業(yè)用云的成本逐步下降,底層硬件對上層應用的支持越來越強,“可以理解為下一代神龍是以應用為中心的,我們將對上層的函數(shù)計算等應用的支持越來越好,效率提升的同時大幅降低成本”。

無處不在的計算催生新一代容器實現(xiàn)

針對不同計算場景,容器運行時會有不同需求。KataContainer、Firecracker、gVisor、Unikernel 等新的容器運行時技術層出不窮,分別解決安全隔離性、執(zhí)行效率和通用性三個不同維度的要求。OCI(Open Container Initiative)標準的出現(xiàn),使不同技術采用一致的方式進行容器生命周期管理,進一步促進了容器引擎技術的持續(xù)創(chuàng)新。

綜上,這些技術趨勢未來的發(fā)展將由阿里云“計算”家族繼續(xù)演繹。過去十年,云計算重構了“計算”,未來十年,計算將如何被定義呢?如果你希望與阿里云共同走向未來十年,歡迎掃碼報名參與【2021 阿里云·計算峰會】

嘉賓介紹:

易立,阿里巴巴資深技術專家,阿里云容器團隊負責人。曾在 IBM 中國開發(fā)中心工作,擔任資深技術專員;作為架構師和主要開發(fā)人員負責和參與了阿里云在云計算、區(qū)塊鏈、Web 2.0、SOA 領域的一系列產(chǎn)品研發(fā)和創(chuàng)新。

張獻濤,博士,阿里巴巴集團研究員、阿里云智能彈性計算產(chǎn)品線負責人,QCon 專題演講嘉賓;業(yè)界知名的云計算和虛擬化技術專家,加入阿里云后,主導了彈性計算產(chǎn)品和技術的演進工作,他的主要研究方向涉及信息安全,系統(tǒng)軟件、芯片以及軟硬協(xié)同設計;作為阿里云飛天神 架構發(fā)明者,推動了云數(shù)據(jù)中心IaaS核心技術的變革;在國內(nèi)外發(fā)表多篇關于云計算和虛擬化的高質(zhì)量學術論文,擁有近30項專利申請和授權。

立即登錄,閱讀全文
版權說明:
本文內(nèi)容來自于企鵝號,本站不擁有所有權,不承擔相關法律責任。文章內(nèi)容系作者個人觀點,不代表快出海對觀點贊同或支持。如有侵權,請聯(lián)系管理員(zzx@kchuhai.com)刪除!
優(yōu)質(zhì)服務商推薦
更多