操作系統快速發展,openEuler如何先行一步

{"type":"doc","content":[{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"2019 年 12 月 31 日,openEuler 正式開放源代碼、鏡像及開發測試環境。時至今日,短短一年半時間,openEuler 已經發布了三個版本,擁有 4700+ 社區開發者,社區版本下載量超 6 萬。社區迅速發展壯大,版本如期穩定發佈,InfoQ 獨家專訪了 openEuler 技術委員會委員熊偉,請他聊聊在陪伴 openEuler 成長背後的故事與感悟。"}]},{"type":"heading","attrs":{"align":null,"level":2},"content":[{"type":"text","text":"採用 Linux 內核 5.10,openEuler 21.03 已先行一步"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"談到社區,人們總是會關心它的產品發展如何。自開源以來,目前已經發布了三個版本,分別 20.03 LTS、20.09 和 21.03。其中 20.03 LTS 是長維護週期版本,也是被衆多的 OSV 和合作夥伴所廣泛使用的社區版本。20.09 和 21.03 則是兩個創新版本。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"image","attrs":{"src":"https:\/\/static001.geekbang.org\/wechat\/images\/18\/182057be63c15f1aa25c6c84c93658d0.png","alt":null,"title":null,"style":null,"href":null,"fromPaste":false,"pastePass":false}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":"center","origin":null},"content":[{"type":"text","text":"圖源 openEuler 官網"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"openEuler 21.03 是最新發布的版本,與前面兩個版本相比,熊偉表示 21.03 版本有很多技術創新,例如採用全新的 Linux 5.10 內核、開發了內核熱升級框架、提供內存分級擴展能力等諸多創新特性。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"首先,21.03 版本最大的不同就是內核發生了重大變化,它採用了 Linux 5.10 內核。5.10 內核對新的體系架構如 RISCV 支持更好,使得 x86 、ARM64 和 RISCV 不同體系的架構終於可以在一個版本下得到了完善的支持。除此之外,明年 openEuler 將發佈的第二個 LTS 版本 22.03 也將採用 5.10 內核,LTS 版本對於質量的要求很高,因此內核的選型一定要提前,穩定性、可靠性都要經過長時間驗證,因此 openEuler 21.03 也承擔着爲 22.03“趟路”的重要職責。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"其次,21.03 版本實現了工業界一直期望的新特性——內核熱升級。在關鍵領域、關鍵業務中,有些核心應用要求不停服,而操作系統可能會有安全漏洞,需要頻繁更新,如何在不停機的情況下切換內核就成爲了大家夢寐以求實現的技術。內核熱升級就是一種 OS 漏洞修復及升級解決方案,實現內核快速熱升級,業務不感知。openEuler 社區首次開發了內核熱升級的原型系統,對於 mysql, nginx 等應用可以做到業務無感知的內核熱升級,當然,目前內核熱升級還屬於原型系統,我們希望在社區裏大家一起完善它,儘早實現商用可交付。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"再次,openEuler 21.03 實現了一個新的軟件框架——內存分級擴展系統 etmem,該系統可以用來統一管理多種層次的存儲介質,實現系統存儲容量平滑擴展。該功能可以通過內核態的內存頁面忙閒統計機制,精確識別進程內存頁面訪問冷熱分佈,支持 SCM、XL Flash、NVMe SSD 等多種介質作爲擴展內存,然後根據介質自身訪問速度指定內存冷熱分層方案,以達到擴展內存並減少性能損失的目的。據悉,在 MySQL 數據庫上使用這個功能,性能提升可以達到 40%-50%。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"最後,openEuler 社區的合作伙伴也爲 21.03 版本貢獻了很多新的功能,例如 OpenStack Victoria 集成和 HA 高可用集羣方案。OpenStack 支持是中國聯通與其它合作公司一起開發的,擁有這個特性之後,openEuler 就可以提供完整的 IaaS 層支持;HA 高可用集羣方案則是麒麟軟件貢獻的,支持故障秒級切換,爲用戶提供業務連續性保障、數據持續保護、災難恢復的高可用環境。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"除此之外,參與 openEuler 社區其它夥伴也都爲 21.03 做了貢獻,在這裏就不一一列舉了,具體的特性大家可以參看 21.03 的技術白皮書,或者直接與相關的 SIG 組進行了解和討論。"}]},{"type":"heading","attrs":{"align":null,"level":2},"content":[{"type":"text","text":"接軌上游社區,連通下游廠商,openEuler 遍地生花"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"相信前段時間大家都關注到了一個消息,Linux 內核 5.10 版本的維護週期將從 2 年延長到 6 年,而 openEuler 即將發佈的下一個 LTS 版本剛好採用的 Linux 內核 5.10。對此,熊偉表示:"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"blockquote","content":[{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"Linux 內核維護週期對於操作系統版本的生命週期來說是非常重要的,如果內核維護週期短於操作系統版本的維護週期,那麼就意味着社區需要投入更大的力量來進行維護,反之則可以藉助社區和全球的夥伴們一起進行維護,使之成爲全球廠商共同的選擇,降低所有廠商的維護成本。因此,在決定 22.03 版本採用 Linux 內核 5.10 之後,openEuler 就在積極與上游社區溝通,並最終獲得了社區的認同。"}]}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"支持多處理架構是 openEuler 的重要特性之一,也是 openEuler 支持多樣化算力的具體體現。對於具體的芯片支持,目前社區有兩種適配方式,一種是芯片廠商將自己芯片的特性、驅動代碼等發送給社區,由社區審覈後合併到 openEuler 版本中,從而支持該芯片;另一種方式是芯片廠商自行適配 openEuler,最後將相關適配結果反饋給社區,由社區再進行發佈。不論哪種方式,openEuler 都歡迎。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"作爲一款開源操作系統,任何夥伴都可以免費獲取 openEuler 社區版本並商業化。據瞭解,目前共有 8 家企業基於 openEuler 發佈了商業發行版操作系統,其中包括麒麟、普華、深度等國內 OS 領軍公司。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"除了在國內的發展,2020 年,熊偉在接受採訪時曾明確表示過 openEuler 有國際化發展計劃。現在時間來到 2021 年,openEuler 的國際化發展是否已經有進展了呢?"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"據熊偉介紹,openEuler 在海外已經有了落地案例。有一家俄羅斯公司基於 openEuler 構建了俄羅斯本土的商業化版本。除此之外,openEuler 在全球各地都部署了鏡像,方便全球用戶下載使用,在我們的後臺統計中也確實發現,全球各大洲都有不少的下載量。另外基於 openEuler 的樹莓派的 OS 鏡像也已經進入到樹莓派官方 repo 了。未來,我們會更進一步的推動 openEuler 的國際化,更加積極的融入到全球的軟件體系中。"}]},{"type":"heading","attrs":{"align":null,"level":2},"content":[{"type":"text","text":"要技術,更要社區:開放治理帶來飛速發展"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"國產操作系統總免不了“套皮”質疑,國內開源項目也總免不了“KPI 項目”質疑… 這樣的質疑,openEuler 自然也經歷過,但在經歷了三次發版之後,大家已經從一開始的單純質疑轉變爲關注 openEuler 社區又做了哪些事情?"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"在熊偉看來,大家一開始對 openEuler 及社區有疑問是可以理解的,長期以來,“換皮”開發是衆多廠商的選擇,但這樣的模式既無法建立獨立演進的體系,也無法形成完善的生態系統。而 openEuler 選擇了“正確但是困難”的道路,那就是徹底的自底向上的構建一個獨立的體系——構建一個“原生開源操作系統”。至於社區發展,熊偉也表示,在開放治理的模式下,組成社區的三個關鍵因素——組織、人和技術,在過去一年多發生了很大的變化。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"在組織方面, openEuler 社區在過去的一年內,治理遵循扁平化原則,建立起來了包括理事會、技術委員會、安全委員會、市場委員會等基本的組織架構,構建了一個完善的社區治理機制,同時在運作過程中逐步形成了配套的運作流程,這在中國開源發展史上具有里程碑的意義。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"在具體的運作過程中,以社區技術委員會爲例,社區遵循開放治理的原則,目前技術委員會成員有 50% 是來自華爲以外的企業代表。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"在社區工程組織層面,截至 6 月 6 日,openEuler 的 SIG 組已達 84 個,這些 SIG 組既有包括向公共技術的通用技術小組,也包括面向具體業務場景的解決方案小組。而且最新的 SIG 組申請都是結合業務場景,垂直的解決方案 SIG,這是一個重要的標誌,標誌着 openEuler 已經開始從補齊功能向着業務縱深發展,這是一個可喜的變化。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"在人員方面,操作系統領域一直面臨着這樣一種情況,雖然操作系統領域很“熱”,大家都在談論,但實際上真正的從業人員很少。openEuler 社區發展的一年半時間,爲這個行業沉澱了一批優秀的工程師,一批優秀的運營人才,一批開源基礎設施人才。大家逐步熟悉了社區的玩法,習慣了社區化的開發方式,這不但保證了 openEuler 社區長期健康發展,也爲整個行業儲備了人才隊伍。熊偉相信這些人中一定會成長出未來開源行業,操作系統行業的領軍人物。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"在技術方面,發佈的 LTS 版本已經在各行各業廣泛獲得了使用,商用部署規模持續擴大,而且經過嚴酷的商業環境的考驗,證明整個 OS 的質量也是過硬的。其次,openEuler 社區的目標並不只是做一個 OS 的發行版本,更期待社區成爲創新的孵化器,目前社區已經孵化很多自主研發、從零構建的新項目,比如 iSula、stratoVirt、secGear、etmem 等等項目,這個勢頭是很好的,期待在不遠的將來,社區裏能孵化出世界級的高水平軟件。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"自開源以來,經過 500 多天社區建設,openEuler 社區已經形成了比較完善的管理流程。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"blockquote","content":[{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"以技術委員會爲例,openEuler 社區每兩週就會召開一次技術委員會例會。諸如 SIG 組的建立申請,SIG 組運作審視,技術裁決,新技術分享等,都可以申報議題,在例會上進行討論或者決策。決策表決的策略也很簡單,就是簡單多數原則。如果是新建立的 SIG 組,技術委員會會指定一個委員作爲 Mentor 加入到 SIG 組,幫助大家儘快融入社區。"}]}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"在很多人的印象中,openEuler 的所有技術都是由技術委員會決定的。而熊偉則表示這其實是一個誤解。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"blockquote","content":[{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"技術委員會並不是大家想象中“技術上帝”,站在上帝視角來指導技術的方向。技術委員會的任務更多是制定技術策略,技術原則,規範開發流程,監督開發過程,審視 SIG 組運作,協調技術衝突等工作,但是對於具體技術的選擇權力是充分放權給 SIG 組,例如 22.03 LTS 版本決定採用 Linux 內核 5.10 就是由內核 SIG 小組自行討論決定並報技術委員會審批通過的。openEuler 社區堅信,專業的事情一定要交給專業的團隊,只有充分相信團隊的專業性才能保證產品正確的發展方向,並帶來越來越多的創新。"}]}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"開放治理帶來飛速發展,經歷了之前的道路摸索,openEuler 社區已經走上了快車道。"}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"blockquote","content":[{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"openEuler 開源社區的整個組織架構已經初步形成了,社區會堅持扁平化治理原則,技術權力下放,由技術專家和骨幹引領技術走向。在人才培養方面,要讓更多社區開發者熟悉整個社區的運作模式。目前 openEuler 社區孵化出了很多很好的新項目,相信假以時日,這些新項目“小樹苗”會成長爲“參天大樹”。在千行百業數字化轉型的今天,作爲底層基石的操作系統也迎來了快速發展的春天,而在這其中,開源操作系統 openEuler 已經先行一步。"}]}]},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null}},{"type":"paragraph","attrs":{"indent":0,"number":0,"align":null,"origin":null},"content":[{"type":"text","text":"最後祝 openEuler 能夠在未來取得更大的成就,我們也期待着下一次對熊偉的採訪,期待他爲我們帶來更多新鮮的進展。"}]}]}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章