阿里馬濤:重新定義雲時代的開源作業系統 | 人物誌

2020-10-29 11:00:25


作者 | Just

出品 | CSDN(ID:CSDNnews)

隨著雲端計算的發展,以及Linux平臺的不斷髮展和生態系統的不斷完善,越來越多的企業、雲服務提供商都將Linux作為其資料中心的首選作業系統。

不過,作為雲基礎設施的底座,針對雲上產品和環境進行客製化、優化的需求大幅增長。基於此,阿里巴巴作業系統團隊開發了 Alibaba Cloud Linux,以連線阿里雲各類產品與客戶應用,更好發揮雲端的能力。

 

在近日的「長沙1024程式設計師節」期間,CSDN 「人物誌」欄目採訪了阿里雲研究員、基礎軟體部作業系統團隊負責人馬濤,他介紹了在5G、雲端計算等技術的衝擊下,雲作業系統面臨的挑戰和機遇。

 

馬濤也是阿里巴巴集團核心團隊創始人之一。他曾先後在ORACLE,阿里巴巴負責Linux以及作業系統核心相關的研發工作,已在Linux核心主線有超過300個提交,同時對分散式檔案系統,分散式儲存等領域有多年深入研究。

 

以下為採訪內容,由CSDN整理:

 

CSDN:隨著5G、雲端計算等新技術的發展,新硬體架構層出不窮,這對底層的作業系統提出了哪些挑戰?阿里的開源雲作業系統在技術上要如何做出調整以適應這種變化?

 

馬濤:確實,雲端計算及網際網路場景對於作業系統的需求和傳統時代有了很大的變化,穩定性、效能等方面都有了新的挑戰。

 

首先雲端計算是規模經濟,所以雲基礎設施的固定成本十分龐大。而當這些基礎設施建成後,進行進一步擴張所需要的邊際成本則相對較小,所以隨著雲服務提供者規模的擴大,其平均成本將會呈現迅速下降的趨勢。

 

在如此大規模部署的情況下,穩定性就顯得至關重要,再加上雲上業務的複雜性和系統的高負載,這都對作業系統的穩定性提出了更高的要求。在阿里雲我們有上百萬規模的部署,所有對穩定性的挑戰是非常巨大的。

 

另外,隨著雲端計算規模的擴大,每一點的優化和效能的提升都會帶來可觀的經濟收益。但云架構中單單某一層優化很難有可觀的效能收益,這需要從硬體平臺到系統軟體,再到應用層全棧協同。

 

而這裡作業系統恰恰處於中間的最為關鍵的點,它向下抽象物理IT資源,並利用抽象的資源向上支援應用。所以如何優化雲端計算作業系統提供全棧的整合和優化能力,這就成為了雲作業系統的新機會,也是雲平臺的核心競爭力。

 

CSDN:像華為等巨頭也入局並提出了新的作業系統,那麼,阿里在開源作業系統上做出的調整與其他巨頭有什麼不同?

 

馬濤:這裡就要提到我認為雲時代作業系統的第二個挑戰,就是異構平臺及特性的快速引入需求。

 

隨著智慧化對雲端計算能力需求的增長和IT產業的變革,推動了多CPU架構的快速演進,我認為將來任何一朵雲都不會執行在單一的計算架構之上。所以這需要作業系統能夠發展開放的硬體生態,完善的支援跨平臺架構,同時,每一個硬體平臺的迭代和能力的演進在不斷加速,但傳統的一些作業系統發行版的版本升級速度偏慢,沒有辦法把新硬體平臺的能力及時帶給雲上豐富的應用。

 

大家經常會發現,一個硬體的特性可能已經存在1-2年甚至更長的時間,一些整合了這些特性的作業系統從才會姍姍來遲,這讓應用無法及時的利用這些硬體的紅利,讓雲平臺的資源被浪費,讓新硬體迭代的速度也大大降低。所以我們希望能夠通過雲平臺的作業系統讓客戶更快的體驗到各種各樣的新硬體帶來的技術紅利。

 

從這一點上來說,我們做作業系統和Intel這些硬體廠商做作業系統的訴求是不一樣的,他們更看重的是自己的硬體生態,比如CPU。而我們則需要考慮雲客戶的需求如何得到更好的快速滿足。

