Hyper-V 第二代虚拟机的硬件性能损失

Hyper-V 第二代虚拟机的硬件性能损失

我有以下配置:

  • Windows Server 2012 R2 操作系统安装在带有 Hyper-V 的裸机上。操作系统安装在 RAID1 850 PRO 驱动器上。
  • Windows Server 2012 R2 客户操作系统第二代 VM 位于 Windows 存储空间镜像 950 PRO 驱动器上。

我使用 Crystal Disk 对 Windows Storage Space Mirrored 950 PRO 驱动器进行了一些测试。以下是统计数据。

在裸机上测试时

   Sequential Read (Q= 32,T= 1) :  4178.159 MB/s
  Sequential Write (Q= 32,T= 1) :  1504.286 MB/s
  Random Read 4KiB (Q= 32,T= 1) :   460.155 MB/s [112342.5 IOPS]
 Random Write 4KiB (Q= 32,T= 1) :   266.983 MB/s [ 65181.4 IOPS]
         Sequential Read (T= 1) :  2042.397 MB/s
        Sequential Write (T= 1) :  1500.305 MB/s
   Random Read 4KiB (Q= 1,T= 1) :    40.059 MB/s [  9780.0 IOPS]
  Random Write 4KiB (Q= 1,T= 1) :    76.623 MB/s [ 18706.8 IOPS]

在 VM 中测试时

   Sequential Read (Q= 32,T= 1) :  4635.549 MB/s
  Sequential Write (Q= 32,T= 1) :  1502.071 MB/s
  Random Read 4KiB (Q= 32,T= 1) :   181.225 MB/s [ 44244.4 IOPS]
 Random Write 4KiB (Q= 32,T= 1) :   110.272 MB/s [ 26921.9 IOPS]
         Sequential Read (T= 1) :  1624.129 MB/s
        Sequential Write (T= 1) :  1381.203 MB/s
   Random Read 4KiB (Q= 1,T= 1) :    24.528 MB/s [  5988.3 IOPS]
  Random Write 4KiB (Q= 1,T= 1) :    34.563 MB/s [  8438.2 IOPS]

我的随机读/写性能下降了近 50%。我重新测试了几次以确认数值。这是预料之中的吗?

答案1

首先,使用 DiskSPD 而不是其他任何工具都是一个好主意。因为 Microsoft 在其内部 QA 过程中使用了 DiskSPD。

https://blogs.technet.microsoft.com/josebda/2014/10/13/diskspd-powershell-and-storage-performance-measuring-iops-throughput-and-latency-for-both-local-disks-and-smb-file-shares/

其次,这是 Hyper-V 的已知问题。它甚至以或多或少相同的方式存在于 Windows Server 2016 中。简而言之,如果底层存储的延迟非常低,则 I/O 性能通常会下降 2 倍 - 4 倍。您可以尝试几种解决方法来改善您的情况:

使用多个卷。不要在单个虚拟磁盘或命名空间上分配多个 CSV,而是确保本地挂载点(如果您直接从 DAS 运行虚拟机)、CSV 或 SMB3 共享位于不同的逻辑卷之上!您必须拥有一个具有多个 VHD 文件的虚拟机或多个虚拟机,才能以这种方式“聚合”组合性能。如果您有一个带有单个附加 VHD 的虚拟机,这种方法显然不会有帮助。

使用“中间人”。这可以说是第一种方法的渐进式改进。您可以获得多个逻辑卷,在上面包装一些基于 Windows 的软件定义存储,并允许它为附加单个 VHD 的单个 VM 聚合 I/O 性能。如果您运行单个 Oracle RAC 或 SQL Server VM,并且它正是您想要高 IOPS 的 VM,那么这种情况就会发生。

禁用 I/O 调度程序。设置注册表项...

“HKLM\SYSTEM\CurrentControlSet\Control\StorVSP\IOBalance\Enabled”

... 归零!PS 不要忘记重新启动,因为没有任何变化。

这个可能有效也可能无效。我们在 RAID0 中的一对三星 850 Pro SSD 上获得了 ±20% 的提升。

希望对你有用。请更新你的结果,以便将来的潜水者参考 :)

相关内容