Migrar a Proxmox desde VMware
Llevo desde 2013 como VMware vExpert, y si algo he aprendido en más de una década "trasteando" con hipervisores es que ningún cambio de plataforma es tan limpio como promete la documentación oficial. Cuando Broadcom decidió cargarse las licencias gratuitas de ESXi, no fui de los que salieron corriendo a instalar Proxmox al día siguiente. Esperé, leí foros, vi cómo le iba a la gente que ya había dado el salto, y sobre todo, probé la migración en un entorno de pruebas antes de tocar nada en producción. Es lo que recomiendo siempre, y lo digo con la boca pequeña porque sé que casi nadie lo hace.
El importador gráfico que trae desde Proxmox VE 8.2 funciona, sí, pero solo si tienes vCenter o host ESXi. De hecho, no es más complicado que pulsar en tu Datacenter -> Storage -> Add -> ESXi. Eliges el fichero VMX de la máquina virtual y comienza el proceso de importación :

Si tu entorno es más humilde, un par de hosts ESXi sueltos o máquinas virtuales con ficheros VMDK "sueltos" de algún cliente, sin capa de gestión centralizada, como me pasa a mí en el laboratorio de casa, esa vía no existe. Ahí es donde entra la migración por comandos, más manual, algo más lenta, pero con control total sobre cada paso y, sobre todo, sin sorpresas de última hora.
En esta guía voy a contaros como podéis lograr una migración de ficheros VMDK sin errores o incidencias graves.
Preparar máquina VMware para la importación a Proxmox
Si tenéis la posibilidad de entrar en la máquina virtual, ya sea desde el host ESXi donde reside o abriéndola desde un VMware Workstation, que aún es posible descargar gratuitamente, es interesante instalar previamente a la migración las "VMware Tools" para Proxmox (drivers VirtIO).
En una máquina virtual Linux, por ejemplo, el kernel ya trae los módulos virtio de serie, y es muy probable que os podáis ahorrar este paso.
En cambio, si la máquina virtual es Windows, este paso es casi obligatorio para evitar quebraderos de cabeza. Lo primero que vas a hacer es instalar los drivers VirtIO antes de tocar nada más, porque si no, te vas a encontrar un precioso pantallazo azul en cuanto arranque en Proxmox. El disco duro que ve Windows en ESXi (LSI Logic o similar) no existe en el mundo KVM/VirtIO, y Windows puede darte problemas.
Pasos necesarios:
- Descarga el ISO de virtio-win

- Móntalo en la máquina virtual
- Instala los drivers de red y de almacenamiento (aunque de momento no los use)
- Y apaga la máquina para poder importarla
En esta guía para Windows Server 2025 ya os explicamos como se realizaba.
Consolidar Snapshots
Otro paso importante, que muchos técnicos no tienen en cuenta, es que si la máquina virtual dispone de snapshots, deberemos consolidarlos, para evitar problemas.
Exportar máquina virtual a fichero VMDK
Con la máquina virtual preparada con las "VMware Tools" para Proxmox y sin Snapshots, deberemos extraer el fichero VMDK del host ESXi donde resida.
Para ello, podéis conectaros vía SSH al host y lanzar estos comandos, o usar la herramienta ovftool, por ejemplo. Os dejo la opción más rápida:
ssh root@TU-HOST-ESXi
vmkfstools -i /vmfs/volumes/datastore1/VM-A-EXPORTAR/VM-A-PROXMOX.vmdk -d thin /vmfs/volumes/datastore1/VM-A-EXPORTAR/VM-A-PROXMOX-export.vmdk
Con esto ya disponemos de una copia del VMDK de la máquina virtual que vamos a exportar a Proxmox VE.
Aseguraos que no existe más de un disco, sino el proceso habrá que realizarlo para cada disco:

Importar máquina virtual a Proxmox
Una vez tenemos el fichero exportado, ahora deberemos subirlo a un almacenamiento, si no lo está ya, que tenga acceso nuestro host Proxmox.
Si no tenéis claro cómo localizar el almacenamiento evitando la gestión gráfica, lanzar el siguiente comando, para saber donde se encuentran vuestros recursos de almacenamiento mapeados (en mi caso, en un NAS, carpeta /mnt/pve/ASUSTOR/import):
cat /etc/pve/storage.cfg

Por comodidad, podéis conectaros, por ejemplo, vía FileZilla o WinSCP al host Proxmox, y subir el fichero VMDK a un almacenamiento del host.

También podéis hacerlo directamente vía comando con SCP desde vuestro host Proxmox:
scp root@TU-HOST-ESXi:/vmfs/volumes/datastore1/VM-A-EXPORTAR/VM-A-PROXMOX-export.vmdk /var/lib/vz/images/

Con la máquina virtual apagada subimos el fichero VMDK de cualquiera de las formas que os he mostrado:

