我们如何测试VMware vSAN™:为何在实践中起作用

一年前,我从一堆Intel NUC组装了一个数据中心 。 有一个软件存储系统,清洁女工无法破坏,集群崩溃了几次。

现在,我们决定以良好的配置在多台服务器上运行vSAN,以便全面评估该解决方案的性能和容错能力。 当然,我们为客户在生产中实现了许多成功的实施,其中vSAN成功解决了设定的任务,但无法进行全面的测试。 实际上,我今天想分享测试结果。

我们将用负载折磨存储,将其掉落并以各种可能的方式测试容错能力。 有关详细信息,我邀请所有人来参加。

一般而言,什么是VMware vSAN?为什么要加入?


有一个用于虚拟机的常规服务器群集。 它具有许多独立的组件,系统管理程序直接在硬件上运行,并且基于DAS,NAS或SAN分别配置存储。 HDD上的数据变慢,SSD上的数据变热。 一切都很熟悉。 但是,这里出现了该动物园的部署和管理问题。 在来自不同供应商的系统各个元素的情况下,它变得特别有趣。 出现问题时,来自不同制造商的技术支持票对接有其特殊的气氛。

有单独的铁片,从服务器的角度来看,它们看起来像是用于记录的光盘。

还有超融合系统。 在它们中,为您提供了一个通用单元,该单元将承担网络,磁盘,处理器,内存以及在其上旋转的虚拟机之间的交互的全部麻烦。 所有数据都流入一个控制面板,如果需要,您可以简单地增加几个单元来补偿增加的负载。 管理大大简化和标准化。


VMware vSAN仅指基于其部署的解决方案
超融合基础架构。 该产品的关键功能是与虚拟化平台VMware vSphere紧密集成,该平台是虚拟化解决方案的领导者,可让您在几分钟内为虚拟机上的虚拟机部署软件存储。 vSAN直接以较低的级别控制I / O操作,以最佳方式分配负载,缓存读/写操作,并以最小的内存和处理器负载进行更多操作。 系统的透明度略有降低,但结果一切正常,正如他们所说,vSAN可以自动配置为混合存储,并采用全闪存版本的形式。 通过在群集中添加新节点来水平扩展,并在垂直方向上扩展,以增加单个节点中的磁盘数量。 由于与其他产品的紧密集成,因此使用自己的vSphere Web Client进行管理非常方便。

我们选择了干净的全闪存配置,这在价格和性能方面应该是最佳的。 显然,与使用磁盘的混合配置相比,总容量要低一些,但是在这里,我们决定检查如何使用擦除编码以及动态重复数据删除和压缩来部分避免这种情况。 结果,存储效率变得更接近混合解决方案,但是却以最小的开销显着提高了存储效率。

测试方法


为了测试性能,我们使用了HCIBench v1.6.6软件,该软件可以自动创建多个虚拟机,然后编译结果。 性能测试本身是使用Vdbench软件进行的,该软件是最流行的合成负载测试软件之一。 Iron具有以下配置选项:

  1. 全闪存-2个磁盘组:1个NVMe SSD三星PM1725 800 GB + 3个SATA
  2. SSD东芝HK4E 1.6 TB。
  3. 全闪存-1个磁盘组:1个NVMe SSD三星PM1725 800 GB + 6个SATA SSD东芝HK4E 1.6 TB。
  4. 全闪存-1个磁盘组:1个NVMe SSD三星PM1725 800GB + 6个SATA SSD东芝HK4E 1.6 TB +空间效率(重复数据删除和压缩)。
  5. 全闪存-1个磁盘组:1个NVMe SSD三星PM1725 800GB + 6个SATA SSD东芝HK4E 1.6 TB +擦除编码(RAID 5/6)。
  6. 全闪存-1个磁盘组:1个NVMe SSD三星PM1725 800GB + 6个SATA SSD东芝HK4E 1.6 TB +擦除编码(RAID 5/6)+空间效率(重复数据删除和压缩)。

在测试期间,我们模拟了应用程序使用的三种不同的活动数据量:1 TB(每台服务器250 GB),2 TB(每台服务器500 GB)和4 TB(每台1 TB)。

对于每种配置,使用以下负载配置文件执行了相同的测试集:

  1. 0读取/ 100写入,随机50%,块大小-4k。
  2. 30次读取/ 70次写入,随机50%,块大小-4k。
  3. 70次读取/ 30次写入,随机50%,块大小-4k。
  4. 100次读取/ 0次写入,随机50%,块大小-4k。

