築牢國產晶片軟體生態,天翼雲bcache解決方案來了!

天翼雲開發者社群發表於2022-11-08


 

近年來數字化轉型成為各行各業的熱詞。行業數字化轉型基於計算、儲存、傳輸、數字感測、行業軟體等一系列 IT技術打通業務全流程,重新定義業務場景、業務關係和業務參與人,從而提高資源利用率,加強突發反應能力,提升整體業務效率。


對於國產晶片而言,除了製造這一大 “硬挑戰”外,由於國產晶片特性存在差異,在軟體生態上,也存在著行業軟體適配國產晶片的“軟挑戰”。
然而,各類企業適配軟體生態的能力參差不齊,透過向企業提供 IT技術與服務,以天翼云為代表的雲服務商正不斷完善國產晶片的軟體生態。下面一起來看看天翼雲bcache(塊快取)是如何適配國產晶片,助力應對“軟挑戰”的。

 

bcache是什麼?
儲存,是數字化轉型的 IT資料倉儲。全球行業數字化轉型催生出巨大的儲存需求,據國際資料公司IDC預測,到2025年全球資料總量將達175ZB,因此,企業需要高效能的儲存解決方案來應對強勁的儲存需求。但在儲存領域,高效能則意味著單位容量價格高,從而導致使用成本增加;單位容量價格低則意味著效能無法滿足需求。


如何在高效能和高成本之間折中?儲存業界認為:大部分業務系統的 IO模型都滿足區域性性原理,因此使用小容量的高速儲存裝置作為大容量低速儲存裝置的快取是一種解決方案,在某些業務場景下可以同時滿足高效能和低單位容量價格的需求。


bcache (block cache) 就是一種塊快取儲存加速解決方案,包含Linux核心中的通用塊層的驅動模組和使用者態工具。它允許一個高速的塊裝置作為一個或多個慢速塊裝置的快取,是一種可以提升慢速塊裝置效能的儲存加速解決方案。下圖是使用SSD作為HDD快取的塊裝置加速解決方案架構圖:

 

 

bcache執行在國產晶片上的痛點
bcache在Linux核心的3.10版本已進入Linux核心主線,不過在2021年11月之前,在不支援4K分頁的國產CPU伺服器上使用bcache,雖然attach裝置命令成功,但是顯示cache裝置和主裝置沒有聯絡,重啟後bcache盤丟失。如下演示了64K PAGE_SIZE下使用bcache遇到的問題現象:


1.getconf PAGE_SIZE獲取系統的PAGE_SIZE為64K

 

2.格式化主儲存裝置

 

3.  格式化 cache裝置

 

4.  bcache對映關係顯示異常

5.  lsblk命令顯示正常

 

6.  重啟後 bcache裝置消失

 

天翼雲 bcache如何解決痛點
我們以某國產 CPU上執行Linux 4.19核心版本為基礎,描述天翼雲bcache如何解決上述痛點,從而為完善國產晶片的軟體生態添磚加瓦。


01 分析原因 

天翼雲分析了 bcache、buffer_head、pagecache後,發現了社群版本的問題所在:社群版本在64K page使用核心pagecache中的page時,出現偏移錯誤,導致一旦出現超級塊的更新(如attach)操作,pagecache中的資料將和磁碟中的資料不一致,從而出現“丟失bcache裝置特徵——magic資訊”的情況,導致重啟後bcache裝置丟失。

 

 

02 天翼雲解決方案 

2021年11月,天翼雲研發團隊在分析清楚了bcache、buffer_head和pagecache三者之間的關係後,解決了不支援4K分頁的國產CPU伺服器重啟後bcache裝置丟失的問題,方案如下:

 

 

03 同步社群後形成解決方案 

2022年10月5日,Linux核心從long term版本5.10.147開始,解決了不支援4K分頁的國產CPU伺服器重啟後bcache裝置丟失的問題,可以backport Linux核心社群的解決方案,如下:

 

 

天翼雲 bcache目前已適配多款國產CPU,如龍芯CPU、兆芯CPU、海光CPU、飛騰CPU、Kunpeng CPU等,實現IO效能和x86架構的CPU效能持平,為使用國產CPU承載IT系統的客戶提供了價效比更高的儲存產品選擇。


同時,天翼雲 bcache最佳化了社群bcache效能歸零和長時間執行碎片等多方面的短板,效能提升超過20%。經過天翼雲端儲存團隊的分析和調整,基於Linux 4.19核心,3節點ceph,128併發,8KB,100%寫,隨機IO,IOPS提升超過20%,平均時延從4.9ms降至3.5ms,客戶體驗明顯提升。

bcache效能對比圖

 

未來,天翼雲將繼續堅持科技創新,加大關鍵核心技術自主攻關,推進國產軟硬體產品升級,以安全可信、自主可控的新一代雲端計算基礎設施底座,助推中國數字經濟高質量發展。

 


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

相關文章