vSphere 6.5支持512e,NVMe SSD呢?


 

2016年底,VMware終於宣布,從vSphere 6.5開始支持512e扇區格式了。

這當然是好事。不過,不黑不舒服斯基說:原來以前的版本連512e都不支持?現在也還不支持4Kn啊……

有圖有真相,不黑不是你大叔則翻出2013年的一個合作伙伴文檔作為黑歷史,說:瞧,晚了整三年!間隔一個大版本啊……

Vmware曾宣稱計划在2013年支持512e,在2015年支持4Kn

泥垢了,別站着說話不腰疼。作為公認業內第一的hypervisor,或者說虛擬化操作系統(OS),vSphere已經很努力了好么!樣樣都走在別人前面,讓別人怎么活?

512e是什么鬼?

512e的重點在於e,即Emulation,是把4KB(4096字節)的物理扇區仿真為512字節的邏輯扇區。為什么要這么做呢?因為,為了能把硬盤的容量做得更大,硬盤行業正在從傳統的512字節物理扇區,向空間利用率更高的4KB物理扇區過渡。

512n,512e,4Kn的扇區大小區別

物理扇區4KB,對操作系統展現的(邏輯扇區)也是4KB,叫做4Kn,n是Native的意思——也相對naive。4Kn是大方向,但步子邁太大,必須扯到操作系統。畢竟,還是有些操作系統,還不能直接訪問4KB的物理扇區,必須拿512字節的邏輯扇區過渡一下。


好了,作為vSphere的忠實用戶,我們真的不是搭磚機來黑VMWare的……但是,必須看到,像ESXi這么重要的操作系統還不支持4Kn,可見保持對512字節扇區的兼容是多么的重要。

可是,4KB扇區又勢在必行,那就硬盤退一步,用512e“欺騙”一下操作系統;vSphere進一步,從6.5版開始配合這個欺騙,就構成了我們開頭提到的那條“新聞”。

毫無疑問,vSphere最終會全面過渡到支持4Kn的,而512e還會存在相當一段時間。512e與vSphere 6.5及vSAN 6.5的配合,企事錄正在准備專文來展示給大家。

今天要討論的話題,核心是512字節扇區與NVMe SSD。

SSD是不存在512e這種格式的,但要面對類似的問題:要么,對操作系統一概表現為512字節的扇區格式;要么,在4KB的情況下,提供“回到”512字節的選擇——或反之。

這么說你就暈了對不對?看來還得動手,我一動手,你就明白了。

既生512B,何生4K?

企事錄實驗室里對一塊華為的NVMe SSD ES3600C V3進行了驗證性測試,容量1.6TB,PCIe 3.0 x4接口。


上圖為華為官方公布的ES3600C V3的性能指標。對同一塊ES36000C V3 NVMe SSD分別在512B格式和4K格式下進行4K數據塊讀性能測試,相對於512B格式下獲得的76萬IOPS,4K格式獲得了更高的80萬IOPS。4Kn不僅能夠提升硬盤的容量,更有助於性能的發揮

對官方性能數據進行驗證,是企事錄實驗室拿到產品后要做的第一件事,下圖是我們測試時的一個截圖:

企事錄將華為ES3600C V3 NVMe SSD的扇區格式(Logical Block Address,簡稱LBA)改為4K之后,通過基准測試工具獲得的4K數據塊隨機讀成績,超過了75萬IOPS,平均響應時間僅為0.34ms,最大時間不超過2ms,與華為官方公布的80萬IOPS相差無幾


華為針對ES3600 V3系列SSD提供的高級管理工具——Huawei NVMe Toolbox。值得注意的是,只有安裝了華為提供的NVMe驅動之后,這個工具才能發揮作用

希望重復企事錄實驗室測試的童鞋,可以通過華為官網下載ES3600C V3的驅動,以及相應的SSD管理工具,即可實現ES3600C V3 NVMe SSD在512B和4Kn之間進行格式轉換。

需要注意的是,目前主流操作系統已經對NVMe SSD提供支持,真正做到即插即用。但公版驅動中只使用了常用的API接口,而改變LBA格式等高級API接口並不在其中,所以這也是為何在本次測試中一定要使用華為NVMe驅動的原因。

LBA格式轉換工具:嗯,這是個神器

在剛驗證完華為ES3600C V3 NVMe SSD的性能之后,VMware就發布了vSphere 6.5,作為國內唯一的一家以技術為導向的第三方分析機構,最新的vSphere 6.5必然是我們的關注重點,在安裝了ESXi之后,准備將華為ES3600C V3 SSD作為數據本地存儲,但在添加硬盤的時候,這塊ES3600C V3 SSD居然不……見……了!WTF!


在ESXi主機上添加ES3600C V3 SSD為本地存儲時,ES3600C V3 SSD未能被ESXi主機正確識別到

但是在ESXi主機的高級管理里面(類似於Windows的設備管理器),卻又能看到這個PCIe設備……


在ESXi主機的硬件管理頁面,可以看到有一個PCIe設備,Non—Volatile memory controller的意思是非易失性存儲控制器,表明ESXi主機上存在一個閃存存儲設備。NVMe中的NVM也是Non-Volatile Memory的簡寫

What’s wrong?

經過長達15分鍾的沉默,恍然大悟,這塊ES3600C V3 SSD的扇區格式(LBA)被改為4K了,VMware現在還不支持4K,即使是vSphere 6.5支持了512e,但仍不支持4Kn。好吧,利用華為的NVMe Toolbox工具,將4K改為默認的512B,再添加硬盤(SSD)。

這塊熟悉的SSD又回來了。


將ES3600C V3 SSD的LBA改為512B之后,ESXi主機可以將其添加為本地存儲了

值得注意的一個細節是,無論這塊華為的盤是在512B扇區格式下還是在4096扇區格式下,其容量都一樣顯示為1490.4GB(又是1024和1000的三次方關系)。也就是說,物理扇區不變的話,邏輯扇區不影響真實的容量。

這一切我們都看在眼里,只是在操作系統被蒙在鼓里,直到6.5版本vSphere操作系統的眼里都只有512B,對SSD來說,要么統一對操作系統暴露為512字節,要么像華為一樣,提供512B和4KB之間的切換工具。vSphere 6.5增加了對512e的支持,對於大容量硬盤是一大進步,使得物理扇區為4KB的硬盤也能用於vSphere環境中,雖然仍要“仿真”成512B……。不管怎么說,還是期待vSphere盡早支持原生4K吧……

結語:

不過話說回來,固態存儲真的是為存儲爭了一大口氣,之前企事錄在各種公開場合的演講和推出的文章中都表達過類似的觀點,比如說固態存儲讓存儲摘掉了拖后腿的帽子。

今天我們也還要說固態存儲為硬件爭了一口氣:軟件別再嫌棄硬件進步慢了,硬件一變化你軟件還是跟不上不是?

512e是硬盤的事兒,NVMe SSD也得支持512B才能兼容尚處於“4KB初級階段”的vSphere,就說這么多吧。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM