效能對比:NVMe-oF vs. FCP(資料來源:NetApp)
以NVMe SSD取代SAS SSD,作為儲存陣列後端I/O介面,只是NVMe在儲存陣列應用的起步,下一步,便是透過NVMe-over-Fabrics(NVMe-oF)架構,在前端I/O介面上也讓儲存區域網路(SAN)運行NVMe協定,藉此可透過SAN網路,來讓NVMe I/O架構獲得擴展性與管理性;另一方面則可構成端到端(End-to-End)的NVMe傳輸架構,徹底發揮NVMe的低延遲特性。
從2017年上半年起,便陸續有新創廠商投入這個領域,推出支援NVMe-oF的儲存陣列。接下來從2017年下半年到2018年初,開始有一線大廠跟進,為旗下全快閃儲存陣列導入NVMe-oF,或是宣布已備妥支援(ready)NVMe-oF。
其中新創廠商多是從頭開始,專門針對NVMe與NVMe-oF打造全新儲存陣列產品;至於一線大廠,則是以原有的全快閃儲存陣列產品線為基礎,透過更新前端I/O介面,來提供NVMe-oF支援。
而從儲存服務型式來看,目前的NVMe-oF儲存陣列大致分為兩類,第一種是以單純提供低延遲的高效能儲存空間為目的,不提供會影響效能的附屬資料服務功能,E8 Storage與Apeiron Data的產品便屬這種類型 ;第二種則是額外兼顧通用儲存需求,內含快照、Clone、複製等進階資料服務功能,Kaminario、Pavilion Data、Vexata、NetApp與IBM的產品,都屬於這種類型。
接下來我們便分為新創廠商與一線大廠兩部份,檢視NVMe-oF儲存陣列產品與廠商現況。
新創廠商的NVMe-oF儲存陣列
新創廠商是早期推動NVMe-oF的主力,產品型式也非常多樣化,既有純粹的Server SAN軟體型式產品,也有直連或分散式等不同架構的產品,有些產品還導入了Intel的Optane SSD,可提供驚人的低延遲存取表現。
Excelero NVMesh
在目前的NVMe-oF產品中,以色列新創廠商Excelero的NVMesh是較特別的一款,採用Server SAN軟體型式來提供產品。NVMesh軟體的目的,是讓標準伺服器扮演NVMe-oF儲存陣列角色,為前端主機提供100μs等級存取延遲的NVMe-oF直連儲存空間,但不提供資料服務功能。
NVMesh可將內含NVMe SSD的x86伺服器,建構為NVMesh 的Target端設備,然後前端主機可藉由安裝NVMesh Client端軟體,以NVMeF架構來存取NVMesh Target端設備的NVMe SSD。至於傳輸通道則可選擇RoCE規格的乙太網路,或是InfiniBand。
Exten
Exten的開放式NVMe-oF平臺,也是一種Server SAN型式的軟體產品,可將x86或ARM伺服器化為NVMe-oF儲存陣列,並支援基於InfiniBand與RoCE乙太網路的NVMe-oF傳輸架構。
推測Exten的NVMe-oF軟體平臺,很可能是源自NVMe-oF先驅廠商Mangstor的TITAN軟體平臺,兩者特性一致。Mangstor在2015年底發表的NX系列是最早的NVMe-oF儲存陣列產品之一,以Mangstor的TITAN軟體結合Dell的x86伺服器而成,支援基於InfiniBand或40GbE的NVMe-oF傳輸。
不過,Mangstor在2017年下半年消失於市場,核心團隊轉至Exten,很可能也將Mangstor原本的TITAN軟體,一併帶到Extent。
Kaminario k2.N
專注於固態儲存發展的Kaminario,算是較資深的新創廠商(成立於2008年),也是第一波投入NVMe-oF的廠商,旗下的NVMe-oF儲存陣列產品k2.N採用獨特的分散式架構,由c.node與m.node兩種節點組成,其中c.node節點擔任控制器角色,安裝有24臺NVMe SSD的m.node節點則擔任儲存櫃角色。
Kaminario宣稱k2.N能提供100μs等級的存取延遲,還可利用Scale-Out方式,靈活地組合與擴展整個架構中的c.node與m.node節點,並能同時支援NVMe-oF與傳統SAN。c.node與m.node兩種節點之間,都以基於25/50GbE RoCE乙太網路的NVMe-oF互連;然後c.node節點則可透過基於FC的NVMe-oF,或是傳統的FC、iSCSI介面,將m.node節點的儲存空間掛載給前端主機使用。
K2.N另一個特點是沿用了Kaminario的VisionOS軟體平臺,從而可獲得完整進階軟體功能,包括壓縮、重複資料刪除、快照、遠端複製與資料加密等,而不僅僅是提供儲存空間而已。
E8 Storage E8-D24與E8-S10
成立於2014年底的E8 Storage,是最早投入NVMe儲存陣列的新創廠商之一,目前旗下有E8-D24與E8-S10兩款NVMe-oF儲存伺服器產品,由標準的x86伺服器搭配NVMe SSD,再結合E8的控制器軟體而成,前端主機則透過E8驅動程式,來存取E8 Storage的儲存設備。
E8-D24與E8-S10都只提供單純的高速儲存空間,僅有QoS效能管理與基本RAID-6保護功能,沒有額外資料服務軟體功能,但速度非常快,可提供100μs的讀取延遲與40μs的寫入延遲。其中E8-D24是雙控制器機型,擁有較大的容量(最大)154TB,採用100Gb乙太網路或100Gb InfiniBand作為底層傳輸通道;E8-D24是單控制器機型,最大容量為77TB,採用50/100GbE或100Gb InfiniBand作為底層傳輸通道。
E8-D24與E8-S10都是使用標準的NVMe SSD,E8 Storage另外還有採用Intel Optane SSD的E8-X24儲存伺服器,可提供更進一階的低延遲表現。
Apeiron Data ADS 1000
成立於2013年的Apeiron Data,是最早投入NVMe-oF領域的廠商之一,在2016年底便發表了採用專屬NVMe直連架構的ADS 1000。
ADS 1000是ㄧ種專屬架構的NVMe儲存伺服器,由可提供38到384TB儲存容量的2U儲存伺服器機箱,加上用戶端的專屬40GbE卡組成。
每一臺ADS 1000機箱都安裝了24臺NVMe SSD或24臺Intel Optane SSD,機箱背面則含有2組I/O模組。每一組I/O模組都含有1組40GbE交換器與16個40GbE埠,加上1組負責處理NVMe傳輸、內含FPGA晶片的ASC控制器,與1組儲存管理晶片。用戶端則透過Apeiron Data提供的專屬40GbE網路卡,來連接與存取ADS 1000。ADS 1000搭配NVMe SSD時,可提供100μs存取延遲,搭配Optane SSD時則擁有12μs存取延遲。
ADS 1000的ASC控制器不是傳統的儲存控制器,而是用於資料封包的stripe處理,所以ADS 1000也沒有進階資料服務軟體功能,只是提供儲存空間。ADS 1000採用的NVMe網路架構也不是標準的NVMe-oF,而是基於40GbE自行發展的專屬NVMe over Ethernet直連架構,並能透過內含的40GbE介面串接多臺ADS 1000機箱,堆疊成含有1000臺以上NVMe SSD的大規模儲存環境。
Pavilion Data RF系列
Pavilion Data 成立於2011年,旗下發表於2018年5月的主力產品RF系列,是一款採用特殊模組化設計的NVMe-oF儲存陣列。
RF系列採用4U高度的機箱,機箱前方可以容納最多72臺垂直豎立安裝的NVMe SSD,機箱後方則容納2~10張稱作IO Line卡的控制器卡,每張IO Line卡都含有2組基於Broadwell處理器的儲存控制器,與4組100GbE網路埠。在4U空間內可提供最多1PB儲存容量、20組儲存控制器與80組100GbE埠,前端主機則透過標準的NVMe-oF主機端驅動程式,經由100GbE RoCE網路執行NVMe-oF連接,存取延遲為100μs,另外還能提供快照與Clone等資料服務功能。
Vexata VX-100
成立於2013年底的Vexata,是在2017年初發表VX-100系列NVMe-oF儲存陣列,目前分為採用一般NVMe SSD的VX-100F,以及採用Intel Optane SSD的VX-100M兩種款式,採用相同的6U機箱,以及Vexata專屬的VX-OS作業系統軟體。
VX-100的6U機箱採用專屬的模組化設計,機箱正面可以容納16組刀鋒型式的ESM儲存模組(Enterprise Storage Modules),而每一個ESM模組則可以容納4臺NVMe SSD或Optane SSD,VX-100F可以提供187.5TB的NVMe SSD容量,VX-100M則有最大32TB的Optane SSD容量。機箱背面則含有2組控制器,主機端介面有NVMe-oF與傳統的FC兩種選擇,前者包括32Gb FC與40GbE,後者則為32Gb FC。至於VX-100系列核心的VX-OS軟體,目前已發展到3.5版,除了基本儲存管理外,還含有快照、Clone與加密等部份資料服務功能。
在存取延遲表現方面,基於NVMe SSD的VX-100F可達到35/90μs(寫入/讀取),基於Optane SSD的VX-100M則為15μs等級(寫入與讀取),如果在70/30讀寫混合負載下,兩款機型的延遲則分別為200μs與40μs等級。
一線大廠的NVMe-oF儲存陣列
目前最積極支援NVMe-oF的一線大廠,是NetApp與IBM,目前都已能提供支援NVMe-oF的產品,另外Dell EMC與Pure Storage也已宣布備妥NVMe-oF的支援。
NetApp EF與AFF系列
NetApp旗下的3條全快閃儲存產品線中,EF系列與AFF系列都已能支援NVMe-oF。
首先是去年下半年發表的EF系列最新款式EF570,在引進NVMe SSD之餘,也提供了基於100Gb InfiniBand的NVMe-oF,針對的是高效能運算領域的直連存取應用,擁有低於100μs等級的存取延遲。不過EF570的擴充櫃仍採用傳統的12Gb SAS介面與SAS SSD,所以,EF570的NVMe-oF傳輸只及於前端主機到控制器櫃。
接著在今年中發表的AFF系列新機型A800上,同樣也引進了NVMe SSD模組,加上基於FC的NVMe-oF介面,走的是基於既有SAN環境的應用路線,存取延遲為低於200μs等級。
由於EF570與AFF A800兩款產品,都是NetApp原有E/EF系列,以及FAS/AFF系列的升級,所以都保留了原有平臺豐富的軟體功能。
IBM FlashSystem與Spectrum系列
IBM可說是ㄧ現大廠中,對於支援NVMe-oF最積極的一家廠商,旗下3大快閃儲存產品平臺FlashSystem、Spectrum Virtual與Spectrum Accelerate系列,都已能支援NVMe-oF。
首先是FlashSystem系列的基礎機型FlashSystem 900,率先在2017年底支援NVMe-oF,採用基於40Gb InfiniBand的路線,主要針對直連應用。採用專屬硬體架構的FlashSystem 900,原本就有150μs等級的存取延遲,搭配NVMe-oF以後,將更能發揮低延遲的特性。接下來,FlashSystem 900還預定支援基於16Gb FC的NVMe-oF。
緊接著在2018年初時,IBM Spectrum Virtual與Accelerate儲存平臺產品家族也開始支援NVMe-oF。
Spectrum Virtualize平臺系列中的Storwize V7000與FlashSystem V9000快閃儲存陣列,以及SVC控制器,都已支援基於25GbE iWARP與RoCE架構的NVMe-oF,日後還預定支援基於16Gb FC的NVMe-oF。
稍後IBM在2018年中推出的Spectrum Virtualize平臺新產品FlashSystem 9100,則可同時支援基於25GbE iWARP/RoCE與16Gb FC架構的NVMe-oF。
至於Spectrum Accelerate平臺系列中的FlashSystem A9000與A9000R,目前則支援了基於16Gb FC的NVMe-oF。
總計IBM旗下的快閃儲存陣列產品中,只剩下入門級的Storwize V5000系列,以及高階的DS8880系列還未支援NVMe-oF。
其中V5000系列定位於入門級,所以用不到NVMe-oF這種低延遲介面;至於DS8880系列,則以支援專屬的Hyper Link介面為優先,IBM宣稱這種介面擁有優於NVMe-oF的特性。
已預告支援NVMe-oF的產品
Pure Storage在很早之前就已預告,FlashArray//X將會支援NVMe-oF,包含基於32Gb FC與50GbE RoCE兩種型式,目前仍處於備妥(Ready)、但尚未正式提供的階段。
類似的,Dell EMC先前發表新一代機型PowerMax時,也預告將會支援NVMe-oF,據了解,應該會先從基於32Gb FC的NVMe-oF開始著手,但目前也尚未正式提供。
仍待完善的NVMe-oF應用環境
包括已正式發表,或宣告已備妥支援NVMe-oF的廠商在內,總計目前已有將近10家可供應這類產品的廠商。
然而嚴格來說,目前的NVMe-oF應用環境還未完全成熟,首先,NVMe-oF的規範本身還有待擴充與完善,仍缺少某些關鍵功能;其次,目前的作業系統平臺還未普遍支援NVMe-oF,限制了主機端使用NVMe-oF存取儲存設備的能力;第三,在NVMe-oF的部署上,還面臨著FC、InfiniBand或RDMA乙太網路等不同路線選擇問題;最後,雖然NVMe-oF可以嫁接在既有的FC或乙太網路上運行,但實際上仍有所限制,用戶的網路端設備需要升級到最新規格,才能滿足運行NVMe-oF的要求。
不過即使有著前述限制,有需求的用戶,現在已經可以實際建構與使用NVMe-oF儲存環境,至於NVMe-oF目前存在的種種問題,也都只是過渡時期的現象,待2019年以後,相關架構應該便會成熟。
NVMe-oF的部署路線選擇
圖片來源/NVM Express Inc.
NVMe-oF的基本概念,是將NVMe協定嫁接到既有的低延遲網路上運行,目前最常見的NVMe-oF部署方式,是搭配FC、InfiniBand,以及基於RoCE v2與iWARP等2種RDMA乙太網路的架構。
如前所述,NVMe-oF的基本概念,是將NVMe嫁接到既有網路上運行,連帶也必須面臨,要將NVMe-oF部署到哪一種網路環境上的選擇。
為了因應NVMe的低延遲需求,NVMe-oF所選的底層網路也必須是低延遲的型式,過去1、2年來的發展,讓NVMe-oF的「嫁接網路」選擇,形成了FC、RDMA乙太網路與InfiniBand等3種主要路線,其中,RDMA乙太網路又分為RoCE(RDMA over Converged Ethernet),以及iWARP(Internet Wide-area RDMA Protocol)等2種,所以,也就形成了一共4種NVMe-oF架構。
從NVMe-oF儲存陣列產品來看,早期的產品大多採用基於InfiniBand或RoCE的架構,但從今年起,採用NVMe/FC的產品迅速增加,而基於iWARP的NVMe-oF架構,則相對比較少見。
從用戶端環境的觀點來看,目前FC應該是導入NVMe-oF較合適的選擇,不僅架構的成熟度較高,而且既有的16/32Gb FC環境經過升級,就能運行NVMe/FC架構。
不過從長期發展來看,RoCE v2將是ㄧ個很有競爭力的選擇,擁有更好的效能成長前景,但目前還未完全成熟,而且用戶也需重新投資網路環境,導入成本相對較高。iWARP在效能方面稍為落後一些,較低的導入與部署成本是其優勢。至於InfiniBand雖然效能優越,但受限於成本,應該還是只限於高效能運算等特定環境的運用,難以普及開來。
兼顧IOPS與低延遲—NVMe-oF的價值
由於NVMe-oF是嫁接在既有的FC、InfiniBand或RDMA乙太網路上,所以傳輸頻寬與原本的網路相同,主要效益是透過NVMe-oF協定更具效率的網路堆疊,來提供更好的存取延遲性能。
我們這裏以NetApp提供的AFF A800全快閃儲存陣列測試結果為例,底層的傳輸通道同樣都是FC,上層則分別運行NVMe/FC與FCP兩種協定。在80萬IOPS以下時,傳統的FCP協定也能提供與NVMe/DC相同的低延遲,不過,從90萬IOPS起,FCP的延遲便急遽增加,而NVMe/FC則仍持續維持低延遲表現,顯示了兼顧IOPS與低延遲的能力。
效能對比:NVMe-oF vs. FCP(資料來源:NetApp)
NVMe應用的下一步進化—儲存級記憶體
圖片來源/NetApp
儲存級記憶體(SCM)帶來進一步低延遲效益
在不同的儲存媒體上,造成存取延遲的主要瓶頸各有不同。對於硬碟來說,主要的存取延遲瓶頸是儲存媒體本身。而在SSD上,隨著儲存媒體的存取延遲降低到100μs等級,此時控制器與軟體堆疊對延遲的影響也突顯出來。
透過NVMe介面,可以藉由PCIe直連架構,省略控制器造成的延遲,同時也藉由NVMe較具效率的軟體堆疊架構,降低軟體堆疊造成的延遲。而在導入了NVMe之後,若要進一步降低存取延遲,便又得回到儲存媒體本身下手,既有的NAND Flash記憶體的存取延遲,已難有很大的進步空間,此時Intel Optane這類儲存級記憶體技術(SCM)便是ㄧ個新出路,透過Intel 3D Xpoint記憶體技術所製成的Optane SSD,存取延遲只有10μs等級,可以把SSD的存取延遲進一步降低到NAND Flash SSD的1/10以下。
目前也已有Apeiron Data、E8 Storage與Vexata等新創廠商,在NVMe儲存陣列上導入Optane SSD,一些大廠也預告將會支援這類SCM儲存裝置,顯示這將是NVMe應用的下一步方向。
NVMe-oF目前的應用限制
目前NVMe-oF剛進入實際應用的初期階段,與現有用戶環境的整合仍有許多需要注意的限制。
NVMe-oF協定的限制
多重路徑是目前NVMe-oF應用上較大的限制。以最早支援基於NVMe/FC架構的NetApp AFF A800來說,原廠表示,目前只能建立單一控制器下的多重路徑存取,還無法跨不同控制器建立多重路徑存取,不過,這是NVMe-oF的Target端軟體還不完善所造成,而不是產品的問題,還需等待NVMe-oF Target端軟體的更新才能解決。
支援作業系統環境
在平臺方面,目前Linux與Windows兩大平臺,都能提供存取NVMe-oF裝置的Initiator驅動程式,同時Linux平臺還有NVMe-oF的Target端軟體可用。至於其他平臺,目前仍無法使用NVMe-oF。
網路端設備的限制
NVMe-oF的部署,是嫁接在FC、InfiniBand或RDMA乙太網路上,理論上應能直接沿用後者的網路端設備,包括網路卡、HBA卡與交換器等。但實際上還是有所限制,多數用戶環境必須經過升級,才能實際部署NVMe-oF。
一般而言,採直連架構的InfiniBand比較單純。至於RDMA乙太網路方面,雖然一些10/40GbE網路卡與交換器也支援RDMA,但目前多數NVMe-oF產品的RDMA乙太網路,都是採用新的25/50GbE,用戶必須升級到新規格才能與之搭配。
在FC方面,目前主機端一定得使用是新的32Gb FC HBA卡,才能支援NVMe/FC架構。在FC SAN交換器方面,Cisco與Broadcom(Brocade)兩大廠近期推出的32Gb FC交換器,都能支援NVMe/FC,包括Cisco MDS交換器系列中的9132T,以及Broadcom的Brocade G610。
至於比較舊的16Gb FC交換器中,Brocade 6505、6510與6520經過韌體升級後,也能支援NVMe/FC(升級到FOS 8.2版以上)。Cisco官方也聲稱MDS 9000系列交換器只要將NX-OS升級到8.1版以上,就能支援NVMe/FC架構。
相關報導 NVMe開始邁入主流儲存應用
熱門新聞
2024-08-14
2024-12-20
2024-12-22
2024-12-24
2024-12-23