Windows Server 2012 R2和SMB 3.0加速动态迁移过程

将虚拟机从一台微软Hyper-V主机移动到另一台并不是惊天动地的消息,但是你做到了吗?微软Server 2012和2012 R2通过图形Hyper-V管理器就能轻易实现这个迁移过程。如果你像我一样想加速迁移过程--甚至自动化该过程--PowerShell可以帮助你。你还可以通过使用SMB 3.0文件共享来加速迁移过程。

将虚拟机从一台主机迁移到另一台主机的动机很多,从负载平衡到老主机退役。过去的一个挑战就是在漫长的迁移过程中遭遇停机,但以后再也不会出现了。动态迁移保障了整个虚拟机及其存储的迁移过程顺利进行。

微软动态迁移有三种方式:

无共享实时迁移--在这种迁移过程中,你将虚拟机及其存储从一台服务器迁移到另一台服务器。

动态存储迁移--虚拟机设置留在当前主机上,但是虚拟机的存储(虚拟硬盘)迁移到其他位置。

动态迁移--允许将虚拟机从一个集群节点在线迁移到另一个集群结点。

本文中,我将重点介绍无共享实时迁移,也是三种类型中最耗费时间的一种。虽然你可以使用System Center虚拟机管理器执行此类迁移,但我将通过Server 2012中的Hyper-V cmdlet实现。

Hyper-V cmdlet实现动态迁移 实验室准备

我喜欢在实验室环境中尝试新的想法和技术,在生产之前你也应该尝试一下。我的实验室环境由一个域控制器和两个Hyper-V主机(名为S1和S2)构成。S1上已经运行了一台虚拟机(名为Server1)。我的目标是在不影响客户正常活动下迁移虚拟机。

简单地说,无共享实时迁移是指将虚拟机及其存储顺利从一个Hyper-V主机迁移到另一个Hyper-V主机,不会产生停机时间。这是一个复杂的后台过程,但微软已经改进了方法使之变得相当简单。

我在客户端计算机使用PowerShell remoting或RSAT完成所有的管理。如果你的实验室环境中没有执行这些任务的客户端,可以使用运行虚拟机的Hyper-V主机。

检查VM状态

快速检查虚拟机状态以确保一切正常。检查当前Hyper-V主机的状态和存储位置:

Get-VM -Name server1 | Format-Table -Property Name, Path, State

PS C:> Get-VMHardDiskDrive -VMName Server1 | Format-Table -Property VMName, Path

启用和执行动态迁移

设置迁移的基本设置很简单。你需要启用迁移功能并选择一个移动网络。在生产环境中,最好有多个网络接口卡并且在独立网络中推动迁移进程。对于实验室测试来说,是可以使用现有的网络的,因为没有最终用户会受到影响。

为了启动虚拟机迁移,在两个Hyper-V服务器中输入下面的命令或在客户端使用PowerShell remoting.

PS C:> Enable-VMMigration

在两个Hyper-V主机上添加虚拟机迁移网络:

PS C:> Add-VMMigrationNetwork 192.168.3.0/24

将虚拟机及其存储迁移到另一个Hyper-V主机现在只是一个命令。我现在要将虚拟机移动到S2主机上并将存储放到"C:HyperV"这里。为了测试,我在迁移过程中ping到虚拟机看看通信情况。命令如下:

PS C:> Move-VM –Name Server1 -DestinationHost s2 -DestinationStoragePath c:HyperV

使用SMB 3.0共享执行迁移

如果你真的想加速移动过程,不管虚拟机是在单独的还是在集群中,你都可以使用新的SMB 3.0文件共享。我们之前有介绍过SMB 3.0包括很多功能,但最重要的是,它提升了性能。

首先在虚拟机存储的目标位置设置SMB 3.0共享和权限。你需要为管理员和两台主机创建共享权限,并将这些权限分配给NTFS.我在两台Hyper-V主机上都创建了,因此我可以来回移动虚拟机。

PS C:> New-SmbShare -Name Share1 -Path C:hyperv -FullAccess Companyadministrator, CompanyS1, CompanyS2

PS C:> Set-SmbPathAcl -ShareName Share1

使用SMB共享执行迁移的过程和之前相似:

PS C:> Move-VM –Name Server1 -DestinationHost s2 -DestinationStoragePath S2Share1

可能会遇到一些权限问题,尤其是从客户端执行时。你可以通过启用主机和客户端之间的委托约束解决。

使用动态迁移来移动虚拟机设置非常简单,而且如果了解PowerShell cmdlet的话会很容易自动化。另外可以考虑使用新的SMB 3.0共享提升你的迁移速度。

(0)

相关推荐

  • Windows Server 2012 R2 SMB PowerShell命令

    PowerShell 4.0是Windows 8.1和Windows Server 2012 R2众多管理功能改进中的一个。之前我们有介绍过《十佳PowerShell 4.0命令》。这里我们重点来看国 ...

  • 解析Windows Server 2012 R2 Hyper-V四大新功能

    Windows Serve 2012 R2 Hyper-V新功能:共享VHDX 根据我的分析,这项功能可能是新版本中最出色的组件。集群在虚拟机领域一直是个复杂的课题,而且很多Hyper-V用户都搞不清 ...

  • Windows Server 2012 R2 Hyper-V新功能

    微软Windows Server 2012 Hyper-V取得了长足的进展。在即将到来的Windows Server 2012 R2中,微软Hyper-V继续推动其虚拟化技术前进,给我们更多的惊喜。为 ...

  • Windows Server 2012 R2安装教程

    Windows Server 2012 R2的安装和Windows8.1比较类似,但是安装起来有一定的复杂度,下面我们来看一下Windows Server 2012 R2的详细安装过程. 操作方法 0 ...

  • 微软高层谈Windows Server 2012 R2

    微软上周公开展示的Windows服务器平台Windows Server 2012 R2引起了IT管理员们的兴趣。 微软服务器及系统中心项目管理部门企业副总裁Brad Anderson与SearchWi ...

  • 微软高层谈论Windows Server 2012 R2中BYOD管理

    在与TechTarget的对话中,微软高层Brad Anderson讨论了Windows Server 2012 R2的新功能,包括企业移动性、安全、以及与苹果iOS与安卓设备跨平台的集成。 Wind ...

  • Windows Server 2012 R2强化存储和网络功能

    即将推出的Windows Server 2012 R2版本专注于在存储及网络方面为用户带来先进功能,其效果之出色甚至足以肩负起过去需要由额外付费软件甚至是存储系统才能完成的任务。 “我们将网络与存储视 ...

  • 可以安装Windows Server 2012 R2到个人计算机吗

    可以安装,不过全新安装需要删除以前的操作系统. 另外,要注意的是,升级表示在相同的硬件上将现有操作系统过渡到 Windows Server 2012 R2. 可以从 Windows Server 20 ...

  • Windows Server 2012 R2 的系统要求和安装信息是什么?

    本主题提供安装 Windows Server® 2012 R2 时所需的信息. 根据你着手的操作系统以及采用的途径的不同,过渡到 Windows Server 2012 R2 的过程可能会有很大的不同 ...