本帖最后由 云杉上的蝴蝶 于 2010-11-23 06:55 编辑

为什么要在虚拟主机之间迁移虚拟机?
1.就算一开始规划得再好,在系统部署运行一段时间后,都会暴露出一些性能问题,为了更好的分布不同角色的虚拟机,改善虚拟主机的性能。平衡多台虚拟主机服务器的负载,或充分利用闲置的服务器资源,我们就需要进行虚拟机的迁移来进行性能优化。
2虚拟机的迁移,也是进行虚拟机备份的一种有效方法。

VMware的Workstation 7 中,集成了VMware Converter Standalone 的主要功能(虚拟机的导入和导出),可以将运行中的主机(物理机或虚拟机)转换为ESX/ESXi 虚拟机或Workstation 模式的虚拟机,也可以进行ESX/ESXi 服务器之间,或ESX/ESXi 服务器与Workstation中虚拟机的互相迁移。

虚拟机迁移后新虚拟机磁盘控制器类型的问题
但是Workstation 7 的虚拟机的导入和导出功能中缺少了一些VMware Converter Standalone 中所具有的目标服务器的定制选项,比如在进行P to V 迁移时,Converter 可以定制目标虚拟机的磁盘控制器类型,而Workstation 内置的虚拟机导入导出工具中无法进行这项定制,有看过我以前文章的朋友或有一定使用经验的朋友应该都知道,虚拟IDE磁盘控制器和虚拟SCSI/SAS磁盘控制器之间的性能差距还是比较明显的。

Workstation 默认的虚拟磁盘控制器是IDE类型的,如果ESXi上的原有Windows虚拟机的多个虚拟磁盘做了软件raid,导入Workstation 7 只会变成单块IDE的磁盘,并且用Workstation的话,通过添加一块SCSI 类型的虚拟磁盘做软件raid1,数据同步完成后移除IDE的系统盘,企图让系统从新的SCSI接口类型的虚拟磁盘引导的做法是不可实现的。

Windows Server 的软件raid 需要首先把磁盘改成动态磁盘,但是server 2003 或更老版本,在做系统盘的软件raid1时,无法正确更新Windows的引导配置文件,采用动态存储分配的虚拟磁盘,Windows 安装程序负带的磁盘分区格式化工具是无法正确识别到上面现有的逻辑卷容量的,所以企图在更换虚拟磁盘后使用修复安装来修复系统引导的方法也是行不通的。

而在ESX/ESXi 服务器上的虚拟机,进行类似的操作是可行的。所以如果不想造成不必要的磁盘性能的下降,如果原ESX/ESXi 上的虚拟机在迁移到Workstation 虚拟机前,最好是把系统盘的软件raid1 去掉,然后在配置目标虚拟机虚拟磁盘时,选择将原有的每个逻辑卷(分区)单独创建一个对应的独立的虚拟磁盘。

2.虚拟主机IP网段和虚拟服务器IP(比如ESXi 管理IP)网段必须一致
比如原有VMware Workstation 7 的一台虚拟机主机IP是192.168.10.100,网卡桥接到宿主Windows系统下物理网卡(地址是192.168.10.10),该宿主机还有另一块物理网卡,IP为192.168.3.10,在从此宿主机在向管理IP为192.168.3.200的ESXi 服务器迁移时,在源虚拟主机安装部署完迁移工具客户端程序后,会发生无法连续目标虚拟机的异常导致迁移任务失败。