Guides 11792 Published by

The guide explains how to pull a virtual machine out of an ESXi host, move the disk image into Proxmox VE, and tweak settings so it boots reliably. It starts with a quick checklist that covers OS support, backups, storage space, and network configuration before exporting the VMDK flat file and gathering the VM’s XML or vsrx file. After uploading the flat VMDK to the Proxmox node, users create a new VM ID, link the existing disk, adjust boot order and BIOS type, then reassign MAC addresses, install QEMU‑guest agents, and verify the bootloader works for Windows or Linux guests. Finally, the article lists common pitfalls such as driver conflicts from VMware Tools, differences between VMDK and QCOW2 formats, and thin‑provisioned disk quirks, concluding that once the machine boots you can enjoy Proxmox’s free open‑source stack.



Migrate Virtual Machine from VMware ESXi to Proxmox VE

You’ll learn how to pull a VM out of an ESXi host, get it into Proxmox, and tweak the guts so it boots up like a champ. No fluff, just the steps that actually work.

Why you should consider the move

Proxmox gives you free KVM + LXC, a slick web UI, and open‑source community support. If your ESXi license is running out of money or you’re tired of those 50‑$‑per‑month storage add‑ons, it’s worth swapping over.

Pre‑migration checklist
  • Confirm the VM runs on a supported OS (Windows, Linux, etc.).
  • Take a full backup in case something goes wrong.
  • Make sure you have at least 30 GB free on the Proxmox storage pool where you’ll land the disk image.
  • Note the VM’s network config; we’ll need to recreate it later.
Exporting from ESXi

1. Use vmkfstools or vSphere UI – export the VMDK as a flat file (no snapshot needed).

   vmkfstools -i /vmfs/volumes/datastore1/myvm.vmdk myvm-flat.vmdk

2. Package the config – grab the VM’s .xml or .vsrx from the datastore; it contains CPU, memory, and device list.

pulling a flat VMDK keeps the disk content intact, while exporting only the config would lose all the data.

Importing into Proxmox

1. Upload the flat VMDK to /var/lib/vz/template/qemu on your Proxmox node via SCP or the web UI.

2. Create a new VM ID (e.g., 100) and choose “Use existing disk” when prompted. Point it at the uploaded VMDK file.

3. Adjust the BIOS/boot order – if the VM boots from a CD‑ROM in ESXi, set Proxmox to use EFI or BIOS accordingly.

Proxmox expects its own naming conventions; mismatched IDs can cause conflicts later.

Post‑migration tweaks
  • Reattach network adapters. The MAC address the VM got on ESXi is likely invalid in Proxmox, so set a new one via the web UI or qm set 100 --net0 virtio=00:11:22:33:44:55.
  • Install QEMU‑guest agents for better resource tracking and graceful shutdowns.
  • Check bootloader compatibility. On Windows guests you might need to reinstall GRUB or the Microsoft boot manager.
Common gotchas
  • “I’ve seen this happen after a bad driver update…” – If you upgraded VMware Tools on the guest, the new drivers may clash with Proxmox’s virtio devices. Remove them first.
  • Disk format differences: VMDK vs QCOW2. Converting to QCOW2 is optional; sticking with raw VMDKs keeps the process simple.
  • Storage type: If you used thin‑provisioned disks in ESXi, copy them as-is; Proxmox can handle them but watch for space overruns.

That’s all there is to it: export, upload, configure, and tweak a couple of settings. Once the VM boots, you’re on your way to enjoying Proxmox’s open‑source freedom.