采訪嘉賓:張獻濤、易立
編輯:钰瑩
十年前,“IOE”穩穩坐在 IT 架構的 C 位,不容置疑;十年後,上雲成為大勢所趨,雲原生、Docker、Kubernetes 成為主流,以阿裡雲為代表的國産雲計算不斷追趕,不僅縮短了和國際巨頭的差距,還形成了龐大的“計算”家族。
本文,InfoQ 通過阿裡巴巴集團研究員、阿裡雲智能彈性計算負責人張獻濤,阿裡雲智能資深技術專家、阿裡雲容器技術負責人易立的講述,還原阿裡雲十年“計算”重構史。
“計算”家族悶頭攻堅的那幾年
2008 年 -2015 年,從“去 IOE”到虛拟化架構的全面更新,從初涉容器到全面容器化。
2008 年,雲計算的時代大幕逐漸拉開,衆多巨頭加入開啟良性競争。與此同時,阿裡巴巴提出“去 IOE”,這在行業裡掀起了不小的讨論。
2009 年,阿裡雲成立。當時的雲計算是不太可能使用 VMWare 這樣的商業化軟體,是以就采用了當時比較流行的開源虛拟化軟體 Xen。第二年,阿裡雲就推出了首個彈性計算産品 ECS。
除此之外,阿裡雲網絡産品也開始有了聲音,AVS 和 SLB 相繼上線。但是,從技術産品上來看,阿裡雲早期的“計算”家族還是比較單薄的,也存在一些限制,雲計算的概念在業界基本處于萌芽階段,玩家不多。
2011 年開始,各種各樣的雲開始出現,更強更新的 CPU 帶來了雲上虛拟機計算能力的提升和換代,阿裡雲的計算産品家族逐漸豐富,接連推出 ECS 2.0、ECS 企業級産品家族,從對 Xen 架構研發過渡到 KVM 架構,并為 12306 提供了技術支援。
與此同時,阿裡雲開始研究容器技術,如今盛行的 Docker 當時還未出現,整個團隊研究的是 T4,一種基于 LXC 的雲技術,容器排程技術開始逐漸支撐阿裡集團的線上業務,雲原生時代開啟。
2013 年,淘寶最後一台小型機下線,阿裡自研的飛天雲作業系統開始支撐集團業務。随後不久,洛神 1.0 釋出,這是國内首發自研 SDN 系統。雖然這些消息的釋出讓外界震驚于阿裡雲居然有這樣的實力,但隻有他們自己最清楚技術瓶頸尚需突破。當時,業内依舊停留在如何把目前 CPU 提供的能力,比如 Xen、KVM 等虛拟化的軟體應用好,卻沒有發生太大變革。除了 VMWare 提供的二進制翻譯技術以及劍橋大學提出的準虛拟化技術 paravirtualization,行業内并沒有太大創新。
“當時我們的虛拟化技術,已經滿足不了雲計算發展的步伐。尤其在那個時間點上,我們也在探讨,怎樣能夠把自有業務也遷移到雲上面來,這遇到了很大的難題,我們需要去變革虛拟化技術。”——張獻濤
“不行,我們需要創新“
2015 年,整個團隊開始探索可行的改革方式。當時遇到的主要問題是虛拟化的性能損耗,這是雲計算打娘胎裡出來就帶着的缺點。從成立以來,阿裡雲工程師一直在緻力降低雲計算虛拟化的損耗,當時已經做到比業内平均水準低很多了。但在 2016 年雙 11 的技術複盤會上,時任阿裡巴巴集團 CTO 張建鋒提出了極為苛刻的要求——把虛拟化開銷也降低到 0。這看似是違背能量守定律的,即便在學術界也沒有相關研究。
最終阿裡雲團隊另辟蹊徑,想出了新的解決方案——通過專用晶片來解決虛拟化開銷。
從技術的實作思路看,阿裡雲研發團隊需要重構一套計算架構,通過研發一個新的晶片組來為每個節點提供功能性和管理性的需求支援,在此基礎上,再研發出一套新的伺服器硬體,和配套的系統軟體;然後再将這套技術架構融入到現有的産品設計中去。
軟硬協同架構設計的理念已然飄向了雲端,體量大的雲廠商伺服器部署規模達到百萬級别,意味着可以定制任何硬體,而雲廠商也開始重新審視晶片、硬體和軟體的協同創新。要想收獲軟硬融合的技術紅利,重要的前提是可以自定義晶片,自主研發硬體。
就這樣,張獻濤的整個團隊開始了下一代虛拟化技術——“神龍”的研發之旅。回憶起這個決定,張獻濤在采訪中表示:“我們大概從 2016 年開始規劃下一代虛拟化技術,也就是神龍。我們當時對此的判斷是這是未來資料中心,特别是雲資料中心虛拟化技術的前進方向。比較有趣的是最近幾年,業界幾乎所有雲計算公司都在往神龍架構的方向演進,我們則很早就開始采用神龍架構支撐雙 11 業務”。
2017 年,神龍架構問世了。它真正使用軟硬融合、軟硬體協同設計的模式,改變了傳統虛拟化技術和目前的計算架構不友好的地方。與“神龍”的意義類似,阿裡雲這一年推出了全球首個雲企業網 CEN,引領了業界雲上網絡互聯産品的發展方向。這一年,阿裡雲網絡産品大爆發,先後上線了遷移 VPC 方案、VPN 網關、共享流量包、共享帶寬、全球加速以及雲企業網。
神龍架構釋出不久,一家汽車廠商就慕名前來詢問是否可以提供高性能計算方面的能力。面對工程仿真服務的計算資源供不應求,本地 HPC 叢集硬體資源老化,性能難以滿足業務需求,更新疊代又會影響業務進度,整個公司是進退兩難。就這樣,雙方聯手建設了業内首個 IaaS 混合型工業仿真計算服務平台,并于 2018 年初成功上線。
同期,阿裡雲的容器團隊也開始融入 Docker 技術,并于 2015 年底正式釋出了企業級容器服務 ACK,正式對外開放容器技術,整個集團也開始實作全面容器化,推動了整個應用開發,傳遞和運維方式的變革。易立在采訪中如是說道。
這一年,全面容器化幫助雙 11 大促實作快速彈性擴容。由于業務的超大規模使得其複雜程度非常高,這也為容器技術帶來了更大的挑戰。例如在容器鏡像分發過程中,一次釋出分發幾萬個鏡像,這樣巨大的流量是一個不小的挑戰。為實作效率的極緻要求,阿裡雲利用 P2P 技術,實作大規模大批量的快速分發,實作 10 秒内完成跨機房鏡像下載下傳容器啟動。容器技術對于雙 11 的顯著影響還包括在具體的混部技術實施中,通過混部技術,阿裡巴巴集團範圍内能夠節省 30% 左右的 IT 成本支出,在雙 11 這個特殊時間段裡,将每萬筆交易成本下降超過 75%。
這一年,雲網絡也邁入了雲原生時代,推出雲原生 SDWAN,并全面支援 IPv6。
至此,整個阿裡雲“計算”家族已經相當完善且龐大,并嘗試在雙 11 中進行應用。
一場統一的“畢業大考”:全面支撐雙 11
2016 年 -2019 年,阿裡雲“計算”家族從初涉雙 11 到全面支撐,從這場畢業大考中取得優異成績。
2018 年的雙 11,阿裡嘗試将部分流量用神龍架構來支撐,這在一定程度上可以驗證神龍整體産品和技術架構是否具備支撐雙 11 超級流量的能力。
“我們對這件事情是非常謹慎的,不僅需要能夠支撐住這些流量的沖擊,還需要讓其在性能、穩定性、效率等方面比上一代技術更加優異,并且可以帶來成本的節約。”
經過了 2018 年的順利過關,2019 年阿裡将把核心交易系統全部搬到了雲上,“這些系統對存儲 IO 能力、計算能力、網絡延遲等的要求相當于将神龍的能力榨取到極緻。雙 11 大促如果可行,我們服務超大型客戶就更有信心了。”
在這個部署過程中,容器和神龍架構也完成了完美适配,神龍裸金屬伺服器運作的容器對比實體機有 10%-30% 的性能優勢。“容器本身就是一個非常輕量的、OS虛拟化的技術,其最大的特點是靈活、彈性、可移植。容器化應用對底層資源的第一個要求就是具備強大的彈性能力;第二個需要有不同的彈性計算資源供給,神龍架構可以統一支援虛拟機、實體機甚至 Serverless 彈性容器執行個體,可以滿足容器應用多樣化需求;第三個要求是更高的計算密度,神龍架構下計算、存儲、網絡密度都有很大提升。”易立如是說道。
在 2019 年的這場大考中,整個阿裡雲“計算”家族順利畢業,拿下了 2500 億的交易額,同年釋出的洛神 2.0 系統也在這次雙 11 中完美首秀。
這一年雙 11,叢集的規模超過百萬容器,單容器叢集節點數量過萬,資料庫的峰值超過 54 萬筆每秒,對應 8700 萬查詢每秒,而實時計算每秒峰值處理消息超過 25 億條,消息系統 RocketMQ 峰值處理了超過每秒 1.5 億條消息。
在總結會上,行癫表示:過去的一天,20 個小時是阿裡技術上最經受考驗的一次。阿裡雲承載阿裡巴巴 100% 的核心系統,這是我們全球第一個做到的,我們有自己自研的飛天作業系統、神龍架構、雲原生的資料庫、計算存儲分離的架構、全球第一個大規模 RDMA 網絡。
經此一役,阿裡雲“計算”家族的技術能力被廣泛認可。然而,突如其來的疫情再次将其拉回備考狀态。
2020 年,突如其來的小考
2020 年一場疫情打破了很多人生活的節奏,如果說“雙 11”是一場畢業大考,疫情就是一場臨時小考。為應對疫情中線上辦公和線上教育場景下激增的流量,阿裡雲迅速幫助釘釘在 2 小時内緊急擴容一萬台雲伺服器,這個數字也創下了阿裡雲快速擴容的新紀錄。
借助自身的大規模叢集管理能力,在短短幾天之内,阿裡雲幫助百家雲團隊有效更新了原有的架構方案,實作了數十倍的擴容,大幅提升了其性能與穩定性,并擁有了應對爆發性規模的能力,使用者毫無察覺。
“随着阿裡雲計算能力不斷發增強,我們已經能夠一分鐘擴容 1000 台虛拟機,彈性容器執行個體平均啟動時間僅為 10 秒。”
這一年,阿裡雲又迎來了資料湖分析、實時計算、大資料分析等産品基于容器或者 Serverless 服務的方式對外傳遞,此時已經可以看到 Serverless 成為新的可能。
2020 年 9 月 18 日,2020 杭州雲栖大會上,阿裡巴巴正式成立雲原生技術委員會,雲原生成為阿裡技術新戰略。在雲原生技術委員會成立之後的雙 11,雙 11 核心系統又實作了全面雲原生化。
在采訪中,易立表示支撐這場雙 11 戰役在支援規模和創新上有四點重要突破:一是極緻彈性。雙 11 的突發業務量可以達到平時的十倍以上,不隻是阿裡集團,還有與之合作的商家、物流等都需要面對這樣的流量沖擊,阿裡雲都可以有效支撐。
二是極緻算力,雙 11 期間的大資料平台批處理日志量及實時計算的資料都非常大,阿裡雲實作了核心資料庫的全面雲原生化,讓整個資料庫充滿彈性。
三是三位一體,開源産品與商業雲産品以及集團内部實作統一,比如 OpenKruise 是容器團隊開源的雲原生應用自動化引擎,本質是基于 Kubernetes 标準擴充出來一個的應用負載項目,它可以配合原生 Kubernetes 使用,并為管理應用容器、sidecar、鏡像分發等方面提供更加強大和高效的能力,進而在不同次元上通過自動化的方式解決 Kubernetes 之上應用的規模化運維和規模化建站問題,包括部署、更新、彈性擴縮容、QoS 調節、健康檢查、遷移修複等。截至 2020 年 雙 11,阿裡巴巴内部已運作近十萬 OpenKruise 的 workload、管理着上百萬容器。而且,阿裡巴巴内部運作的 OpenKruise 版本代碼超 95% 來自社群倉庫。
四是 Serverless 的大規模實踐。衆多業務都在采用 Serverless 的方式進行開發,其彈性伸縮能力相比以前提升了至少 10 倍,可以極大提升整個平台的彈性和穩定性。
截至 2020 年,經過 10 多年的技術實踐,阿裡雲已經擁有國内最豐富的雲原生産品家族,覆寫 10 多個類别 100 餘款産品,涵蓋底層基礎設施、資料智能、分布式應用等,可以滿足不同行業場景的需求,為企業數字創新打造最短路徑。

