存儲介質性能質的提升造成數據中心短板的轉移
首先介紹下NVMe, 它作為一個高效的存儲協議已經得到了眾多閃存、服務器及存儲廠商的支持,其生態日趨成熟。NVMe標準的PCIe閃存卡(盤)帶寬是SAS/SATA標準的2-2.5的倍,IOPS性能提高3倍甚至更多,延遲降低40%—50%。與此同時,更為高效的網絡存儲協議也隨著閃存技術的演進呼之欲出,這就是NVMe Over Fabric。
NVMe統一前端和后端
現在前端使用iSCSI的協議來訪問遠端的設備,iSCSI訪問延遲高,占用大量CPU資源。NVMe需要轉換為SCSI協議, 然后通過iSCSI傳到遠端。NVMe Over Fabric就是要替換掉前端的iSCSI(或者是Linux下的iSER和Windows下的SMB3),使得終端用戶可以直接通過NVMe Over Fabric協議實現對遠端NVMe設備快速、低延遲的訪問。以上介紹了很多NVMe Over Fabric的發展背景、基本概念和優勢,事實上NVM Express官方在2014年9月發布NVMe1.2協議規范的同時提出了NVM Over Fabric概念,同年即有基于以太網的NVMe Over Fabric的DEMO在美國加州展出。而后Intel、Mellanox等廠商都在積極的推動NVMe Over Fabric的發展。在剛過去的FMS2015大會上,Memblaze使用開源軟件NBDx展示了Mellanox的Pre-standard NVMe Over Fabric解決方案。NBDx架構如圖3
NBDx–NVMe Over Fabrics POC
從圖3架構我們可以看出,客戶端訪問服務端采用了RDMA的方式進行通信,RDMA技術減少了CPU的開銷,同時這個架構沒有使用SCSI協議,去除了SCSI是性能瓶頸的問題,Block層使用了多隊列的方式,去除了Block性能瓶頸的問題。
使用PBlaze4搭建NBDx解決方案的測試結果
圖4是一個NBDx解決方案的測試結果,其使用了PBlaze4作為存儲介質。可以看到兩塊PBlaze4 NVMe PCIe SSD搭建的NBDx解決方案性能便可達到100萬IOPS和6GB/s帶寬,而且解決方案的性能可以隨著PBlaze4數量的增加實現線性的提升。
PCIe SSD要實現大規模的部署,就必須從加速卡的角色轉變為主存儲的介質,NVMe標準的出現使得PCIe SSD走向標準化,Linux等主流操作系統都已經內置了NVMe驅動,閃存生態走進了一個快速發展的時期,接下來是存儲資源的共享,也就是存儲網絡需要針對閃存的特性打造一個更為高速、高效的架構,NVMe Over Fabric無疑是最明朗的一個方向。Mellanox 存儲主管Rob Davis 在FMS2015分享中提及NVMe Over Fabric 1.0版本將在2015年第四季度與大家見面。
FMS2015之上Memblaze工程師與Mellanox工程師做了深入溝通,未來雙方會在全閃存陣列、解決方案以及NVMe Over Fabric等領域展開廣泛的合作。