使用vmware vconverter从物理机迁移系统到虚拟机P2V(多图)

zhuan:https://segmentfault.com/a/1190000002697929linux

 

本文完整记录了如何从物理服务器,保持全部环境配置信息,纹丝不动的迁移到虚拟机上,俗称 P2V 。采用的工具是VMware公司的 VMware vcenter vconverter standalone,它支持将windows和linux操做系统用做源,能够执行若干转换任务:数据库

  • 将正在运行的远程物理机和虚拟机做为虚拟机导入到vCenter Server管理的独立ESX/ESXi或ESX/ESXi主机
  • 将由VMware Workstation或Microsoft Hyper-V Server托管的虚拟机导入到vCenter Server管理的ESX/ESXi主机
  • 将第三方备份或磁盘映像导入到vCenterServer管理的ESX/ESXi主机中
  • 将旧版服务器迁移到新硬件,而不从新安装操做系统或应用程序软件等
  • 完整功能见《Converter Standalone 用户指南》

Converter Standalone的组件,只能安装在Windows操做系统上:segmentfault

  • Converter Standalone Server —— 启用并执行虚拟机的导入和导出
  • Converter Standalone agent —— Converter Standalone Server会在Windows物理机上安装代理,从而将这些物理机做为虚拟机导入,完成后能够选择自动删除
  • Converter Standalone client —— 与Converter服务端配合使用,包括看到的用户界面、建立和管理转换任务等
  • Vmware vCenter Converter引导CD:是单独的组件,可用于在物理机上执行冷克隆

冷克隆能够建立一致的源计算机的精确副本,而咱们更多的是进行热克隆,也就是源服务器在迁移过程当中会继续工做,这就可能会出现某些文件不一致,但Converter Standalone会在热克隆后将目标虚拟机与与主机同步,同步执行过程是将在初始克隆期间更改的块从源复制到目标。windows

本文记录的过程是,源主机是 SUSE 11.x 物理机,运行华为的智能呼叫中心应用,所以安装有Oracle数据库,对于数据文件和控制文件的一致性和安全性较高,因此建议先把oracle数据库关闭再操做;目标虚拟服务器是 ESXi 5.1,但我使用的Converter是 5.5-en,操做过程相似。下面正式开始安全

源主机:172.30.31.0/24
ESXi: 172.29.88.0/24,与源主机IP段没法通讯
Helper VM: 172.29.41.0/24,与上面两个IP段都通服务器

1. 设置源和目的主机地址

  • Source System
    选择你要转换的源系统,物理机为 Powered-on machine,填写其余登录信息:
    网络

  • Destination System
    填写要在哪一个主机上建立虚拟机,也就是ESXi服务器地址:
    oracle

这两个过程有个简短的拉去主机信息的过程。app

2. 选择目标虚拟机和存放位置

  • Destination Virtual Machine
    目标虚拟机名字默认是源hostname,不用选择folder:
    工具

  • Destination Location
    选择新虚拟机要放在ESXi的哪一个Datastore上,请确保有足够的磁盘空间,不能小于源系统实际使用的大小:

3. 为转换任务设置其它选项

这一步尤其关键,直接关乎后面转换的成败。

  • Data to copy
    设置目标虚拟机的磁盘和分区,咱们能够看到自动获取的源分区信息,我这里由于硬盘资源有限,没有遵循默认的 Maintain size,但比Minmun size(在源SUSE下 df -h 看到的used大小)大。

    CPU个数和内存大小默认也是与源主机保持一致。

  • Network
    网络设置这一块比较纠结。按理说源主机不须要与目的主机的网卡通讯,只须要与Helper VM能互通便可,但我一直卡在这走不过去。源主机有2块网卡在使用,最后在这一步只设置了一块能ping同源主机的网卡,迁移完成后再手动添加剂一块网卡。以下是vmware官方知识库的Note:

In the Conversion wizard, ensure to select the virtual machine portgroup when configuring the network card. This virtual machine portgroup must be connected to the physical network that is routable via port 22 (SSH) in both directions from the source Linux server's configured network IP address.
The IP address entered must be routable to the IP address of the physical Linux source machine. Helper virtual machine IP address should able to ping the physical machine.

图中看到VM Local是事先在vSphere Server上新建的端口组(portgroup),并且这个虚拟交换机vSwitch没有关联任何物理网卡:

  • Helper VM network
    Helper VM是作转换时的一个临时操做系统,运行在目的主机上,从源主机拷贝数据。若是转化的时windows,则没有这个vm,取而代之的时再源主机上运行一个agent,因此转换windows要求ESXi与源主机能互通,而转换Linux则只须要设定的Helper VM network能与源主机22端口互通便可。

4. 开始转换

能够看到转换的信息汇总,finish则开始迁移转换过程。


测试在ESXi上能够看到会自动建立一台虚拟机并启动。等待转换完成。

5. 问题

转换几回失败都是由于网络设置不当,转换到1%时报错:

Error:event.ObtainHelperVmIpFailedEvent.summary

解决办法就是手动设置HelperVm的IP,并确保可以与源主机通讯。若是继续报错,修改目标地址网卡设置,好比去除只剩一个网卡(后续添加),也设置成HelpVm网段。参考 Convert: converter.fault.HelperVmFailedToObtainIpFault

转换Windows Server 2003时还有可能会出现

Unable tp locate the required Sysprep files. Please upload them under 
c:\documents and settings\all users\application data\vmware\vmware vcenter converter standalone\sysprep\svr2003 on the converter server machine 

解决办法是,须要下载WindowsServer2003-KB926028-v2-x86-CHS.exe,在cmd下执行WindowsServer2003-KB926028-v2-x86-CHS –x(不能够用winrar),解压缩出来2个目录加一堆文件,在SP2QFE目录下找到deploy.cab,再将deploy.cab解压缩(winrar便可),获得10个文件,拷贝到所提示的 svr2003 目录。参考 Sysprep文件位置和版本 (2040984)

6. on windows

加入迁移的是windows主机,上面的操做略有不一样,主要区别在于没有HelperVm,而是在须要转换的源主机上安装agent。因此要求ESXi与源主机必须可以直接通讯才能够迁移。

相关文章
相关标签/搜索