Transfer Virtual Machines from VMware ESXi to Proxmox

Migrate virtual machines from VMware ESXI to Proxmox using ovftool.

Transfer Virtual Machines from VMware ESXi to Proxmox
Proxmox Web UI

I recently decided to run Proxmox bare metal and nest ESXI for my VMware lab environment. This migration assumes both hypervisors are running at the same time. It won't matter if one is nested as a virtual machine in the other.

Migration steps - from ESXI to Proxmox


Add the OVFTool command-line utility to Proxmox:

Create a free VMware account, then download the .bundle for Linux 64:

https://customerconnect.vmware.com/downloads/get-download?downloadGroup=OVFTOOL450

Use Filezilla or similar to copy the ovftool .bundle to your Proxmox host /root directory.

Download FileZilla Client for Windows (64bit x86)
Download FileZilla Client 3.66.1 for Windows (64bit x86)

Install ovftool .bundle:

cd /root
chmod +x ./VMware-ovftool-*.bundle
./VMware-ovftool-*.bundle

Copy/Migrate Virtual Machines from ESXI to Proxmox using ovftool:

Create a temporary directory to store the migrated virtual machine files. This can be any mount point on the Proxmox host that has a good amount of free space. These files, after importing, can be removed and cleaned up. I removed each VM's files from the destination directory after each import.

cd /
mkdir /temp-storage

Enter the temp storage and use ovftool to migrate/copy the virtual machine files from ESXI to Proxmox. The '.' represents that these will copy to the current directory. root is the ESXI user in this case. ESXI-IP will be the IP address of your running ESXI host.

cd /temp-storage
ovftool vi://root@<ESXI-IP>/virtual-machine-name .

Import the .OVF into Proxmox:

qm importovf 102 /temp-storage/virtual-machine-name/virtual-machine-name.ovf vmstore

This will import the virtual machine files copied from ESXI to Proxmox into the Proxmox datastore.

Change the following:

'virtual-machine-name' to the name of the virtual machine you are migrating.

'102' to an available virtual machine number on your Proxmox host.

'vmstore' to the name of your Proxmox virtual machine storage


Cleanup the temporary storage:

Once virtual machines are imported, all remnant data in /temp-storage may be removed.

rm -rf /temp-storage