- Proxmox VE 目前提供了一个原生导入向导,可以大大简化从 ESXi 迁移的过程。
- 对于没有集中管理的环境,手动将 VMDK 磁盘转换为 qcow2 格式仍然是最可靠的方法。
- 预先安装 VirtIO 驱动程序对于避免启动失败至关重要,尤其是在 Windows 系统上。
如果您觉得 VMware 的许可流程令人头疼,或者只是想寻找一个更灵活的开源替代方案,那么 Proxmox VE 或许是您的理想之选。这个平台不仅功能强大,还集成了KVM(用于虚拟机)和 LXC(用于容器),让您可以通过非常直观的 Web 界面管理整个数据中心。然而,迁移现有工作负载并非易事,需要一些实践经验才能确保一切从一开始就顺利运行。
当我们谈到导入 VMDK 文件时,实际上是指将 VMware 虚拟硬盘迁移到一个能够更好地支持 QEMU 的 qcow2 格式的环境中。根据您使用的是带有 vCenter 的企业环境,还是更喜欢在家中使用独立的 ESXi 主机进行操作,您需要在官方向导的自动化流程和命令行手动流程之间做出选择。重要的是不要盲目操作,并且要做好源机器的准备工作,以避免在新环境中启动时出现可怕的蓝屏死机。
迈出这一步之前必须做好的准备

在迁移任何数据之前,必须确保源虚拟机完全干净。一个常见的错误是尝试迁移带有活动快照的虚拟机;理想情况下,您应该合并所有快照,以防止导入的磁盘变得碎片化。此外,检查虚拟机使用的是BIOS 还是 UEFI至关重要,因为如果您在 Proxmox 中配置的固件不一致,虚拟机将永远找不到引导扇区。
对于 Windows 用户来说,有一个几乎是神圣不可侵犯的步骤:在 VMware 虚拟机中关闭之前,必须先安装VirtIO 驱动程序。由于 VMware 的磁盘控制器在 KVM 环境中不存在,Windows 会出错并抛出严重错误。因此,请先挂载 VirtIO ISO 镜像,安装网络和存储驱动程序,然后再关闭虚拟机。在 Linux 系统上,这要简单得多,因为内核通常默认包含 VirtIO 模块。
快速入门:Proxmox 导入向导

从最新版本开始,Proxmox 通过pve-esxi-import-tools软件包简化了用户操作。该工具允许您直接从 Proxmox Web 界面连接 ESXi 主机,只需点击三下即可完成迁移。首先,您需要在“数据中心”>“存储”>“添加”>“ESXi”中添加存储,输入 VMware 服务器根凭据,如果您使用的是自签名证书,则可以跳过证书验证。
存储连接成功后,您将看到 VMware 虚拟机列表。选择其中一个虚拟机并点击“导入”按钮,系统将读取 VMX 文件,并在 Proxmox 中自动重建硬件配置(CPU、内存、网络)。您可以选择标准导入或“实时导入”,但后者并非真正的实时迁移;它只是在数据充足时启动虚拟机。向导会在后台自动将VMDK 文件转换为 qcow2 格式,从而节省您大量的命令行操作时间。
手动方法:通过 CLI 完全控制

如果您没有可通过网络访问的 ESXi 主机,或者希望完全掌控每个步骤,手动迁移是最佳选择。该过程首先使用SCP 或 SFTP将 VMDK 文件上传到 Proxmox 服务器。请务必记住,在 VMware 中,一个磁盘可以包含一个描述符文件 (.vmdk) 和一个实际数据文件 (-flat.vmdk);为了确保转换成功,这两个文件必须位于同一文件夹中。
为了将磁盘转换为原生格式,我们使用以下工具 qemu-img 转换典型的命令是 qemu-img convert -f vmdk original.vmdk -O qcow2 convertido.qcow2获得 qcow2 文件后,您必须创建一个 Proxmox 中的空虚拟机 功能与原版相同,但不分配任何硬盘空间。
要将转换后的磁盘链接到虚拟机,您有两种选择。更专业的方法是使用`qm importdisk`命令,该命令不仅会导入文件,还会将其直接放置到选定的存储介质(LVM、ZFS、NFS 等)上。之后,该磁盘将在 Web 界面的“硬件”选项卡中显示为“未使用”。只需双击该未使用的磁盘,将其分配给总线(最好是 VirtIO SCSI),然后在虚拟机设置中调整启动顺序即可。
最后调整和性能优化

虚拟机启动后,工作并未结束。为了确保虚拟机流畅运行,必须安装QEMU Guest Agent。这能让 Proxmox 与虚拟机系统更好地通信,从而简化诸如干净关机和创建一致性快照等操作。在 Windows 系统上,此时也应该将磁盘控制器从 IDE 或 SATA 切换到VirtIO SCSI,以获得最佳 I/O 性能。
如果发现网络无法正常工作,请检查网卡型号是否兼容。VirtIO型号速度最快,但如果系统最初无法识别,您可以先使用模拟网卡(例如 E1000),安装驱动程序后再切换到 VirtIO 型号。确认一切正常后,请务必从 Proxmox 存储中删除原始 VMDK 文件,以释放磁盘空间。
过渡期间的数据保护
迁移虚拟机是一项精细的操作,始终存在数据丢失的风险。因此,在开始迁移之前,务必先部署外部备份系统。Vinchin、Nakivo 或 Hornetsecurity 等解决方案可以帮助您创建不可篡改的备份,从而在迁移过程中保护您免受勒索软件攻击和人为错误的影响。遵循3-2-1 原则(三份副本,两种存储介质,一份异地备份)是切换虚拟机管理程序时确保万无一失的唯一方法。
从 VMware 迁移到 Proxmox 的过程已经从繁琐的手动流程发展到高效的自动化工具。无论是使用官方导入工具进行大规模部署,还是依赖 qemu-img 和 qm importdisk 处理特定情况,成功的关键都在于事先的准备工作:整合快照、安装 VirtIO 驱动程序以及确保固件兼容性。通过合理的规划和强大的安全措施,迁移到开源基础架构可以优化成本并重新获得对虚拟化环境的完全控制权。