当我们在执行Hyper-V的动态迁移时,我们的系统会被冻结。那我们该如何减少迁移的范围和优化数据传输的性能呢?
Hyper-V需要细心的配置以优化它在某些数据中心环境中的行为。Windows Server 2012和Windows Server 2012 R2允许管理员选择性能选项来优化Hyper-V的动态迁移。这些选项可以在Hyper-V Manager console中或者通过PowerShell 中的Set-VMHost cmdlet命令来做配置。
默认的情况下,Windows Server 2012 R2的Hyper-V使用压缩选项来进行动态迁移。这个选项首先将一个VM使用的内存压缩并且拷贝到另一个系统中去。压缩可以减少迁移的总大小,减少在网络中传输的总数据包数,不过压缩需要收发双方都消耗额外的处理器资源来进行文件的压缩和解压缩。另外还需要足够的缓存空间来存储压缩的内容。因此,压缩可能对于高处理器使用率和高内存使用率的系统来说并不是一种理想的方法。
如果压缩不是一种令人满意的迁移方案,那么管理员还可以选择一种非压缩的TCP/IP传输模式直接将VM的内存拷贝到目标系统中去。因为VM空间没有被压缩,因此在传输过程中需要更多的数据包传输。这可能对于有很多服务器共享文件和存储流量的繁忙网段来说是个缺点。不过去除压缩和解压缩的动作可以节约处理器和内存资源。
Hyper-V动态迁移还使用了服务器信息块协议(SMB) 3.0版本,它可以使内存数据通过SMB技术从源VM直接拷贝到目的服务器。举个例子,如果迁移双方的网卡都支持远程直接内存存取技术,那么SMB Direct可以将VM数据从一台服务器的内存直接迁移到另一台,而不需要经过传统网络协议的封装和解封装。这样可以在繁忙的网络提高性能,但是仍然会降低处理器和内存的负载来处理网络流量。另外,如果SMB检测到有效的多通道的网络配置,那么多通道同时传输可以提高迁移性能。
除了某些SMB特性例如SMB Direct或SMB Multichannel之外,Hyper-V动态迁移的性能选项适用于发起迁移的宿主机。性能选项一般来说只是发出方向的,在目的系统上并没有任何明确的系统需求来匹配这个性能选项。因此可以在迁移VM的源和目的两个系统上使用不同的性能选项。
可以使用不同性能选项共同使用来减少迁移中网络和计算资源的负载——减少迁移所需要的时间和相关的任务数量。但是,这些性能选项是很精细的,因此在大型,动态的环境中会比较有效果;每日业务部署中需要很少VM迁移需求的环境使用性能选项并不会看到显著的差别。但可以先确定一个基准或者第一次平均的迁移时间,然后随着时间不同进行另一次客观的性能评估。
原文请参考:http://searchwindowsserver.techtarget.com/answer/How-can-I-optimize-Hyper-V-live-migrations
文章评论
学习了