面向下一個十年的技術籌備
“我們堅信 Serverless 是雲計算的未來”
随着以 Kubernetes 為代表的雲原生技術成為雲計算的容器界面,Kubernetes 成為雲計算的新一代作業系統。因為屏蔽了伺服器的各種運維複雜度,Serverless 讓開發人員可以将更多精力用于業務邏輯設計與實作,而逐漸成為雲原生主流技術之一。
易立表示,Serverless 計算可以分為 Serverless 運作時 和後端服務( Backend as a Service)。其中 Serverless 應用運作時在阿裡雲上有非常豐富的産品選擇:如面向事件驅動應用的函數計算 FunctionCompute,提供了極簡的程式設計和運維體驗;面向微服務應用的 Serverless 應用引擎(SAE),對于傳統微服務架構應用無需任何修改即可以輕松上雲。
此外,阿裡雲還提供了 Serverless 容器的産品,比如彈性容器執行個體 ECI 和 Serverless Kubernetes(ASK),它們提供了标準的 Kubernetes 界面,不但可以讓使用者享受到極緻的彈性能力,并且是完全免運維的。它們在過去一年有了 9 倍的高速增長。
動态、混合、分布式的雲環境将成為新常态
上雲已是大勢所趨,但對于企業而言,有些業務出于對資料主權、安全隐私的考量,會采用混合雲架構。
此外,邊緣計算将成為企業雲戰略的重要組成部分,為應用提供更低網絡延遲,更高網絡帶寬和更低網絡成本。我們需要有能力将智能決策、實時處理能力從雲延展到邊緣和 IoT 裝置端。随着雲平台成為企業數字化轉型的創新平台,一個變化随之産生——雲正在靠近它們。在分布式雲中,公有雲的服務能力可以位于不同的實體位置,而公共雲平台提供者會負責服務的運維、治理、更新和演變。
軟硬一體化全面更新
雲計算的發展推動了整個計算架構的演進,面向資料中心的晶片層出不窮,計算密度得到了大幅提升,如果将其與 Serverless 結合能夠全面提升計算效率和資源使用率;過去,我們已經經曆了 CPU 和存儲資源的池化,如今我們可以看到越來越多的 GPU 資源池化,開發者可以按需建立彈性的 GPU,大幅降低 AI 的計算成本,資源池化使得整個計算能力的彈性進一步增強,可以讓 Serverless 計算場景覆寫更多的領域。
此外,Serverless 也在全面推動軟硬一體化的進一步更新。阿裡雲“計算”家族的整體成本效益不斷提升,企業用雲的成本逐漸下降,底層硬體對上層應用的支援越來越強,“可以了解為下一代神龍是以應用為中心的,我們将對上層的函數計算等應用的支援越來越好,效率提升的同時大幅降低成本”。
無處不在的計算催生新一代容器實作
針對不同計算場景,容器運作時會有不同需求。KataContainer、Firecracker、gVisor、Unikernel 等新的容器運作時技術層出不窮,分别解決安全隔離性、執行效率和通用性三個不同次元的要求。OCI(Open Container Initiative)标準的出現,使不同技術采用一緻的方式進行容器生命周期管理,進一步促進了容器引擎技術的持續創新。
綜上,這些技術趨勢未來的發展将由阿裡雲“計算”家族繼續演繹。過去十年,雲計算重構了“計算”,未來十年,計算将如何被定義呢?如果你希望與阿裡雲共同走向未來十年,歡迎掃碼報名參與【2021 阿裡雲·計算峰會】。
嘉賓介紹:
易立,阿裡巴巴資深技術專家,阿裡雲容器團隊負責人。曾在 IBM 中國開發中心工作,擔任資深技術專員;作為架構師和主要開發人員負責和參與了阿裡雲在雲計算、區塊鍊、Web 2.0、SOA 領域的一系列産品研發和創新。
張獻濤,博士,阿裡巴巴集團研究員、阿裡雲智能彈性計算産品線負責人,QCon 專題演講嘉賓;業界知名的雲計算和虛拟化技術專家,加入阿裡雲後,主導了彈性計算産品和技術的演進工作,他的主要研究方向涉及資訊安全,系統軟體、晶片以及軟硬協同設計;作為阿裡雲飛天神⻰架構發明者,推動了雲資料中心 IaaS 核心技術的變革;在國内外發表多篇關于雲計算和虛拟化的高品質學術論文,擁有近 30 項專利申請和授權。