Skip to main content

Migrar de Máquina física a Proxmox

Pasos previos

Instalar el mergeide que se pude descargar de varias ubicaciones, o desde aquí MergeIDE.zip

Este archivo es un ejecutable bat que inserta unas claves de registro. Si no se ejecuta, podemos insertarlas a mano (vienen en el archivo ZIP) como podemos ver en la imagen inferior.

Captura de pantalla 2023-08-10 a las 9.49.30.png

Si no se instalan las claves de registro del mergeide, puede que también funcione, pero va a ser un poco más complicado (atención a lo de "puede que también funcione) porque a veces no

Generar imagen de la máquina física

Una vez instalado el Mergeide, procedemos a arrancar la máquina desde un sistema Linux desde CD o USB, recomendamos la utilidad GRML que se puede descargar de grml.org

Una vez que se ha arrancado la máquina, deberemos de tener un disco extraíble o una unidad de red a la que copiar nuestro archivo de imagen que generaremos con la utilidad ddrescue. El manual de esta utilidad lo podemos localizar aquí

Montamos la unidad de disco extraible o el NFS en el Linux o en el grml.

En nuestro ejemplo la vamos a llamar copia

mkdir /mnt/copia

Montamos el disco

mount /dev/sdb1 /mnt/copia

O bien si es un NTFS

mount -t ntfs /dev/sdb1 /mnt/copia

Ejecutaremos el comando ddrescue

ddrescue -d -f -r3 /dev/sda /mnt/copia/windows_2019.img rescue.log

Copiar el archivo img a un almacenamiento en red.

Convertir imagen de máquina física a Proxmox

Para esto existen dos formas

qemu-img convert

Ejecutar el convertidor de vmdk a qcow2 sobre el midisco.vmdk. Para ello, ambos ficheros vmdk deben de estar en la misma carpeta.

El comando para realizar esto es:

qemu-img convert -f raw midisco.raw -O qcow2 midisco.qcow2

Una vez ha terminado el proceso de conversión que será largo, creamos una máquina virtual nueva, con disco en formato IDE y almacenamiento en la unidad de red, ya que si la creamos en ceph o en lvm o cualquier sistema de archivos local, creará un fichero de bloques y no un fichero convencional.

Una vez creada la máquina, si el ID es por ejemplo 500, tendremos un archivo que se llamará 500.qcow2.

Ahora hacemos backup de este archivo (lo podemos llamar old500.qcow2) y renombramos el archivo midisco.qcow2 como 500.qcow2.

qm importdisk (la más cómoda)

Otra opción es crear la máquina virtual y desde línea de comando ejecutar:

qm importdisk <machine-number> windows_1029.img storage (lvm, nfs, etc)

NOTA IMPORTANTE Personalmente, una vez creada la máquina y para seguir el orden (vmxxx-disk0, vmxxx-disk1) es aconsejable borrar el disco de la máquina recién creada y que el proceso de importación del disco cree el disco con el ID 0

machine-number es el número de la máquina creada, y storage es el nombre del almacenamiento donde la vamos a almacenar.

Esto nos creará un disco sin asignar en la máquina, que asignaremos con el interfaz SATA como interfaz de disco.

Cambiaremos el orden de arranque para que haga el arranque desde el disco SATA recién asignado

Arrancamos la máquina, si todo va bien, arrancará el sistema operativo. Si no es así. Podemos hacer un truco, que es quitar el disco de la máquina virtual, y después agregarle de nuevo el disco que aparecerá como unused (doble click en unused disk)

Si arranca la máquina, ahora le instalamos los drivers del virtio que los puedes descargar de aquí.

Si no tienes ningún dispositivo virtio (red, etc), para poner el disco en virtio (que es más mejor), lo que hacemos es crearnos un disco de por ejemplo 5 Gb con virtio y asignarlo a la máquina.

Cuando arranque, nos pedirá los drivers del virtio para el disco, se los instalamos, y cuando arranque la próxima vez, si reconoce el disco, apagamos, quitamos el disco IDE o SATA, luego añadimos el disco de arranque que acabamos de desconectar y le decimos que es virtio (doble click en unused disk) y luego, muy importante, vamos a opciones y cambiamos el orden de arranque para que arranque del virtio en lugar del disco IDE (si no haces esto, te llevas un susto que para que….)

Y ya debería todo de funcionar correctamente.

Enlace al vídeo en youtube

Por último os pasamos un enlace a un vídeo en YouTube, donde se explica el proceso