CSDN:你們在開源作業系統上的下一個著力點是什麼?

 

馬濤:除了前面提到的穩定性、效能、異構性之外,雲原生也是我們發力的一個重點。雲原生加速了應用和基礎設施的解耦,充分釋放了雲的彈性。雲原生讓開發者更加關注自身的業務應用,基礎設施自身的複雜性則完全下沉到使用者不可見的領域。同時對於雲原生基礎設施而言,它對應用的服務邊界在上移,其系統軟體棧在不斷下移,這對雲原生系統層提出的不少新的要求和挑戰。

 

第一,資源粒度會更加細緻。相較於傳統的虛擬機器器時代的業務型別,雲原生應用對於資源的需求型別有了變化,從傳統機器虛擬化的資源即虛擬機器器形態,到虛擬OS的資源(即容器形態),再到虛擬執行時的資源(比如類似於函數計算形態的FaaS),應用對於資源的抽象層級要求更高以及粒度要求更細。

 

第二,彈性速度需要更快。雲原生業務天然伴隨著對快速彈性的需求以及短時執行等特徵,要求雲基礎設施能夠在短時間內,快速地提供資源,並且能夠承受資源頻繁的建立、銷燬所帶來的壓力。

 

第三,效能要求更高。在雲原生場景中,使用者更專注於應用邏輯,更多的系統技術棧則下沉到基礎設施,同時系統服務邊界在上移。這樣就給底層系統更多的施展空間,因為原有一些分層邊界可以被打破,可以融合和垂直優化。

 

第四,安全隔離更強。隨著雲原生加速朝著Serverless計算架構演進,應用與基礎設施徹底解耦合,使用者只需關心自己的應用,而云原生系統不斷下移。容器作為雲原生的支撐技術,區別於之前的虛擬機器器計算架構,Serverless計算架構中雲上的多租戶安全成了一個全新的挑戰。

 

針對這些雲原生系統的新要求和新挑戰,我們的作業系統也要做相應的變化,並做大幅度的革新才能滿足快速增長的雲原生應用需求。

 

CSDN:生態也是構建開源作業系統的非常重要的部分,阿里是怎麼搭建相應的生態和社群的?

 

馬濤:作業系統處於一個至關重要的中間層,它向上對接業務,向下對接硬體,所以我們希望圍繞Alibaba Cloud Linux開源作業系統來構建一個支援多架構的、開放的作業系統生態。

我們希望和IHV合作伙伴一起,把新硬體平臺能力帶給應用,充分挖掘平臺效能,推動硬體平臺的快速演進和迭代;希望和OSV一起提供更優質的,適用於雲端計算的作業系統服務;希望和ISV讓一起讓應用更好的長在雲上,提升端到端的效能,推動業務的敏捷性;希望和開發者和使用者一起,打造更適合雲端計算的開源作業系統,構建雲原生系統底座,推動雲原生的發展。

 

CSDN:從阿里做開源作業系統的經驗出發,阿里在做這些開源基礎軟體時踩過的坑有哪些?

 

馬濤:開源基礎軟體面臨的最大問題主要是兩個,一個是生態建設。從2010年開始,阿里集團淘寶部門的核心團隊就開始做作業系統核心的開源工作,之前我們的工作雖然在國內外取得了很大的成績, 但是由於其他廠商無法深度參與,所以發展的一直不溫不火。痛定思痛,我們覺得一定要做好生態,才能保證基礎軟體社群的健康發展。

 

CSDN:你也曾在Oracle工作過,相比國內外做開源作業系統,目前國內作業系統的發展又哪些優點和不足?

 

馬濤:我在Oracle工作過4年多,從事作業系統相關的研發工作。相比而言,國內在作業系統領域的人才儲備相對薄弱,無論是從業人員的數量還是職業技能方面都還處於劣勢。當然我也非常欣喜的看到最近這些年包括阿里、騰訊等在內的很多國內企業都開始加大了在作業系統領域的投入,我們正在迎頭趕上。 

 

CSDN:有哪些建議提供給國內做開源基礎軟體的公司?

 

