通过vMotion迁移,虚拟机可以在整个迁移期间不间断服务。虚拟机的迁移以及通过vMotion迁移也成为“热迁移”,因为它们允许在不关闭虚拟机电源的情况下迁移虚拟机。整个虚拟机状况及其配置文件均会迁移至新主机中,而关联的虚拟磁盘仍然处于两台主机之间共享的存储器上的同一位置。在虚拟机状况迁移到备用主机之后,虚拟机即会在新主机上运行。

在通过vMotion迁移期间,所迁移的虚拟机必须位于源主机和目标主机均能访问的存储器上,并确保要运行的vMotion操作的主机都配置为使用共享存储。使用vMotion将虚拟机从一台物理服务器实时迁移到另一台物理服务器的过程是通过三项基础技术实现的,如图:

wKioL1Rt7yGAFiK3AAGOlvFUL9k563.jpg

虚拟机的整个状态由存储在共享服务器(如光纤通道或iSCSI存储区域网络(SAN),或网络连接存储(NAS)上的一组文件封装起来。VMware群集Virtual Machine File System(VMFS)允许安装多个ESX Server,以并行访问同一组虚拟机文件。

虚拟机的活动内存及精确的执行状态通过高速网络快速传输,因而允许虚拟机立即从在源ESX Server上运行切换到在目标ESX Server上运行。vMotion通过在位图中连续跟踪内存事物来确保用户觉察不到此传输期。一旦整个内存和系统状态已经复制到目标ESX Server,vMotion将中止源虚拟机的运行,将位图复制到目标ESX Server,并在目标ESX Server上恢复虚拟机的运行。整个过程在以太网上仅需要不到两秒钟的时间。

虚拟机使用的网络也被底层ESX Server虚拟化,确保即使在迁移之后,虚拟机的网络身份和网络连接也能保留下来。vMotion在此过程中管理虚拟MAC地址。一旦目标机被激活,vMotion就会ping网络路由器,以确保它知道虚拟MAC地址的新物理位置。因为用vMotion进行虚拟机迁移可保持精确的执行状态、网络身份和活动网络连接,其结果是实现了零停机时间而且不中断用户操作。

在迁移虚拟机前,一定要注意不能迁移源主机上带有物理CD驱动器支持的CD驱动器的虚拟机。若必须迁移这类虚拟机,则可在迁移虚拟机之前,断开这些设备。如果虚拟机具有USB直通设备,则不需要断开这些设备,可以直接通过vMotion进行迁移。

下面来看一个例子,如图。我们首先确定要迁移的虚拟机,即windows7,在迁移之前,它是运行在10.128.114.74的服务器上。我们要将它迁移至10.128.114.76服务器上。

wKioL1RvP2yAMzDhAAYjw-3Giws824.jpgWindows 7虚拟机是一台正在运行的虚拟机,并且VMware Tools在虚拟机上已经正确安装并激活,如图:

wKioL1RvP5OhWMetAAA-3KoVhDU578.jpg

具体迁移的步骤如下。

步骤1 右击要迁移的虚拟机,并在弹出的快捷菜单中选择“迁移”选项,如图:

wKiom1RvPyXyRcPOAAE3ckM4GCU310.jpg

步骤2 弹出迁移向导,要求选择迁移的类型,这里选择“更改主机”,将虚拟机移到另一台主机,如图:

wKioL1RvP6rTmEgCAAGyCCWOn6M943.jpg步骤3 选择目的服务器,此时会在下方显示“验证成功”,如图:

wKiom1RvP0WyJnT1AAHiKKD5BAg778.jpg步骤4 验证成功后系统会要求配置优先级,选择“高优先级”会让系统性能更出色,如图:

wKioL1RvQFDTYu1lAAIjdah30zg087.jpg步骤5 查看当前设置,如需修改可单击“上一步”按钮,若单击“完成”按钮则开始迁移,如图:

wKioL1RvQGPAlpLPAAHMEp6fFcQ179.jpg在迁移的过程中,我们使用虚拟机里的操作系统,实时ping网关,看看整个过程中是否有停机或是无法使用,如图:

wKioL1RvQHjiz99NAArHBQR1-5A592.jpg