Hyper-V存储最佳实践,以优化您的虚拟环境
微软专家布莱恩波西通过最好的存储技巧和功能,最大限度地利用Hyper-V环境。
尽管内存通常被认为是虚拟数据中心中最重要的硬件资源,但对虚拟机性能影响最大的通常是存储。对于可以使用的存储类型,Microsoft Hyper-V非常灵活,但是管理员必须了解许多与特性相关的限制和支持需求。本文旨在让您熟悉各种Hyper-V存储最佳实践。
最小化虚拟机蔓延
虚拟化管理员必须经常处理的一个问题是虚拟机(VM)蔓延。微软的Windows Server 2012数据中心版授权政策,以及系统中心虚拟机管理器等工具,使得创建虚拟机变得太容易了;如果不进行检查,虚拟机可能会以惊人的速度激增。
VM蔓延的问题通常是通过限制VM创建或设置策略使老化的虚拟机自动过期来解决的。然而,考虑VM扩展对存储基础设施的影响也很重要。
随着越来越多的虚拟机被创建,存储消耗成为一个问题。然而,更经常资源争夺是更大的问题.虚拟硬盘通常位于普通卷或普通存储池上,这意味着虚拟硬盘必须竞争IOPS。
尽管对于存储资源争用问题没有一个普遍适用的、廉价和简单的解决方案,但是Hyper-V管理员可以使用许多不同的机制来处理这个问题。
与dedupe争夺资源
降低存储IOPS的最佳工具之一是文件系统重复数据删除.但是,必须考虑到一些重要的限制。
Microsoft在Windows Server 2012中引入了本地文件系统重复数据删除功能。虽然这个特性一开始看起来很有前途,但它有两个主要的限制:本地重复数据删除与新的ReFS文件系统不兼容;对于包含连接到正在运行的虚拟机的虚拟硬盘的卷,不支持本机重复数据删除。
微软在Windows Server 2012 R2的重复数据删除功能上做了更多的工作,现在你可以删除包含活跃使用的虚拟硬盘的卷。但有一个重要的警告:这种类型的重复数据删除仅支持虚拟桌面,而不支持虚拟服务器。
重复数据删除可以降低IOPS并提高Hyper-V虚拟服务器的性能,但以支持的方式实现这些好处的唯一方法是利用对Hyper-V主机和任何来宾操作系统完全透明的硬件级重复数据删除。
管理QoS以实现有效的存储I/O
另一种减少问题的工具存储I / O争用是Windows Server 2012 R2的一个新特性,称为服务质量管理(以前称为存储QoS)。通过设置虚拟硬盘的最小IOPS,为虚拟硬盘预留存储IOPS。IOPS以8kb为单位递增。同样,可以通过指定最大IOPS来限制虚拟硬盘的I/O操作。
服务质量管理特性是基于每个虚拟硬盘而不是每个虚拟机进行设置的。这允许您粒度化地应用服务质量管理策略,从而从可用的IOPS中获得可能的最佳性能。
Windows存储空间的考虑
微软在Windows Server 2012中引入了Windows存储空间,作为一种将物理存储抽象为存储资源池的方法。您可以在存储池上创建虚拟磁盘,而不必担心物理存储分配。
微软在Windows Server 2012 R2中扩展了Windows存储空间功能,引入了三向镜像和存储分级等新功能。您可以实现分层存储功能并允许将“热块”动态移动到基于固态硬盘(SSD)的存储层,以便以尽可能高的效率读取它们。
分级存储特性极大地提高了虚拟机的性能,但也存在一定的限制。最紧迫的问题是存储层只能用于镜像虚拟硬盘或简单虚拟硬盘。分级不能与之一起使用奇偶校验磁盘,尽管在预览版中是允许的。
如果您计划使用带有镜像卷的分级存储,那么Windows要求存储池中ssd的数量与镜像磁盘的数量匹配。例如,如果您正在创建一个三向镜像,那么您将需要三个ssd。
在创建使用存储层的虚拟硬盘时,可以指定希望分配给快速层的SSD空间大小。一个好主意是估计需要多少空间,然后至少增加1gb。这样做的原因是,如果有足够的可用空间,那么Windows将使用1 GB的快层作为回写缓存。这个缓存通过从快速层占用1gb空间来帮助平滑写操作(从而提高写性能)。如果你预先考虑到这个损失,你可以分配足够的空间来容纳这两个回写缓存还有热存储块。
参考文献的局限性
在Windows Server 2012中,微软引入了ReFS (Resilient File System)作为下一代系统的替代品NTFS文件系统老化,也存在于Windows Server 2012 R2中。Hyper-V管理员需要考虑是否发放虚拟机与参考文献卷或者NTFS卷。
如果你在Windows Server 2012上运行Hyper-V,那么最好避免使用ReFS文件系统,因为它有很多限制。其中最重要的(至少对虚拟化管理员来说)可能是不支持ReFS使用集群共享卷.
在Windows Server 2012 R2中,微软支持在集群共享卷上使用ReFS,但仍有一些限制需要考虑。首先,选择文件系统是半永久性的操作。没有选项将卷从NTFS转换为ReFS,反之亦然。
此外,NTFS中存在的许多特性在ReFS中并不存在。微软暗示未来可能会增加这些功能,但现在,以下是一些缺失的功能:
- 基于文件的压缩(重复数据删除)
- 磁盘配额
- 对象标识符
- 加密文件系统
- 命名流
- 交易
- 硬链接
- 扩展属性
这么多特性都没有了,为什么还会有人使用ReFS呢?有两个原因:ReFS非常擅长维护数据完整性和防止比特腐烂,当需要存储大量数据时,它是一个很好的选择。文件系统的理论大小限制是1 yottabyte。
如果您决定在包含Hyper-V VHD或VHDX文件,则必须禁用这些虚拟硬盘的完整性位。Hyper-V自动禁用任何新创建的虚拟硬盘的完整性位,但如果在NTFS卷上创建了任何虚拟硬盘,然后移动到ReFS卷,则需要手动禁用这些虚拟硬盘的完整性位。否则,当您尝试启动VM时,Hyper-V将显示一系列错误消息。
您只能通过PowerShell禁用完整性位。可以使用如下命令验证完整性位的状态:
Get-Item <虚拟硬盘名称> | Get-FileIntegrity
如果您需要禁用完整性位,请使用以下命令:
Get-Item <虚拟硬盘名称> | Set-FileIntegrity -Enable $False
存储连接的最佳实践
Hyper-V是非常灵活的关于存储硬件的类型,可以使用。它支持直接连接存储、iSCSI、FC (Fibre Channel)、Virtual FC等。然而,建立存储连接的方式可能会影响存储性能,以及备份数据的能力。
有句老话说:“你能做某事并不一定意味着你应该做。”在Hyper-V的世界中,这尤其适用于使用直通磁盘.直通磁盘允许配置Hyper-V虚拟机直接连接到物理磁盘,而不是使用虚拟硬盘。
使用直通磁盘的问题是它们对Hyper-V VSS Writer是不可见的。这意味着依赖于Hyper-V VSS Writer的备份应用程序无法对驻留在直通磁盘上的卷进行文件、文件夹或应用程序一致的备份,而不会迫使虚拟机进入保存状态。值得注意的是,这个限制不适用于虚拟FC连接。
另一个Hyper-V存储连接的最佳实践是,只要可能,建立iSCSI连接而不是在VM内部执行。这样做的原因是,取决于许多因素(如Hyper-V版本、客户操作系统和Integration Service的使用),如果iSCSI连接从虚拟机内部启动,由于缺乏对巨帧的支持,存储性能会受到影响。