如何利用Intel的傲騰技術和CPU提升Ceph性能?
Ceph是最常見的塊和對象存儲後端解決方案,現在新版本也加入了文件的支持。作為一款開源的分散式存儲軟體解決方案,由於其功能豐富,社區活躍,它在公有雲和私有雲環境中有著廣泛的應用。
然而,由於Ceph的大規模分散式架構原因,其IO路徑過長,使得其性能一直被業界所詬病。現實中,Ceph更多用在備份和歸檔等性能要求不高的場景。在這種場景下,一般存儲介質採用HDD,很少採用全快閃記憶體的配置。
伴隨著固態盤(SSD)價格的不斷走低,雲提供商紛紛開始著手為客戶打造具備卓越性能和高可靠性的全快閃記憶體存儲。為此,他們迫切希望獲得基於 Ceph 的全快閃記憶體參考架構,並了解具體的性能表現和最佳優化實踐。
英特爾 傲騰 技術前所未有地集高吞吐量、低延遲、高服務質量和高耐用性優勢於一身,它由 3D XPoint 內存介質和英特爾 軟體等組合而成。這些構建模塊相互配合,配合至強可擴展處理器,在降低延遲和加速系統性能方面實現了具體提升,能夠全面滿足工作負載對於大容量和快速存儲的需求。
本篇文章將圍繞 Ceph 全快閃記憶體存儲系統參考架構和基於英特爾 至強 可擴展處理器的軟體優化等方面,介紹Intel所取得的進展。在本文中,將重點為您介紹Ceph 參考架構和性能結果,該架構的配置包括 RADOS 塊設備(RBD)介面、英特爾 傲騰 技術和英特爾 至強 可擴展處理器產品家族(英特爾 至強 鉑金 8180 處理器和英特爾 至強 金牌 6140 處理器)。
我們先介紹採用英特爾 傲騰 技術和英特爾 至強 可擴展處理器的 Ceph 全快閃記憶體陣列(AFA)參考架構,然後介紹典型工作負載的性能結果和系統特性。
Intel建議Ceph AFA採用英特爾 至強 鉑金 8180 處理器,它是英特爾 至強 可擴展處理器產品家族中先進的處理器。建議使用英特爾 傲騰 固態盤(SSD)作為BlueStore WAL(Write-Ahead Logging) 設備,使用基於 NAND 固態盤作為數據硬碟,並使用 Mellanox 40 GbE 網路介面卡(NIC)作為高速乙太網數據埠,具備最高性能(吞吐量和延遲)。它是 I/O 密集型工作負載的最佳選擇。
測試系統由五個Ceph存儲伺服器和五個客戶端節點組成。每個存儲節點配置Intel Xeon Platinum 8180處理器和384 GB內存,使用1x Intel Optane SSD DC P4800X 375GB作為BlueStore WAL設備,4x Intel SSD DC P3520 2TB作為數據驅動器,以及2x Mellanox 40 GbE NIC作為Ceph的獨立集群和公共網路。
同時,每個節點均使用 Ceph 12.2.2,並且每個英特爾 固態盤 DC P3520 系列運行一個對象存儲守護程序(OSD)。用於測試的 RBD 池配置有 2 個副本。
對於客戶端,每個節點配置了英特爾 至強 鉑金 8180 處理器、384 GB 內存和 1 個 Mellanox 40GbE NIC。
Intel設計了四種不同的工作負載來模擬雲中典型的全快閃記憶體 Ceph 集群(基於帶 librbd 的 fio),其中包括 4K 隨機讀寫和 64K 順序讀寫,以分別模擬隨機工作負載和順序工作負載。對於每個測試用例,IO 性能(IOPS 或帶寬)使用卷擴展數量(最大擴展到 100)來衡量,每個卷配置為 30 GB。這些卷已預先分配,以消除 Ceph 精簡配置機制的影響,獲得穩定且可複製的結果。每次測試之前停止 OSD 頁高速緩存,以消除頁高速緩存的影響。在每個測試用例中,fio 配置了 300 秒的準備時限和 300 秒的數據採集時限。
4K隨機寫特性
用戶空間消耗的CPU利用率為37%,佔CPU總利用率的75%。分析結果顯示Ceph OSD過程消耗了大部分CPU周期; CPU還有空間的可疑原因是軟體線程和鎖定模型實現限制了Ceph在單個節點上的擴展能力,這仍然是下一步優化工作。
4K隨機讀取特性
CPU利用率約為60%,其中IOWAIT約佔15%,因此實際CPU消耗也約為45%; 類似於隨機寫例。OSD磁碟的讀取IOPS非常穩定在80K,40 GBbE NIC帶寬約為2.1 GB/s。沒有觀察到明顯的硬體瓶頸; 疑似軟體瓶頸類似於4K隨機寫入案例,需要進一步調查。
64K順序寫入特性
順序寫入的CPU利用率和內存消耗非常低。由於OSD複製數為2,因此NIC數據的傳輸帶寬是接收帶寬的兩倍,傳輸帶寬包括兩個NIC的帶寬,一個用於公共網路,一個用於群集網路,每個NIC大約1.8 GB /每個埠。OSD磁碟AWAIT時間受到嚴重波動,最高磁碟延遲超過4秒,而磁碟IOPS非常穩定。
64K順序讀取特性
對於順序讀取案例,我們觀察到一個NIC的帶寬達到4.4 GB/s,約佔總帶寬的88%。順序寫入的CPU利用率和內存消耗非常低。OSD磁碟讀取IOPS和延遲穩定。
總體來看,基於英特爾Optane技術的Ceph AFA集群展示了出色的吞吐量和延遲。64K順序讀寫吞吐量分別為21,949 MB/s和8,714 MB/s(最大為40 GbE NIC)。4K隨機讀取吞吐量為2,453K IOPS,平均延遲為5.36 ms,而4K隨機寫入吞吐量為500K IOPS,平均延遲為12.79 ms。
其實自從Ceph Giant發布以來,英特爾一直與社區,生態系統和合作夥伴密切合作,一直優化Ceph的性能。下圖顯示了Ceph主要版本和不同Intel平台上4K隨機寫入工作負載的性能優化歷史記錄。憑藉新的Ceph主要版本,後端存儲,結合核心平台變化和SSD升級,單個節點的4K隨機寫入性能提高了27倍(每個節點每秒輸入/輸出操作3,673次(IOPS)至每個節點100,052 IOPS)!這使得使用Ceph構建高性能存儲解決方案成為可能。
在本文中,我們在英特爾至強可擴展處理器上看到了採用Ceph AFA參考架構的英特爾Optane技術的性能結果。此配置展示了出色的吞吐量和延遲。除了延遲比傳統的高端存儲有些差距外,帶寬和IOPS都達到了高端存儲的水平。
對於讀取密集型工作負載,尤其是小塊讀,對CPU性能要求比較高,建議使用英特爾至強可擴展處理器系列的頂級處理器,例如英特爾至強鉑金8000系列處理器。與採用英特爾至強可擴展處理器上的Ceph AFA集群的默認配置的英特爾Optane技術相比,軟體調優和優化還為讀取和寫入提供了高達19%的性能提升。由於使用當前的硬體配置可以觀察到硬體性能還有凈空,因此性能有望在不久的將來通過持續的Ceph優化(如RDMA messenger,NVMe-focus對象存儲,async-osd等)不斷改進。
相信有了Intel至強可擴展處理器和傲騰技術的支持,加上Ceph不斷優化,未來Ceph的性能將會更好,Ceph也將越來越多用於主存儲場景,而不僅僅是目前聚焦的第二存儲場景。
※全閃也混合?阿里雲POLARDB實現高性價比混合全閃雲原生資料庫
TAG:高端存儲知識 |