原创 2017-01-12 朱朋博 金笑雨 企事录

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,就说这么多吧。

vSphere 6.5支持512e,NVMe SSD呢?的更多相关文章

  1. vSphere 6.5 新功能 (7) - 支持 512e 硬盘

    2016-12-11 Newton 长期以来,机械硬盘在储存数据时,一直都是以 512 byte 大小的扇区(Sector)为单位分割进行读写.随着硬盘容量的不断提升,这种古老的分配标准已经越来越不合 ...

  2. USB3.0及NVME SSD安装WIN7X64

    USB3.0及NVME SSD安装WIN7X64https://tieba.baidu.com/p/4822034273?pn=1所有的人都是菜鸟过来的,不过有些人懂得自己动手找到答案:有些人则是懒得 ...

  3. NVME SSD vs SATA SSD(转)

    NVMe是个啥?未来SSD主流标准早知 关注固态硬盘的朋友应该对于这个词汇并不陌生,特别是今年NVMe也频繁出现在各大媒体文章中,随着高端SSD市场逐渐从SATA专项PCI-E时,以前的AHCI标准已 ...

  4. H310C,B365,M.2 NVME SSD,USB3.0,安装 WIN7 64 位

    华擎H310CM ITX NVME SSD 上安装WIN7 64位 核心关键点:xHCI USB3.0驱动,nvme驱动,nvme win7补丁. 硬件配置:I5 9400F, 华擎H310CM IT ...

  5. [转帖]深度: NVMe SSD存储性能有哪些影响因素?

    深度: NVMe SSD存储性能有哪些影响因素? http://www.itpub.net/2019/07/17/2434/ 之前有一个误解 不明白NVME 到底如何在队列深度大的情况下来提高性能, ...

  6. 存储系统设计——NVMe SSD性能影响因素一探究竟

    目录1 存储介质的变革 2 NVME SSD成为主流 2.1 NAND FLASH介质发展 2.2 软件层面看SSD——多队列技术 2.3 深入理解SSD硬件 3 影响NVME SSD的性能因素 3. ...

  7. Ceph BlueStore与FileStore:利用Micron NVMe SSD进行性能比较

    https://www.micron.com/about/blog/2018/may/ceph-bluestore-vs-filestoreblock-performance-comparison-w ...

  8. NVMe SSD是什么?

    https://blog.51cto.com/alanwu/1766945 一直对闪存存储关注的朋友对NVMe SSD一定非常熟悉,NVMe SSD是现如今性能最好的存储盘.这种高性能盘在互联网领域已 ...

  9. WinPE无法识别NVMe SSD硬盘,如何重装系统

    (源自网络出处不详) 抽风,diy一台新机器,下载的win10系统安装时出现如题所示的问题,开始以为是主板的问题设置u盘启动也不行,后来在某个群里有人说是系统版本问题,无奈重新做了启动优盘(用的17年 ...

随机推荐

  1. vue 封装分页组件

    分页 一般都是调接口, 接口为这种格式 {code: 0, msg: "success",…} code:0 data:{ content:[{content: "11& ...

  2. CSS实现跳动的桃心

    又来刷题--CSS动画实现跳动的桃心,从哪里跌倒就从哪里爬起来,哈哈哈~ 分析:首先,得画出一个桃心,然后再用动画效果让它跳起来(关于动画,实在是弱项啊~~~,得补补了). 第一步:画桃心,思路是一个 ...

  3. (55)zabbix模板嵌套

    在zabbix使用过程中,在某些情况下,一个host需要link多个模板.这么做显得比较麻烦,很容易忘记到底要link哪些模板,我想link一个模板就达成这个目标,行不行?然没问题,zabbix模板内 ...

  4. (17)zabbix自定义用户key与参数User parameters

    为什么要自定义KEY 有时候我们想让被监控端执行一个zabbix没有预定义的检测,zabbix的用户自定义参数功能提供了这个方法. 我们可以在客户端配置文件zabbix_angentd.conf里面配 ...

  5. 离线web-ApplicationCache

    https://www.html5rocks.com/en/tutorials/appcache/beginner/ http://diveintohtml5.info/offline.html#fa ...

  6. JS(DOM 和 BOM)

    JS(DOM 和 BOM) 常说的JS(浏览器执行的JS)包含两部分:1.JS基础知识(语法)(ECMA262标准)2.JS-Web-API(W3C标准) W3C 标准中关于 JS 的规定有:(只管定 ...

  7. apk 解包 打包

    APK应用程序的解包.修改.编辑.汉化.打包及应用 前两讲主要讲玩机的最基本的知识,集中在如何刷机.本讲是进级的内容,来谈谈与apk应用程序有关的知识,内容包括akp文件的解包.打包.反编辑.解析.汉 ...

  8. js的setInterval和setTimeout的那些浅坑

    setInterval和setTimeout的区别简单提一下 setInterval() :按照指定的周期(以毫秒计)来调用函数或计算表达式.方法会不停地调用函数,直到 clearInterval() ...

  9. 【JavaScript 8—基础知识点】:DOM

    一.总体概述 1.1,什么是DOM DOM(Document Object Model):D(文档):整个web加载的网页文档:O(对象):类似于window对象之类的东西,可以调用属性和方法,在这里 ...

  10. 九度oj 题目1109:连通图

    题目描述: 给定一个无向图和其中的所有边,判断这个图是否所有顶点都是连通的. 输入: 每组数据的第一行是两个整数 n 和 m(0<=n<=1000).n 表示图的顶点数目,m 表示图中边的 ...