Crear máquina virtual vacía en Proxmox
Como estamos mostrando como subir un fichero VMDK a Proxmox, y no estamos usando el conector directamente, deberemos usar un paso intermedio. Crear una máquina virtual en Proxmox con las mismas características que la de origen, vacía sin discos, a la que enlazaremos el disco VMDK posteriormente.
Podéis hacerlo vía comando:
--- MAQUINA WINDOWSqm create 100 --name migrada-vm --memory 4096 --cores 2 \
--net0 virtio,bridge=vmbr0 --scsihw virtio-scsi-pci --ostype win10
--- MAQUINA LINUX
qm create 101 --name kalilinux --memory 4096 --cores 2 --sockets 1 \
--net0 virtio,bridge=vmbr0 --scsihw virtio-scsi-pci --ostype l26 --machine q35
Crearla con las mismas características que la original, o ajustarla a conveniencia si lo veis necesarios en recursos de RAM o CPU.


Podéis validar que el ID ("100" en mi caso, se ha generado sin disco asignado) desde uno de los host del clúster Proxmox con "qm list":

Importar y Convertir disco VMDK a QCOW2 en Proxmox
Lo primero que haremos, antes de realizar nada más, es una comprobación de los pasos dados hasta ahora. Disponemos de:
- VMDK exportado de la máquina original VMware.
- Una máquina virtual Proxmox con el mismo nombre creada y apagada, con los mismos recursos que la original, pero SIN DISCO DURO ("vacía").
- El disco VMDK de la máquina VMware subido a un almacenamiento de Proxmox.
¿Qué nos queda?
Importar y Convertir VMDK a QCow2
Nos movemos vía comando a la carpeta donde tenemos nuestro fichero VMDK. En mi caso, la carpeta de mi NAS (fichero "KALILINUX.vmdk"):
root@minis2:~# cd /mnt/pve/ASUSTOR/import/
root@minis2:/mnt/pve/ASUSTOR/import# ls
25.10.deb12.standard-1762188193.ova export-i-e93bcd8ceb7497c1t.mf KALILINUX.vmdk
export-i-e93bcd8ceb7497c1t-disk-1.vmdk export-i-e93bcd8ceb7497c1t.ovf
Si tenéis problemas para encontrar los ficheros VMDK copiados, lanzar este comando:
find / -type f -name "*.vmdk"

Usaremos el siguiente comando para convertir e importar el fichero VMDK a la máquina creada con ID "100":
root@minis2:/mnt/pve/ASUSTOR/import# qm importdisk 100 /mnt/pve/ASUSTOR/import/KALILINUX.vmdk ASUSTOR
El fichero irá cambiando de tamaño, en mi caso hasta los 100GB, en la conversión progresivamente hasta terminar:


Para enlazar el disco generará una carpeta con el ID de la máquina virtual (en mi ejemplo, "/mnt/pve/ASUSTOR/images/100"), que al estar vacía hasta ahora no existía, y dejará el fichero ahí:
![]()
Lo podéis ver también desde Filezilla u otro programa más visual:

Revisar nombre exacto del disco duro
Lanzamos "qm config 100". Como se puede ver, el disco se crea como "unused disk", que no está asignado a ningún BUS de disco:

Asignar como disco de arranque
Configuramos el nuevo disco para que sea el de arranque (si tenéis varios este paso no es necesario en los que no sean de sistema operativo):
qm set 100 --scsi0 ASUSTOR:100/vm-100-disk-0.rawqm set 100 --boot order=scsi0

Confirmar que el controlador SCSI es VirtIO
qm set 100 --scsihw virtio-scsi-pci
![]()
Revisamos nuevamente el estado del disco:

Arrancar máquina virtual
El último paso, es comprobar que la máquina virtual arranca sin incidencias:
qm start 100

Si todo es correcto tendremos una máquina virtual totalmente operativa:

La potencia de los comandos en Proxmox
Después de migrar unas cuantas máquinas virtuales con este método, mi conclusión es sencilla, el poder de los comandos es la base de la fuerza de cualquier sistema de virtualización.
Cada comando te dice exactamente qué está pasando, y cuando algo falla, sabes en qué paso mirar, en vez de darle vueltas a una barra de progreso que muchas veces cuenta bastante poco.
Dicho esto, no lo recomendaría para una migración masiva de veinte o treinta máquinas virtuales sin automatizarlo antes con un script que encadene estos mismos comandos. Ahí sí merece la pena invertir un rato en un script en bash, porque repetir esto a mano máquina a máquina es la forma más rápida de cometer un error tonto, como pisar un ID de máquina virtual que ya estaba en uso.
Si algo debes llevarte de este artículo es esto, consolida los snapshots antes de exportar, instala los drivers VirtIO antes de apagar la máquina origen, y decide el firmware (BIOS o UEFI) desde el primer comando, no a mitad de camino. Esos tres puntos son, en mi experiencia, el origen del 90% de los problemas que me he encontrado migrando de VMware a Proxmox. El resto es paciencia y una buena taza de café mientras se copia el disco.
Fin del Artículo. ¡Cuéntanos algo en los Comentarios!



