高效能儲存SIG月度動態:EROFS支援直接索引容器映象tar包等

OpenAnolis小助手發表於2023-05-11

高效能儲存 SIG(Special Interest Group)目標:儲存領域的發展歷程,本質上是儲存介質與軟體棧相互促進發展的過程。高效能儲存 SIG 致力於儲存棧效能挖掘,當前主要聚焦核心 io_uring 技術最佳化非同步 IO 效能,使用持久化記憶體提升業務單成本效能,容器場景儲存技術最佳化等課題。高效能儲存 SIG 期望透過社群合作,打造標準的高效能儲存技術軟體棧,推動軟硬體協同發展。

01 本月 SIG 整體進展

1)本月合入 Anolis 主線 PR 共計 11 個,包含重要元件的特性支援,效能最佳化和 bugfix 等。

2)ANCK 5.10 支援 erofs subpage block 特性,提升容器映象 tar 包解壓效能以及 golden image 的安全性。

3)ublk 零複製方案仍在社群討論中。

4)ANCK 5.10 計劃支援 io_uring nvme passthrough 特性,以進一步最佳化核心 IO 棧開銷,提升業務效能。

5)DSMS Anolis 8.6 聯調持續進行中。

02 專案具體進展

1、Anolis OS

cve:CVE-2023-1611(PR1548/PR1549)

erofs & fscache:最佳化按需場景 IO 效能(PR1557),erofs block-based IO 切換到 iomap 框架(PR1531),erofs 支援 subpage block for tarfs(PR1561)

io_uring:修復 IORING_OP_URING_CMD 的相容問題(PR1564/PR9)

xfs:修復多個 xfstests 問題,xfs/191,xfs/144,xfs/549(PR15)

virtiofs:修復 cache=none 模式下 fd 長時間不釋放的問題(PR1533)

misc:修復 nilfs2 sysfs 介面生命週期 bug(PR1559),修復 nfsd server crash 問題(PR1590)

2、容器映象加速

隨著 Linux v6.4 合併視窗開啟,erofs 檔案系統的 long xattr name prefixes 特性正式合入社群主線,最佳化儲存 overlayfs xattr 後設資料(例如 composefs 模式)重複 name 的額外開銷:。

ANCK 5.10 支援 erofs subpage block 特性,可應用於容器映象場景中 erofs 直接索引容器映象的 tar 包,省去容器映象生命週期管理中 tar 包的 untar 以及清理流程,從而提升效能和穩定性,並提升容器映象作為 golden image 的安全性。

ANCK 5.10 支援 erofs 的 flattened block device 模式,使得 multi-blob images 儲存於同一個 block device,該特性可以應用於機密容器的儲存方案。

3、使用者態儲存

截止目前,上游社群一共提出了三種 ublk 零複製方案:

近期 io_uring 社群核心開發者 Pavel 也提出一個方案,目前還在討論中。目前判斷該方案對 io_uring 侵入較小,最終接收到主線的可能性較高: https://lore.kernel.org/all/cover.1682701588.git.asml.silence@gmail.com/

另外,向上遊社群 blktests 貢獻了 6 個測試用例,覆蓋 ublk 裝置的正常刪除、crash 後刪除、檔案系統掛載和故障恢復等特性:

4、io_uring

基於分散式儲存業務需求,開始調研 nvme passthrough 技術。我們測試發現效能並沒有想象中那麼好,經過分析我們認為可以做得更好,並丟擲了我們的方案,獲得了三星開發人員的認可:

另外,我們計劃在 ANCK 5.10 中支援 nvme passthrough 技術。該技術基於已經支援的 io_uring uring_cmd 方案,允許 nvme 請求透過 io_uring 直接傳送到 nvme 塊裝置驅動,從而最佳化 nvme 裝置讀寫經歷的軟體棧提升效能。

5、DSMS

dsms 是一個分散式儲存系統管理平臺,旨在實現視覺化的儲存叢集管理,提升分散式儲存軟體的易用性。專案地址:

目前 dsms 持續在 Anlios 8.6 上面進行 dsms-engine、dsms-storage 以及 dsms-ui 等元件的功能聯調。

另外,經過 SIG 例會討論,ceph 15 確定在 dsms 專案中維護,先整體基於 Anolis 8 開發,後續再遷移至 Anolis 23 併發布。

03 SIG 下一步計劃

支援 erofs 的 bloom filter 特性,進一步提升 erofs 的 xattr 訪問效能;在 ANCK 4.19 中支援 erofs subpage block 與 flattened block device 等特性。

ANCK 4.19 支援 virtual fuse 模組,其可以方便雲原生場景下 FUSE 檔案系統的部署,可應用於大資料和 AI 訓練的儲存接入;ANCK 4.19 增強 fuse 的快取一致性,使其支援分散式檔案系統後端,可應用於大資料和 AI 訓練的儲存接入方案。ANCK 5.10 支援 io_uring nvme passthrough 特性,並在分散式儲存專案完成 POC,同時在社群推進更加高效的 nvme passthrough 方案。

dsms 繼續進行 dsms-engine、dsms-storage 以及 dsms-ui 等元件的功能聯調,並開始適配 Anolis 23。

詳情內容見 ,歡迎各位感興趣的開發者加入共建。

相關連結可移步龍蜥公眾號(OpenAnolis龍蜥)2023年5月10日相同推送檢視。

—— 完 ——

為給大家提供更好的內容和服務,龍蜥社群誠摯地邀請大家參與問卷調研,請掃描下方二維碼填寫,我們將篩選出優質反饋,送出龍蜥周邊!

高效能儲存SIG月度動態:EROFS支援直接索引容器映象tar包等



來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70004278/viewspace-2951594/,如需轉載,請註明出處,否則將追究法律責任。

相關文章