Migrating a ESXi VM to Proxmox VE
The following section contains information on how to migrate VMWare/ESXi VMs to a Proxmox Virtual Environment
Requirements
- A CIFS/SMB or any sort of Shared Storage to dump VM Exports.
- (Optionally) OVFTool → Download Link from VMWare’s Site
- A bit of patience (For Windows VMs)
- Access to the VM you will migrate, to remove drivers.
Generic Instructions
In VMware ESXi navigate to your virtual machine in the tree on the left. Choose Actions → Export
.
This will download disk images and information about your virtual machine in the .ovf
format in the browser. Move those files to a storage that is accessible by your Proxmox VE host.
Section Sourced directly from Proxmox Wiki.
OVFTool Instructions
If OVFTool is installed on your host, remove any attached disk or ISO from your VM and run:
ovftool vi://root@${ip_of_esxi}/${virtual_machine_name} .
This will export a VM directly to your current directory as an OVA Archive
.
You may replace the final dot in the command with any valid path,
such as /mnt/pve/<storage>
or /opt
.
Extracting an OVA Archive
Extracting an OVA Archive on Linux is simple, this command will extract it to your current directory.
tar xvf "${archive_name}.ova"
Windows VMs
To migrate a Windows VM from ESXi you’ll need to follow the next steps:
Boot in Normal Mode.
Uninstall any VMWare or ESXi drivers the VM might have.
Download the Mergeide registry edit file (https://pve.proxmox.com/wiki/File:Mergeide.zip) from the Proxmox Wiki to ensure IDE Storage Drivers are Enabled.
Re-check for any remaining Drivers or Services that may remain.
Export to OVF/VMDK to your CIFS/SMB Storage
Import from Proxmox with the following commands, first the metadata, then the disks:
qm importovf $vm_id $file_name $target_storage
qm importdisk $vm_id $file_name $target_storage
Add your unused disk to the VM.
Set the BIOS to UEFI
qm set $vm_id --bios ovmf
- Set the Disk Interface to SATA
sed -i 's/scsi0:/sata0:/' /etc/pve/qemu-server/$vm_id.conf
- Test Boot!
Linux Based VMs
With Linux VMs it’s much simpler to migrate them.
Remove any drivers you might have installed through the CLI
Export the VM to your SMB/CIFS Storage
Import from Proxmox with the following commands, first the metadata, then the disks:
qm importovf $vm_id $file_name $target_storage
qm importdisk $vm_id $file_name $target_storage
- Add your unused disk to the VM and Test boot
Done!