Table of Contents
Migración V2V desde Proxmox a Hyper-V
Este documento describe el proceso paso a paso para migrar una máquina virtual desde Proxmox a un host Hyper-V utilizando el formato de disco .vhdx.
Requisitos
- Acceso a un servidor Proxmox.
- Espacio suficiente en disco para crear los archivos .qcow2 y .vhdx.
- Una unidad de red o recurso de almacenamiento compartido (opcional).
- Un host con Hyper-V.
- qemu-img instalado en el servidor Proxmox.
Pasos
1. Identificar la máquina virtual en Proxmox
Usa el siguiente comando para identificar el disco de la máquina virtual:
lsblk
Este comando te mostrará los dispositivos y volúmenes asociados a la VM. Debes identificar el volumen, que generalmente está bajo `/dev/<nombre_volume>/<vm-id>-disk-<número>`.
Por ejemplo:
sdb 8:16 0 3.6T 0 disk ├─WD_Red_4TB-vm--2106--disk--0 253:2 0 40G 0 lvm
2. Suspender la VM
Suspende la VM en Proxmox antes de realizar la conversión para evitar corrupción de datos:
qm suspend <vm-id>
3. Convertir el disco a formato qcow2
Usa `qemu-img` para convertir el disco crudo (raw) a formato `qcow2`. El siguiente comando asume que el volumen es LVM:
qemu-img convert -f raw /dev/<nombre_volume>/<vm-id>-disk-<número> -O qcow2 /ruta/destino/vm-<vm-id>-disk-0.qcow2
Si tu destino es una unidad local, como `/var/lib/vz`, puedes usar esa ruta para el archivo de salida.
4. Convertir a formato vhdx
Una vez creado el archivo `.qcow2`, conviértelo a `.vhdx` para que pueda ser usado en Hyper-V:
qemu-img convert -f qcow2 /ruta/destino/vm-<vm-id>-disk-0.qcow2 -O vhdx /mnt/pve/<share>/<vm-id>-disk-0.vhdx
Si la conexión de red es inestable, conviene hacer esta conversión primero en un disco local y luego transferir el archivo .vhdx al recurso compartido.
5. Importar el disco en Hyper-V
En el host Hyper-V:
- Crea una nueva VM. (usar generación 1 si da errores de que no encuentra el arranque EFI)
- Cuando te pida un disco, selecciona el archivo `.vhdx` que acabas de generar.
- Asegúrate de configurar las opciones de hardware según las especificaciones de la VM original (CPU, memoria, adaptadores de red).
6. Ajustar configuraciones de red en la VM
Al iniciar la VM en Hyper-V, puede que el nombre del adaptador de red haya cambiado. Verifica el nombre actual del adaptador con:
ip a
Modifica el archivo de configuración de netplan para que use el nuevo nombre del adaptador (por ejemplo, de `ens192` a `eth0`):
sudo nano /etc/netplan/00-installer-config.yaml
Asegúrate de que el archivo netplan refleje el nuevo nombre del adaptador:
network:
version: 2
ethernets:
eth0:
dhcp4: true
Guarda el archivo y aplica los cambios:
sudo netplan apply
7. Solución de problemas de arranque (opcional)
Si ves mensajes de error como “`Buffer I/O error on dev fd0`”, esto se debe a que el sistema intenta acceder a una disquetera que no existe. Para solucionarlo:
- Elimina o desactiva el dispositivo de disquete desde la configuración de la VM en Hyper-V.
- Revisa `/etc/fstab` y elimina cualquier referencia a `/dev/fd0`.
8. Ejecutar fsck (opcional)
Si la VM proviene de varias migraciones, es recomendable ejecutar un chequeo del sistema de archivos:
- Arranca la VM en modo recuperación o usa un Live CD.
- Ejecuta fsck sobre el disco correspondiente:
fsck /dev/sda1
