虽然VMware和Microsoft Hyper-V都是目前比较流行的1类虚拟机监控程序,但是它们彼此之间并不兼容。VMware产品以VMDK格式创建虚拟磁盘,而Hyper-V则以VHD或VHDX格式创建虚磁盘。
有时您可能需要在它们之间进行转换,这也称为V2V迁移。举例来说,由于VMware支持更多操作系统,如Unix或macOS,所以您可能需要将Hyper-V转VMware以进行更多应用程序测试。但VMware的成本对小型企业组织来说确实是一个负担,因此您可能又需要将VMware转Hyper-V。
Hyper-V和VMware哪个好呢?这个只能说是各有各的优势,很难做出明确的结论,大家需要根据自身实际情况来判断哪个更加好,哪个更加适合自己。
如果您熟悉虚拟化行业,您可能知道VMware提供了一种用于Hyper-V转VMware的实用工具,即虚拟中心转换器(vCenter Converter)。类似地,Microsoft之前也提供了一个虚拟机转换器,可以将VMware转Hyper-V。
然而,MVMC自2017以来一直停用,由新的付费工具System Center Virtual Machine Manager(SCVMM)接替,vCenter Converter也发生了同样的情况。
2022年2月2日,VMware宣布vCenter Converter已从产品下载列表中完全删除,因为VMware Converter已经很长时间没有更新,并且存在一些潜在的安全问题。
这使得将Hyper-V转换为VMware的仅存官方工具不可用。据VMware称,他们可能会在未来推出新的替代产品。但是就像不推荐使用的Microsoft Virtual Machine Converter(MVMC)一样,免费VMware vCenter Converter Standalone的新替代品也可能是一种付费工具,发布时间表尚未确定。
那么就现在而言,在VMware和Hyper-V之间转换还有哪些可用的方法呢?
如果您以前下载过旧版本的vCenter Converter或MVMC,您可以继续使用它们来执行Hyper-V转VMware任务,反之亦然。如果没有,则需要从其他站点下载,或尝试基于文件的备份解决方案,创建Hyper-V上全部内容的备份映像,然后将其还原到VMware即可,反之亦然,就像物理计算机一样。
在上文中我们提到过VMware官方曾经提供过一个免费的工具,可以帮助我们轻松完成Hyper-V转VMware任务,让我们一起来看看该怎么操作吧!
步骤1. 打开“VMware虚拟中心转换器”,然后单击左上角工具栏中的“转换计算机”按钮。
步骤2. 在“源系统”页面上,选择源类型作为“关机”选项,从下面的下拉菜单中选择Hyper-V Server,指定服务器连接信息,然后单击“下一步”。
步骤3. 在“源计算机”页面上,选择要转换的Hyper-V虚拟机,单击“下一步”继续。
步骤4. 如果您想要转换为VMware ESXi,则请在“目标系统”页面上,选择VMware Infrastructure虚拟机作为目标类型,并提供ESXi或vCenter Server IP地址、用户名和密码,然后单击“下一步”。
步骤5. 在“目标虚拟机”页面上,提供新虚拟机的名称,然后单击“下一步”。
步骤6. 在“目标位置”页面上,选择ESXi主机、数据存储和虚拟机版本单击,然后单击“下一步”。
注意:如果您想要转换为VMware Workstation、Fusion或Player,则请在“目标系统”页面上,选择VMware Workstation或其他VMware虚拟机作为目标类型,然后在下拉菜单中选择VMware product。提供名称并选择虚拟机的位置(您可以选择本地文件夹或网络共享,其中包含连接到目标虚拟机的网络共享时要使用的用户名和密码),然后单击“下一步”即可。
步骤7. 在“选项”页面上,浏览当前设置,并可以选择编辑转换任务的参数,然后单击“下一步”。
步骤8. 在“摘要”页面上,查看信息并单击“完成”以开始Hyper-V到VMware的转换任务,您可以在“近期任务”界面中查看进度。
VMware官方的旧版虚拟机转换工具已经停止更新无法通过官方渠道下载,新版的转换工具发布时间又尚未明确。
如果此时您正在寻找一种有效的替代方法,建议您当前尝试使用基于文件的备份方法来备份Hyper-V虚拟机上的全部内容并将其还原到VMware,就像在物理计算机上进行备份和还原一样。
考虑到大家因为各种情况,在将来可能需要将VMware转Hyper-V。所以在下一部分中,我们将向大家分享两个VMware到Hyper-V的转换方法。
在本节内容中,我们将介绍两种将VMware转换为Hyper-V的可行方案,因为Microsoft不推荐使用Microsoft Virtual Machine Converter(MVMC),所以如果您以前下载过MVMC,并且它仍然可用,则可以参考前一种方法。如果没有,您可能需要在其他网站上下载,或者参考后一种方法。
在开始操作之前,请您先关闭目标虚拟机的电源并卸载VMware工具,然后按照以下方法执行VMware转Hyper-V任务。
步骤1. 打开微软虚拟机转换器(MVMC),选择“计算机类型”>“虚拟机转换”,然后单击“下一步”。
步骤2. 在“迁移目标”页面上,选择“迁移到Hyper-V”,然后单击“下一步”。
步骤3. 在“Hyper-V主机”页面上,在地址中输入IP地址、计算机名或完全限定的域名,以指定Hyper-V主机作为新虚拟机的目标。选中使用我的Windows用户帐户选项,或提供其他用户名和密码,单击“下一步”继续。
步骤4. 在“磁盘”页面,单击“浏览…”以指定存储转换后的虚拟磁盘的路径。选择要用于转换的磁盘的虚拟硬盘类型为“固定大小”或“动态扩展”。选择虚拟硬盘的格式,以便将转换后的磁盘用作VHD或VHDX,然后单击“下一步”。
步骤5. 在“源”页面上,指定连接到vCenter服务器、ESX服务器或ESXi服务器的地址、用户名和密码,单击“下一步”。
步骤6. 在“虚拟机”页面上,从列表中选择要转换的虚拟机,然后单击“下一步”。
步骤7. 在“连接”页面上,选择源和目标虚拟机的最终状态为On或Off,然后单击“下一步”。
注意:如果原始虚拟机已通电,安装了受支持的Linux版本,并且正在运行VMware工具,则需要提供信息以连接到虚拟机,以便卸载VMware工具。如果以前卸载了VMware工具,则无需提供。
步骤8. 在“工作区”页面上,单击“浏览…”以指定用于在转换过程中存储临时文件的文件夹,然后单击“下一步”。
步骤9. 在“摘要”页面上,查看指定的所有配置信息,然后单击“完成”开始将VMware转Hyper-V。
步骤10. 您可以在“完成”页面上查看进度。完成后单击关闭,并记住在Hyper-V上重新配置新虚拟机。
注意:如果您没有MVMC,可以选择Microsoft的付费工具System Center Virtual Machine Manager(SCVMM)或其他第三方工具。
步骤1. 将VMware ESXi或工作站上的目标虚拟机导出到OVF模板。通常会生成3个文件,清单文件以.mf结尾,OVF文件提供完整的虚拟机规范,虚拟磁盘文件以.vmdk结尾。我们需要的是导出的vmdk文件。
步骤2. 启动PowerShell并执行以下命令以导入MVMC模块:
Import-Module “filepath\Microsoft Virtual Machine Converter\MvmcCmdlet.psd1”
注意:其中的filepath指的是存储MVMC文件夹的路径,您需要手动输入。
步骤3. 执行以下命令以将导出的VMDK文件转换为VHDX文件:
ConvertTo-MvmcVirtualHardDisk -SourceLiteralPath “filepath\filename.vmdk” -VhdType DynamicHardDisk -VhdFormat vhdx -DestinationLiteralPath “newfilepath\newfilename.vhdx”
步骤4. 现在您可以检查指定文件夹中转换的磁盘,并使用它创建新的Hyper-V虚拟机,从而完成VMware转Hyper-V任务。
注意:Hyper-V虚拟机有两代,当前没有映像级别的方法将Hyper-V从1代转换为2代,但是您仍然可以尝试基于文件的备份来进行转换。