如何解決VMware Converter P2V遷移失敗問題

  无论你多么小心地为迁移做准备工作,迁移有时还是会失敗。失敗就可能发生在迁移过程中的不同阶段;具体哪个阶段是基于任务栏百分比估计值出来的。

  1. 建立目标虚拟机(VM) (0%-5%)
  2. 准备克隆磁盘(5%-6%)
  3. 克隆过程(6%-95%)
  4. 克隆工作结束以后(95%-97%)
  5. 定制或重新配置(97%-99%)
  6. 安装工具或启动(99%-100%)

  虽然在任何迁移阶段都可能会失敗,但如果要是失敗的话,它通常会在97%处失敗。在迁移过程中,Converter创建了一个详细的日志文件,此文件会包含确切的错误信息以及有关转换失敗的原因。此日志文件被存放在你正在被迁移的服务器上,此服务器运行着Converter代理,通常日志被命名为vmware-converter-0.log,存放位置在C:\Windows\temp\vmware-temp目录下。打开该日志文件和滚动到文件底部,寻找失敗信息。一旦这次迁移过程失敗,Converter会将它自动创建的虚拟机删除。

  确定哪个阶段会失敗的一个线索是进度条如何快速地达到了97%。如果它迅速地跳跃到97%并且失敗,这通常表明问题出在以下几个方面:网络端口、DNS解析或是需要的Windows服务没有运行。下面有几个步骤可以幫你试图解决这类问题。

  1. 如果你使用主机名称来选择你的VC/ESX目的服务器,请确保你可以在你的源服务器上解析到这些主机名称的IP地址。
  2. 在源服务器上,确保Workstation、Server,TCP/IP NetBIOS Helper和VMware Converter services这几个服务正在运行。在Windows XP和2003服务器上,确保Volume Shadow Copy service服务不是禁用状态,在默认情况下,应该是设置为手动状态。这项服务并不需要在转换过程中一直处于运行状态。
  3. 使用Telnet命令 ,看看你是否可以连接到在VC或ESX服务器上所需要的端口。从源服务器“Telnet 902”。你应该可以从VC / ESX服务器得到回应,在端口443上也要这样做。
  4. 尝试重新启动源服务器,对于Windows NT和2000服务器来说,这是一个必须的要求。

  如果需要很长的一段时间才能达到97%,那么通常是在数据克隆或克隆后期过程中克隆失敗。造成这种失敗的一些可能的原因是,在服务器之间网络连接丢失了,网络错误和源服务器磁盘问题。下面有几个步骤可以幫你试图解决这类问题。

  1. 验证网络速度/双工设置,你的源服务器的网卡和被连接的物理交换机的端口是否符合。
  2. 如果你启用操作系统镜像,那么删除这个镜像。
  3. 清理你的Boot.ini文件,并确保它是正确的。
  4. 确保你使用的是最新版本的Converter。如果源服务器有动态磁盘旧版转换程序就会失敗。
  5. 在源服务器上运行chkdsk,以验证文件系统的完整性。
  6. 确保在源服务器的系统盘上你有至少200 MB可用磁盘。
  7. 如果你的源服务器已有超过两个串口( COM )的端口,打开注册表,并寻找到HKLM\HARDWARE\DEVICEMAP\SERIALCOM子键 ,移除在串口端口2以上的任何端口。在做这个之前,你可以导出此键值,如果需要的话,转换完成后就可以重新导入。

  最后,如果你的转换成功完成,但你的服务器无法启动(或者出现蓝屏) ,你可以尝试使用以下的步骤来进行修复。

  1. 在新创建的虚拟机上编辑Boot.ini,以确保磁盘的顺序是正确的。有时开机磁盘将不会被列为第一分区。要做到这一点,只需使用一个可用的虚拟机作为工作助手,将迁移后的磁盘以增加一个虚拟硬盘的方式添加到此台虚拟机上。这样就可以浏览到新创建的磁盘文件内容。然后,你就可以浏览该磁盘和编辑Boot.ini文件。完成后,从这台虚拟机删除此虚拟磁盘。另外,你也可以尝试再次运行Converter并选择“配置机器”,选择你新创建的虚拟机。通过向导程序,(当完成时)尝试再次启动它。
  2. 对于虚拟磁盘( BusLogic或LSI Logic)来说,确认你使用的是合适的SCSI控制器。
  3. 在安全模式下启动虚拟机,看看是否特定的服务器硬件或驱动程序已经被载入。

  加强新虚拟机的服务器性能

  当你的转换完成后,你应该做以下几个步骤,对你的新虚拟机进行清理,以便它有更好的性能。

  1. 编辑虚拟机的硬件。移除所有不必要的硬件,包括软盘驱动器和串行,并行和USB端口。你应该分配给VM的内存和它需求的一样多。如果可以就尽量减少它。当使用一个vCPU时,大多数的虚拟机会运行地更好,所以如果ESX主机服务器是一个SMP(对称多处理)的物理服务器,那么应该考虑减少虚拟CPU的数量。
  2. 启动VM,等待几分钟,让它发现所有的新硬件,然后重新启动它。
  3. 检查服务器的HAL ,如果它来自一个多CPU的物理服务器,但现在只有一个单一虚拟CPU的虚拟机,那么你需要打开设备管理器并编辑CPU (计算机)。选择更新驱动程序,不要选择通过Windows Update来更新,而是选择从列表中安装,选择Don't Search,并选择ACPI Uniprocessor取代ACPI Multiprocessor驱动。
  4. 移除任何硬件的特定应用程序和驱动。
  5. 最后,我要强调:删除所有目前不使用的硬件驱动。有些硬件设备已从系统中删除,但相应的驱动还没有被卸载,这是迁移后的遗留问题。那些不再是系统中存在的物理硬件的驱动程序,但Windows对待它们,就像它们存在一样,并将系统资源分配给它们。并且当你试图给新的网络适配器配置的IP地址与源服务器上的地址相同的时候,它们也会导致冲突。

  这个问题的原因是,旧NIC仍然存在,这个IP地址被不存在的硬件占用着。迁移后会有大量的不存在的硬件设备的驱动被保留着。要删除所有的只需打开一个命令提示符CMD并键入SET DEVMGR_SHOW_NONPRESENT_DEVICES=1。然后在同样的命令窗口里输入Devmgmt.msc ,然后,当设备管理器窗口打开的时候,选择显示隐藏的设备。当你展开每个硬件类,你会看到大量的不存在的硬件的驱动,它们所显示出的图标为灰色。右键单击并选择卸载。当你删除它们后应马上重新启动。

  总结使用VMware Converter的这一系列文章。希望文章中的这些信息,将幫助你完成物理服务器到虚拟服务器的转换。

Database error: [Table 'ac_search_cache' is marked as crashed and should be repaired]

SELECT * FROM ac_search_cache WHERE hash = '0940b4206277af3689438a0b881f42a292f45754' LIMIT 1;