隨著火山引擎云產(chǎn)品的重磅發(fā)布,字節(jié)跳動(dòng)內(nèi)部使用的操作系統(tǒng)也終于上云開放,首次推出了針對(duì)云環(huán)境深度適配的 Linux 操作系統(tǒng) —— veLinux。veLinux 是字節(jié)跳動(dòng)在操作系統(tǒng)技術(shù)上的長(zhǎng)期積累和沉淀,旨在給客戶提供穩(wěn)定、高性能、安全、易用的云上操作系統(tǒng),同時(shí)輸出系統(tǒng)安裝、部署、升級(jí)和補(bǔ)丁修復(fù)等全生命周期的完整解決方案。
當(dāng)前,企業(yè)上云的趨勢(shì)不可抵擋,云時(shí)代的來臨對(duì)基礎(chǔ)操作系統(tǒng)提出了更高更嚴(yán)苛的要求。除了對(duì)操作系統(tǒng)的安全性和穩(wěn)定性外,系統(tǒng)性能的提升也是重要的考慮因素。上云能否降本增效?底層操作系統(tǒng)能否充分利用各種新硬件特性來提升業(yè)務(wù)的整體效能?9 年的技術(shù)積累和應(yīng)用實(shí)踐,火山引擎 veLinux 操作系統(tǒng)做出了解答。
兼容性
veLinux 與 Debian 10(Buster)生態(tài)保持完全兼容, 并針對(duì)云上應(yīng)用和火山引擎云基礎(chǔ)設(shè)施進(jìn)行了深度定制與優(yōu)化。支持包括最新的 x86和 ARM 架構(gòu)在內(nèi)的多種硬件平臺(tái),如 Intel Whitley、AMD Milan 和 ARM N1 等,對(duì)國產(chǎn)處理器支持也在進(jìn)行中。
高性能
veLinux 內(nèi)核是基于社區(qū)長(zhǎng)期支持(LTS)的 5.4 版本定制而成,對(duì)內(nèi)存、網(wǎng)絡(luò)、I/O、文件系統(tǒng)等模塊進(jìn)行了缺陷修復(fù)和性能增強(qiáng),并引入了適用于云應(yīng)用的新特性,比如
• 優(yōu)化冗余的 HugeTLB 頁,節(jié)省了 87% 以上的 struct pages,大頁內(nèi)存減少約 1/64(1.4%-1.6%)
• 增加 ebpf 通用 helper 函數(shù),支持通過模塊添加 ebpf 功能
• 優(yōu)化了 cgroup slab memory controller,提升 slab 內(nèi)存利用率,最高可達(dá) 45%
• 引入 VDUSE 設(shè)備模擬框架,容器可以像虛機(jī)一樣靈活的使用用戶態(tài)提供的虛擬設(shè)備
• 優(yōu)化 PSI 對(duì)系統(tǒng)資源壓力的評(píng)估,定制更合理的資源調(diào)度策略,在保障業(yè)務(wù)體驗(yàn)的同時(shí),最大化資源利用率
veLinux 在調(diào)度隔離、內(nèi)存管理及 I/O 等方面進(jìn)行了大量的性能優(yōu)化。業(yè)界的基準(zhǔn)測(cè)試 benchmark 和典型應(yīng)用性能對(duì)比結(jié)果顯示:在進(jìn)程上下文切換、I/O讀寫、壓縮解壓縮等多場(chǎng)景中,性能提升達(dá)到 15-25%, 推薦、抖音的樣本拼接性能提升 20% 以上,而典型的日志壓縮場(chǎng)景提升更是高達(dá) 50%。
壓縮和解壓縮執(zhí)行耗時(shí)(歸一化)對(duì)比
安全性
在安全方面,密切關(guān)注社區(qū)上游的 CVE 分級(jí)跟蹤與修復(fù),同步集成。同時(shí)提供內(nèi)核熱補(bǔ)丁修復(fù),減少停機(jī)時(shí)間,應(yīng)用安全技術(shù)進(jìn)行入侵檢測(cè),配置多種安全項(xiàng)用于自定義安全策略,此外,還支持業(yè)界主流的安全漏掃工具,為上層業(yè)務(wù)提供全方位的安全防護(hù)。
易用性
系統(tǒng)運(yùn)維從來都是棘手的問題,用于系統(tǒng)性能分析優(yōu)化、穩(wěn)定性問題排查的工具,普遍有比較高的使用門檻。而 veLinux 天然攜帶了從內(nèi)核、基礎(chǔ)庫到應(yīng)用的全棧分析優(yōu)化能力。例如,基于開源社區(qū)的定制化性能監(jiān)控工具 atop ,能夠篩選 Top N 線程的監(jiān)控?cái)?shù)據(jù)記錄并支持JSON 格式輸出、支持 Per-NUMA 指標(biāo)聚合等,滿足系統(tǒng)監(jiān)控的多樣需求。另外,集成了交互式的 CPU 火焰圖采集,能夠?qū)Χ喾N編程語言的應(yīng)用程序進(jìn)行分析,同時(shí)支持差分火焰圖和容器采集,便捷易用。
結(jié)語
如今,veLinux 的部署數(shù)量已超過百萬,承載了今日頭條、抖音、飛書等一系列具有海量用戶的應(yīng)用,經(jīng)歷過 2021 年央視春晚、抖音紅包雨等多種大型活動(dòng)的極致考驗(yàn)。veLinux始終把技術(shù)作為立足點(diǎn)和根基,將繼續(xù)保持技術(shù)開放和創(chuàng)新的態(tài)度,砥礪前行。veLinux現(xiàn)已正式開源自研內(nèi)核,歡迎感興趣的同行一起加入,共同打造國產(chǎn)操作系統(tǒng)的社區(qū)和生態(tài)。