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.
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