Transfer Virtual Machines from VMware ESXi to Proxmox
Migrate virtual machines from VMware ESXI to Proxmox using ovftool.
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.
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