需要第一个和第四个选项来了解系统在最大和最小负载下的行为。 但是第二和第三个尽可能接近实际的典型用例:例如,30读/ 70写-VDI。 我在生产中遇到的那些负载非常接近它们。 在此过程中,我们测试了vSAN数据管理机制的有效性。

总的来说,该系统被证明是非常好的。 根据测试结果,我们意识到我们可以依靠每个节点2万IOPS的性能。 对于普通任务和重负载任务,考虑到5 ms的延迟,这些都是很好的指标。 下面我给出了带有结果的图表:







汇总表及测试结果:

绿色表示已完全缓存的活动数据。

容错能力


尽管机器很恼火,但我还是一个接一个地削减了一个节点,并研究了整个系统的反应。 断开第一个节点的连接后,除了性能下降约10-15%以外,什么都没有发生。 我放出第二个节点-一些虚拟机关闭,但其余虚拟机继续工作,但性能略有下降。 总体生存能力令人满意。 重新启动所有节点-系统稍微思考一下,然后再次同步,没有任何问题,所有虚拟机都启动了,没有任何问题。 就像一次在NUC上一样。 数据的完整性也不受影响,这非常令人高兴。

总体印象


软件定义存储系统(SDS)已经是一项成熟的技术。

如今,阻碍实施vSAN的关键因素之一是卢布的许可费用相当高。 如果从头开始创建基础架构,可能会发现具有类似配置的传统存储系统的成本大约相同。 但是在管理和扩展方面,灵活性都将降低。 因此,今天,当选择在vSphere虚拟化平台上存储虚拟机数据的解决方案时,最好权衡使用传统解决方案和实施软件定义的存储技术的利弊。

您可以在相同的Ceph或GlusterFS上构建解决方案,但是在使用VMware基础架构时,vSAN与各个组件的紧密集成以及易于管理,部署和明显更高的性能(尤其是在少数节点上)尤其令人着迷。 因此,如果您已经在使用VMware基础架构,那么部署起来会容易得多。 您实际上只需单击一下即可获得可用的SDS。

部署vSAN的另一个动机是将其用于分支机构,这使您可以将远程单元中的节点镜像到数据中心中的见证主机。 此配置仅在两个节点上为具有所有vSAN技术和性能的虚拟机提供容错存储。 顺便说一下,要使用vSAN,有一个针对虚拟机数量的单独许可方案,与传统的处理器vSAN许可方案相比,它可以降低成本。

在架构上,该解决方案需要10 Gb以太网,每个节点具有两个链路,以便在使用全闪存解决方案时进行适当的流量分配。 与传统系统相比,通过消除光纤通道以支持更通用的以太网标准,可以节省机架空间并节省SAN网络。 为了确保容错能力,至少需要三个节点,将在两个具有数据的对象副本上存储该数据,在第三个节点上-用于该数据的见证对象,解决了裂脑的问题。

现在给您几个问题:

  1. 在决定存储系统时,什么标准对您最重要?
  2. 在实现软件定义的存储系统的过程中,您看到哪些停止因素?
  3. 您基本上将哪些软件定义的存储系统视为实施的选择?


UPD:我完全忘记编写支架配置和载荷参数:

1.铁的描述。 例如:
服务器-4xDellR630,每个服务器:
•2xE5-2680v4
•128GB RAM
•2x10GbE
•2x1GbE用于管理/ VM网络
•戴尔HBA330
存储配置#1:
2个PM1725 800GB
6x东芝HK4E 1.6TB
存储配置#2:
1个PM1725 800GB
6x东芝HK4E 1.6TB

2.软件版本说明:
vSphere 6.5U1(7967591)(vSAN 6.6.1),即 崩溃/幽灵后的补丁
vCenter 6.5U1克
vSAN和ESXi支持所有组件的最新驱动程序和固件
用于vSAN和vMotion流量的LACP(启用了NIOC共享/限制/预留)
所有其他设置均为默认设置

3.加载参数:
•HCIBench 1.6.6
•Oracle Vdbench-2006年4月5日
•每个群集40VM(每个节点10个)
•每个VM 10个vmdk
•10 GB的vmdk大小和100/50/25%的工作负载设置百分比
•预热时间-1800秒(0.5小时),测试时间3600(1小时)
•每个vmdk 1个线程

Source: https://habr.com/ru/post/zh-CN414125/


All Articles