原文:http://blogs.vmware.com/vsphere/2013/12/virtual-san-hardware-guidance-part-1-solid-state-drives.html



      随着 VMware Virtual SAN 的问世,围绕要支持和配置 VirtualSAN 环境应使用的服务器硬件的类型,产生了许多问题。在 GA,这些问题就像为您的 VirtualSAN 环境选择合适的就绪节点服务器一样简单(有关 Virtual SAN 就绪节点程序的更多信息,请参考此处),很多人会选择使用《VMware 兼容性指南》(VCG) 中的单个组件来创建自己的配置。


       Virtual SAN 允许基于指定供应商硬件平台创建自己的配置,这样您便可以根据自己的选择使自己 VirtualSAN 群集的性能脱颖而出。但是,伴随灵活性而来的是大量决策点。本系列博文为您在为 Virtual SAN 环境选择特定硬件组件时,要考虑的硬件设计注意事项提供了初始指导。


       Virtual SAN 和固态驱动器
       VirtualSAN 使用固态驱动器 (SSD) 作为写入缓冲区和读取缓存,加速了平台性能。固态驱动器 (SSD) 是在固态 NAND 闪存模块中存储永久数据的设备。Virtual SAN支持的 SSD 可以使用三个通用接口之一:SATASAS PCIe。那么,这些接口各有什么利弊呢?单纯从接口速度角度来看,每个接口的最大吞吐量都不同,如下文所示。

  • SAS 驱动器通常支持 6Gb/s     12Gb/s(基于 SAS-2     SAS-3 规格)

  • SATA 驱动器通常支持     1.5Gb/s3Gb/s 6Gb/s(基于 SATA     1.02.0 3.0 规格)

  • PCIe 驱动器通常支持 1 32 通道,吞吐量取决于 PCIe 迭代


       注意:SATA 3Gb/s 6Gb/s 驱动器可连接到 SAS 接口,但是,SAS 驱动器不能连接到 SATA 接口。


      上述接口性能数据可直接用于 SAS SATA (接口速度明确标示为 3Gb/s6Gb/s 12Gb/s),然而,您可能不明白 PCIe 迭代和通道对于接口性能意味着什么。第一个变量是 PCIe 迭代。每个后续迭代都会增加每通道可能速度,如下文所述。

  • v1.x:     250MB/s (2.5GT/s)

  • v2.x:     500MB/s (5GT/s)

  • v3.0:     985MB/s (8GT/s)

  • v4.0:     1969MB/s (16GT/s)


       PCIe 设备可包含 1 32 条通道,这表示有 8 个通道的 PCIe Gen 2卡可产生的最大吞吐量为 4GB/s (32 Gb/s)。作为通用指导原则,PCIe SSD 设备通常比 SAS/SATASSD 性能更佳。但是,接口性能仅是选择 SSD 的一个因素。接下来,让我们看看驱动器 I/O 性能。

       SSD IOPS
       在为 Virtual SAN 群集选择硬件时,你可能注意到了,VCG 网站上的 SSD 根据写入性能被分为不同等级。创建的所有 SSD 都是不同的,因此,为了简化 SSD 的选择,VMware SSD 设备分成了五个性能类。您选择的 SSD 类可极大影响您 VSAN 群集的性能。以下是《VMware 兼容性指南》中指定的 SSD 类。

  • A 类:每秒     2,500-5,000 次写入操作

  • B 类:每秒     5,000-10,000 次写入操作

  • C 类:每秒     10,000-20,000 次写入操作

  • D 类:每秒     20,000-30,000 次写入操作

  • E 类:每秒     30,000+ 次写入操作


       虽然写性能是衡量 SSD 性能的一项常用的好指标(我们选择写性能是因为在 SSD 中,与随机或连续读取相比,写性能对 SSD 性能的限制大得多),但是,为了更深入了解 SSD 的性能特点以及它如何影响 VirtualSAN 中的工作负载,还应该考虑其它参数,如 SSD 供应商报告其衡量指标的队列深度、最大驱动器延迟数据等。

      

       SLCMLC eMLC 之比较
       查看不同的 SSD 时,您可能注意到 SSD 供应商将其组件分类为单级别单元 (SLC)、多级别单元 (MLC) 或企业级多级别单元 (eMLC)NANDNAND 闪存模块是构成 SSD 的非易失性存储组件。


       在单级别单元 (SLC) 中,每个单元可存储单个位(0 1)信息。在多级别单元 (MLC) 中,NAND 闪存使用每单元的多个级别来存储更多位。MLC 通常有 4 个位元(00011011)。MLC 的成本一般低于 SLC,但 NAND 模块的使用寿命一般较短。因为 MLC 使用的晶体管数与 SLC 相同,所以每个模块中的潜在错误风险更高。eMLC 是成本/使用寿命介于 SLC MLC 模块之间的中间产品,一般使用 2 个位元。因为与消费性 MLC 相比,eMLC 闪存介质的编程/擦除 (P/E) 周期更多,因此更耐用,能承受各种企业应用所要求的工作负载类型。


       那么,这是否意味着,任何使用 SLC SSD 都比 eMLC 更可靠,而 eMLC MLC 更可靠?未必。个体 NAND 模块的可靠性和性能可通过 SSD 控制器内的功能强化。不同供应商使用不同的 SSD 设计技术来提高其驱动器的可靠性,以达到企业级(如,NAND 超置备以及 SSD 控制器耐用×××)。因此,VMware 无法区别对待任何这些 NAND 技术。重要的是,无论供应商采用何种 SSD 设计(例如, NAND 类型与 SSD 控制器功能),SSD 设备都能满足 VMware 定义的指定性能类别下的最低性能和可靠性指标。

