跳转到内容

导入虚拟机:ESXi 导入向导、OVA/OVF 与导入磁盘 ​

手动搬一台虚拟机通常是导出磁盘、转格式、新建虚拟机、一项项对配置,很容易漏东西。PVE 8.2 起自带的导入向导,以及 qm importovf 命令,能把这个过程简化成"选中源虚拟机,点 Import"。

为什么需要它 ​

批量从 ESXi 或者其他基于 OVA/OVF 标准导出的平台搬虚拟机时,手动搬一台两台还行,十几台就很容易出错(漏了某块盘、CPU 类型没适配、磁盘格式转换失败)。导入向导直接连到源 ESXi 主机,列出虚拟机清单,按项导入并生成对应配置,省掉中间的手动转换步骤。

开始之前 ​

  • PVE 需要 8.0 或以上版本,且系统更新到最新(这是导入功能本身持续修 Bug 的领域)。
  • 有 ESXi 主机的管理员账号,以及 PVE 到 ESXi 之间稳定的网络。
  • 官方测试覆盖的范围是 ESXi 6.5 到 8.0,其他版本按经验可能也能用,但没有官方保证。
  • 目标存储、目标网桥提前规划好。

导入过程会中断源虚拟机

导入向导支持"实时导入 (Live Import)":数据在后台复制的同时虚拟机就能先在 PVE 这边启动,缩短停机时间。但源虚拟机在导入开始前仍然需要关机,实时导入缩短的是"复制完成前不能用"的时间,不是"完全不用关机"。

影响范围:导入期间源虚拟机处于关机状态,直到你确认新虚拟机可用并决定弃用源虚拟机。

前置条件:确认应用/服务能承受一次计划内停机,选好维护窗口;网络不稳定或带宽低时不要用实时导入(失败会导致导入期间新虚拟机上写入的数据丢失,需要重新导入)。

怎么回退:整个过程中源虚拟机的磁盘不会被导入向导修改。导入失败或者验证下来新虚拟机不对,直接删掉 PVE 这边新建出来的虚拟机,把源虚拟机重新开机即可,不影响原始数据。

操作步骤 ​

方式一:ESXi 导入向导(连到还活着的 ESXi 主机) ​

第一步:添加 ESXi 作为导入源

数据中心 → Storage → Add → ESXi,填 ESXi 主机地址和管理员账号。ESXi 用自签证书的话,要么把证书加入信任,要么勾选 Skip Certificate Verification。

直连 ESXi,不要走 vCenter

官方文档明确提到通过 vCenter 导入会"显著降低性能"。能直连 ESXi 主机就直连。

第二步:浏览可导入的虚拟机

在左侧资源树选中刚添加的这个 ESXi 存储,右侧会列出这台 ESXi 上的虚拟机清单。

第三步:选中虚拟机,点 Import

至少需要选:目标存储(放磁盘)、目标网桥(接网络)。Advanced 标签页可以逐项调整:

  • 给不同的磁盘分别指定存储;
  • 有多块网卡时分别指定型号和网桥;
  • 给光驱换成 PVE 这边的 ISO;
  • 跳过不需要的磁盘、光驱或网卡。

Resulting Config 标签页会显示最终会生成的完整配置,导入前可以核对一遍。

第四步:导入后必做的调整

导入向导不会自动把源系统的驱动和固件换成 PVE 推荐配置,这几项要手动检查:

项目建议
磁盘总线换成 SCSI + VirtIO SCSI single(Windows 客户机通常要先用 IDE/SATA 启动一次,装好 VirtIO 驱动再切,见 VirtIO 驱动与 QEMU Guest Agent)
网卡检查型号和网桥是否正确,网络参数(IP、网关)通常不会跟着搬过来,需要进客户机手动确认
CPU 类型按CPU 类型重新选择,不要保留源平台的设置
固件Legacy BIOS 客户机用 SeaBIOS,UEFI 客户机用 OVMF,选错会导致启动失败

方式二:OVA / OVF 文件导入(源主机不在了,或者只有导出文件) ​

已经有一份 .ovf + .vmdk(或者打包成一个 .ova)的导出文件:

sh
# 在宿主机 shell 执行
# OVA 本质是一个 tar 包,先解开
tar xf exported-vm.ova

# 导入:<vmid> <ovf文件路径> <目标存储>
qm importovf 105 ./exported-vm.ovf local-lvm --format qcow2

--format 可选 raw、qcow2、vmdk(仅文件级存储支持后两种)。虚拟机的名称、CPU 核数、内存会从 OVF 描述文件里读出来,磁盘会一并导入并按需转换格式。

Web UI 也有对应的导入入口:把 OVA/OVF 上传到一个开了 Import 内容类型的存储,再从该存储的界面发起导入。

导入完成后,同样要走一遍上面「导入后必做的调整」表格。

检查结果 ​

  1. qm config <vmid> 核对生成的配置是否符合预期(磁盘总线、网卡型号、CPU 类型)。
  2. 开机,确认能进入系统。Windows 客户机如果黑屏或蓝屏,先按 Legacy BIOS / UEFI 是否匹配源系统检查。
  3. 网络能通、能拿到正确的 IP。
  4. 装好 guest agent 后,虚拟机 → Summary 能看到 IP,说明搬迁基本成功,见 VirtIO 驱动与 QEMU Guest Agent。
  5. 确认应用层数据完整(数据库能起来、文件都在),这一步不能省。

常见问题 ​

导入报错,提示磁盘在 vSAN 上。 导入向导不支持直接导入 vSAN 存储上的磁盘,需要先在 ESXi 那边把磁盘移动到其他数据存储。

数据存储名字里带 + 号导致导入失败。 尝试把 ESXi 那边的数据存储改个不带特殊字符的名字。

同时导入好几台虚拟机时大量报 503 错误。 ESXi 的 API 并发连接数有限,官方建议同时导入的数量控制在 4 台左右;超限会被限流约 30 秒。

虚拟机原来用了 vTPM/全盘加密。 vTPM 状态不会跟着导入过来。如果客户机的全盘加密密钥存在 vTPM 里,导入前考虑先关掉全盘加密,或者确保手头有独立保存的恢复密钥。

导入完成后网络不通。 网络参数(尤其是静态 IP、网关)通常需要进客户机手动重新配置,导入向导只负责接好网卡和网桥。

参考资料 ​

延伸阅读 ​

Proxmox VE 非官方中文使用指南,与 Proxmox Server Solutions GmbH 无隶属关系。