domingo, julio 20, 2025
InicioCiberseguridadCómo Migrar una Máquina Virtual desde VMware a Proxmox VE

Cómo Migrar una Máquina Virtual desde VMware a Proxmox VE

Con el auge del cambio de propietarios de VMware a Broadcom  muchas empresas han optado por la migración de máquinas virtuales desde VMware Workstation o ESXi a Proxmox VE es completamente viable y permite aprovechar la potencia del hipervisor KVM, existen varias maneras de realizar este proceso, pero en este artículo, veremos cómo realizarlo de manera manual. pero eficiente, básicamente es convertir un disco. vmdk a. qcow2, importar correctamente el disco en Proxmox y configurar la VM para que arranque sin problemas.

Pasos para la Migración

1. Convertir el disco .vmdk a .qcow2

Nota: Puedes verificar mi publicación acerca de la instalación y uso de qemu

En una máquina local con qemu-utils, podemos convertir el vmdk al archivo de disco compatible con promox, usando el siguiente comando:

La opción -p muestra el porcentaje de progreso.

El archivo vmdk, se observa en mi carpeta qemu, de la siguiente manera:

Si todo se ejecutó bien, veremos algo como esto:

2. Crear una nueva VM en Proxmox (vacía)

Desde la terminal de Proxmox:

Esto crea la estructura de la VM con ID 103, con la cantidad de memoria RAM, CORE e interfaz de red.

Debemos revisar nuestro ID verificando la cantidad de máquinas que tenemos instaladas, en mi caso y siguiendo la secuencia usé 103, se observa en la imagen a continuación:

3. Subir el archivo .qcow2 al servidor Proxmox

Como local-lvm es un almacenamiento tipo lvmthin y no acepta archivos directamente, subimos el archivo temporalmente a /tmp/:

De manera general:

lvmthin = Logical Volume Management Thin Provisioning

Es una tecnología de almacenamiento basada en LVM (Logical Volume Manager), que permite crear volúmenes lógicos de forma más eficiente y flexible, especialmente en entornos virtualizados.

Entonces en mi caso y por cuestiones de facilidad utilizo la herramienta WinSCP para pasar el archivo. qcow2 a la carpeta tmp de mi entorno virtual, se observa como en la imagen a continuación:

4. Importar el disco a local-lvm

Desde la shell del entorno virtual ahora importamos el disco, siguiendo la secuencia del ID, del número de máquina que creamos inicialmente:
Veremos algo como la imagen a continuación:

Esto creará un disco vm-101-disk-0 en el almacenamiento local-lvm, pero aún no estará conectado a la VM (aparecerá como unused0).

Hay algunos comandos útiles que nos pueden ayudar a verificar que todo se creó de forma correcta por ejemplo lvs, nos permite ver los discos creados con sus datos, se presenta en la imagen a continuación:

5. Asociar el disco a la VM

El siguiente paso sería asociar nuestro disco a la máquina virtual creada desde el shell de promox:

Ya vimos en la imagen anterior que nuestro disco virtual para esta máquina es vm-103-disk-0, la salida muestra lo siguiente:

También puede usarse sata0, ide0 o virtio0 si el sistema operativo lo soporta, para este caso usaremos scsi0

En general los casos de uso podemos representarlos en la siguiente tabla:

CasoRecomendación
Ubuntu moderno o Debian virtio0 o scsi0
Windows 10 o 11scsi0 (con VirtIO-SCSI controller) o virtio0 (con drivers)
Windows XP o sistemas antiguoside0
Compatibilidad general sin complicacionessata0

6. Corregir el orden de arranque

Antes de iniciar la maquina podemos verificar su configuración usando el siguiente comando:

Vemos que nuestra salida en el apartado boot, indica net0 significa que la VM está configurada para intentar arrancar desde la red (PXE boot) antes que desde cualquier disco local por lo que debemos indicarle que inicie desde el disco que importamos y asociamos anteriormente.

Para decirle a la máquina que inicie desde el disco, usamos el siguiente comando:

7. Iniciar o reiniciar la VM

Si la máquina no está iniciada podemos utilizar:

Recordar utilizar el ID, asociado a nuestra VM.

Si por alguna razón la máquina ya estaba iniciada, podemos probar con un reinicio:

Podemos verificar en la consola de la VM asociada desde el promox y veremos el proceso de inicio en la imagen a continuación muestra ya el inicio de sesión y nuestra VM está lista para empezar a utilizarse.

Para sistemas Windows es recomendable usar controladores sata a menos que instalemos los controladores virtio antes, a continuación los comandos para usar SATA:

8. Eliminar archivo temporal

Una vez que la VM arranca correctamente, podemos borrar el archivo .qcow2:

9. Recomendaciones Finales

  1. Verifica siempre el tipo de almacenamiento (dir, lvm, lvmthin, zfs) en /etc/pve/storage.cfg.

  2. Si el sistema operativo es Windows, considera instalar los drivers VirtIO.

  3. Si es Linux y el disco no arranca, prueba cambiar entre scsi0, sata0 o ide0.

10. Conclusiones

Si bien existen otras formas de realizar la migración de máquinas virtuales —como montar directamente una partición desde VMware en Proxmox, utilizar almacenamiento compartido tipo NAS, o herramientas como StarWind V2V Converter— este método me pareció práctico y efectivo para migrar máquinas virtuales pequeñas o críticas.

Cuando se trata de VMs de gran tamaño (por ejemplo, superiores a los 300 GB), el proceso puede volverse más lento o complejo, por lo que será necesario evaluar otras estrategias.

En futuras publicaciones estaré explorando otros enfoques de migración, pero espero que este artículo sea de utilidad para quienes estén comenzando o necesiten una solución sencilla y funcional.

Euribiel R Valdes
Euribiel R Valdes
Ingeniero en Electrónica y Telecomunicaciones con destacada experiencia en investigación, redes, sistemas basados en internet de las cosas y apasionado en el área de la ciberseguridad.
RELATED ARTICLES

DEJA UNA RESPUESTA

Por favor ingrese su comentario!
Por favor ingrese su nombre aquí

Blue Team

Red Team