馬濤:基礎軟體相對而言是入門是比較困難的,如何吸引更多的開發者參與開發是非常重要的。如果沒有大量的開發者,我們就無法聚叢集體智慧,沒有辦法做到長期穩定的發展。這裡Linux Kernel通過一些非常簡單的入門級別的修復來吸引新開發者的加入,非常值得國內開源基礎軟體的學習。

 

CSDN:從開發者的角度,作業系統作為三大基礎軟體之一,想要入局必須具備深厚的基本功,你對作業系統之路上的開發者們的技術成長上,是否可以分享一些經驗?

 

馬濤:這個話題很有意思。我以前是從Oracle開始做作業系統的,當時主要是給Linux核心貢獻一些OCFS2(Oracle Cluster File System V2)的程式碼。我的第一個核心patch發生在2007年,當時我發現了核心程式碼的一段函數有一個變數是沒用的,所以就寫了個移除這個變數的patch傳送到核心社群,並很快就被接受了。這件事情讓我意識到Linux作業系統社群對於新人是非常友好的,而我也有能力去為作業系統做一些事情,也促成了我後面在作業系統十幾年的持續耕耘。

 

有意思的是,由於是第一次寫patch,所以我還把自己的名字寫錯了,在committer一欄寫成了Tao Mao。所以如果你想進入作業系統研發,第一步並不是那麼難,只要你有意願,也一定能從一些一些小事做起並最終成就自己。

 

有了一個好的開始之後,第二個非常重要的是興趣。我始終覺得興趣是驅動我們不斷學習,不斷進步的基礎。我非常清楚的記得,自從進入Linux作業系統的核心研發之後,基本上每個春節我都是在寫程式碼中渡過的,因為那段時間自由度比較高,另一方面可以和國外工作的同事更好的交流。

 

回想起來,從程式碼中體會到參與感和幸福感是我能持續堅持做作業系統研發非常大的驅動力。

 

CSDN:你怎麼看近年來「國產」基礎軟體的開源熱度?國內開發者面臨的挑戰和機遇有哪些?

 

馬濤:隨著雲端計算的發展,IT基礎設施在面臨一場新的變革。在這場變革的浪潮中,無論是公共雲還是混合雲,以阿里為代表的新興雲端計算廠商,在全球雲端計算的激烈競爭中表現亮眼。雲端計算帶來了業務場景的新變化,帶來了底層硬體的新需求,雲原生意味著程式設計模型的革命,這些都對於我們基礎軟體是新機遇、新挑戰,目前我們和國際頂尖廠商正在同臺競技,力爭定義出適應下一代雲端計算髮展的基礎軟體。 

 

CSDN:如果要推動中國開源作業系統或者開源生態發展的話,你最希望與國內開發者一起推動什麼樣的共識和行動?與CSDN這樣的開發者社群合作的話,你希望雙方為開發者做些什麼?

 

馬濤:作業系統是基礎軟體的核心之一,也是核心競爭力之一。過去由於國內在底層硬體技術方面長期和國際頂尖水平有一定的差距,導致我們的作業系統研發一直有些落後。但是隨著雲端計算最近幾年的蓬勃發展,我們正處在一個快速變革的時代,雲上作業系統應該長成什麼樣其實是一個非常嶄新的話題,對我們是一個巨大的機會。

 

我期待能夠和國內開發者一起定義出雲時代的作業系統標準,也希望能夠和CSDN一起培養出雲時代的作業系統研發人員,並通過雲時代的作業系統影響雲時代上層應用軟體生態的發展。

相關連線:

「國產作業系統最大難題在於解決「生產關係」」 | 人物誌

獨家對話謝寶友:做一款類似於 Linux 的國產作業系統  | 人物誌

「我們的目標是取代物聯網中的安卓」 | 人物誌

更多精彩推薦
☞長沙 · 中國1024程式設計師節盛況空前,500 萬程式設計師線上線下引爆星城

☞「國產作業系統最大難題在於解決「生產關係」」 | 人物誌

☞「我們的目標是取代物聯網中的安卓」 | 人物誌
☞一口氣看完45個暫存器,CPU核心技術大揭祕
☞對話阿里雲:開源與自研如何共處?

☞AI 還原康乾盛世三代皇帝的樣貌,簡直太太太好玩了!

☞觀點 | 回顧以太坊近期及中期擴容路線圖,展望 rollup 作為中心的以太坊路線圖

點分享點點贊點在看