wKiom1OqcsXzOSiXAAJwRi_SP0I357.jpg

       注意:此图表显示了不同 SSD 设计方法,它们结合了不同 NAND 类型来达到相似的 SSD 耐用等级。此处所列数据仅作说明之用。


       

        VMware SSD 耐用性要求

        SSD 写入指标是 SSD 供应商衡量 SSD 可靠性的主要数据。虽然所有供应商之间没有通用的标准指标,但是,大多数供应商都通过每天驱动器写入次数写入 Petabyes”来衡量 SSD 的可靠性。VMware 要求 VCG 中的所有 SSD 设备在五年使用期限内都满足下列最低耐用性指标。


        VMware SAS SATA SSD 的耐用性要求

  • 驱动器必须支持至少 10 个满每天驱动器写入次数     (DWPD)并且

  • 驱动器必须支持随机写入耐用性达到:在 8KB 传输大小时每 NAND 模块 3.5     PB或者

  • 驱动器必须支持随机写入耐用性达到:在 4KB 的传输大小时每 NAND 模块 2.5     PB


        VMware PCIe SSD 的耐用性要求

  • 驱动器必须支持至少 10 个满每天驱动器写入次数     (DWPD)或者

  • 驱动器必须支持随机写入耐用性达到:在 8KB 传输大小时每 NAND 模块 3.5     PB或者

  • 驱动器必须支持随机写入耐用性达到:在 4KB 的传输大小时每 NAND 模块 2.5     PB


        在 Virtual SAN 关注在大多数工作负载下,无需复杂的设计决策即可实现性能和操作效率时,有人始终希望通过选择特定的硬件组件,最大限度地自定义其 VirtualSAN 环境。希望这篇博文能够帮您在一定深度上了解与 Virtual SAN 有关的 SSD 硬件事宜。在本系列博文的下一章中,我们将深入研究存储控制器注意事项。


        欢迎在微博上关注我,这样在我发布博客文章后您就会收到通知,并可以让您了解更多有关 VMware 存储的信息:@VMware中国


————————————————————————————————————————————


作者:Wade Holmes

Wade HolmesVCDX #15CISSPCCSK,是 VMware 公司的高级技术营销架构师,目前专注于软件定义的存储参考架构。Wade 拥有超过 17 年的从业经验,主要负责设计、实施不同范围和规模的复杂计算环境。Wade 出席过多场行业大会,还是《VMwarevCloud 架构工具包》一书的合著作者。Wade 拥有信息技术学士学位和信息安全硕士学位。