我们已经谈论了准备步骤,以确保迁移成功,还有操作迁移向导的过程。在这一系列的中,我们将继续讨论一些在迁移以后的工作,并给出故障排除的方法和解决失败迁移的思路。
无论你多么小心地为迁移做准备工作,迁移有时还是会失败。失败就可能发生在迁移过程中的不同阶段;具体哪个阶段是基于任务栏百分比估计值出来的。
- 建立目标虚拟机(VM) (0%-5%)
- 准备克隆磁盘(5%-6%)
- 克隆过程(6%-95%)
- 克隆工作结束以后(95%-97%)
- 定制或重新配置(97%-99%)
- 安装工具或启动(99%-100%)
虽然在任何迁移阶段都可能会失败,但如果要是失败的话,它通常会在97%处失败。在迁移过程中,Converter创建了一个详细的日志文件,此文件会包含确切的错误信息以及有关转换失败的原因。此日志文件被存放在你正在被迁移的服务器上,此服务器运行着Converter代理,通常日志被命名为vmware-converter-0.log,存放位置在C:\Windows\temp\vmware-temp目录下。打开该日志文件和滚动到文件底部,寻找失败信息。一旦这次迁移过程失败,Converter会将它自动创建的虚拟机删除。
确定哪个阶段会失败的一个线索是进度条如何快速地达到了97%。如果它迅速地跳跃到97%并且失败,这通常表明问题出在以下几个方面:网络端口、DNS解析或是需要的Windows服务没有运行。下面有几个步骤可以帮你试图解决这类问题。
- 如果你使用主机名称来选择你的VC/ESX目的服务器,请确保你可以在你的源服务器上解析到这些主机名称的IP地址。还有尝试使用服务器的FQDN(全称域名),而不是短域名。
- 在源服务器上,确保Workstation、Server,TCP/IP NetBIOS Helper和VMware Converter services这几个服务正在运行。在Windows XP和2003服务器上,确保Volume Shadow Copy service服务不是禁用状态,在默认情况下,应该是设置为手动状态。这项服务并不需要在转换过程中一直处于运行状态。
- 使用Telnet命令 ,看看你是否可以连接到在VC或ESX服务器上所需要的端口。从源服务器“Telnet 902”。你应该可以从VC / ESX服务器得到回应,在端口443上也要这样做。
- 尝试重新启动源服务器,对于Windows NT和2000服务器来说,这是一个必须的要求。
如果需要很长的一段时间才能达到97%,那么通常是在数据克隆或克隆后期过程中克隆失败。造成这种失败的一些可能的原因是,在服务器之间网络连接丢失了,网络错误和源服务器磁盘问题。下面有几个步骤可以帮你试图解决这类问题。
- 验证网络速度/双工设置,你的源服务器的网卡和被连接的物理交换机的端口是否符合。
- 如果你启用操作系统镜像,那么删除这个镜像。
- 清理你的Boot.ini文件,并确保它是正确的。
- 确保你使用的是最新版本的Converter。如果源服务器有动态磁盘旧版转换程序就会失败。
- 在源服务器上运行chkdsk,以验证文件系统的完整性。
- 确保在源服务器的系统盘上你有至少200 MB可用磁盘。
- 如果你的源服务器已有超过两个串口( COM )的端口,打开注册表,并寻找到HKLM\HARDWARE\DEVICEMAP\SERIALCOM子键 ,移除在串口端口2以上的任何端口。在做这个之前,你可以导出此键值,如果需要的话,转换完成后就可以重新导入。
最后,如果你的转换成功完成,但你的服务器无法启动(或者出现蓝屏) ,你可以尝试使用以下的步骤来进行修复。
- 在新创建的虚拟机上编辑Boot.ini,以确保磁盘的顺序是正确的。有时开机磁盘将不会被列为第一分区。要做到这一点,只需使用一个可用的虚拟机作为工作助手,将迁移后的磁盘以增加一个虚拟硬盘的方式添加到此台虚拟机上。这样就可以浏览到新创建的磁盘文件内容。然后,你就可以浏览该磁盘和编辑Boot.ini文件。完成后,从这台虚拟机删除此虚拟磁盘。另外,你也可以尝试再次运行Converter并选择“配置机器”,选择你新创建的虚拟机。通过向导程序,(当完成时)尝试再次启动它。
- 对于虚拟磁盘( BusLogic或LSI Logic)来说,确认你使用的是合适的SCSI控制器。
- 在安全模式下启动虚拟机,看看是否特定的服务器硬件或驱动程序已经被载入。
加强新虚拟机的服务器性能
当你的转换完成后,你应该做以下几个步骤,对你的新虚拟机进行清理,以便它有更好的性能。
- 编辑虚拟机的硬件。移除所有不必要的硬件,包括软盘驱动器和串行,并行和USB端口。你应该分配给VM的内存和它需求的一样多。如果可以就尽量减少它。当使用一个vCPU时,大多数的虚拟机会运行地更好,所以如果ESX主机服务器是一个SMP(对称多处理)的物理服务器,那么应该考虑减少虚拟CPU的数量。
- 启动VM,等待几分钟,让它发现所有的新硬件,然后重新启动它。
- 检查服务器的HAL ,如果它来自一个多CPU的物理服务器,但现在只有一个单一虚拟CPU的虚拟机,那么你需要打开设备管理器并编辑CPU (计算机)。选择更新驱动程序,不要选择通过Windows Update来更新,而是选择从列表中安装,选择Don't Search,并选择ACPI Uniprocessor取代ACPI Multiprocessor驱动。
- 移除任何硬件的特定应用程序和驱动。
- 最后,我要强调:删除所有目前不使用的硬件驱动。有些硬件设备已从系统中删除,但相应的驱动还没有被卸载,这是迁移后的遗留问题。那些不再是系统中存在的物理硬件的驱动程序,但Windows对待它们,就像它们存在一样,并将系统资源分配给它们。并且当你试图给新的网络适配器配置的IP地址与源服务器上的地址相同的时候,它们也会导致冲突。
这个问题的原因是,旧NIC仍然存在,这个IP地址被不存在的硬件占用着。迁移后会有大量的不存在的硬件设备的驱动被保留着。要删除所有的只需打开一个命令提示符CMD并键入SET DEVMGR_SHOW_NONPRESENT_DEVICES=1。然后在同样的命令窗口里输入Devmgmt.msc ,然后,当设备管理器窗口打开的时候,选择显示隐藏的设备。当你展开每个硬件类,你会看到大量的不存在的硬件的驱动,它们所显示出的图标为灰色。右键单击并选择卸载。当你删除它们后应马上重新启动。
阅读(2370) | 评论(0) | 转发(0) |