Migration vers Proxmox
Pour migrer des VM vers proxmox, il y a deux possibilités :
- Utiliser la restauration d'un logiciel de backup externe (par exemple Veeam)
- Utiliser l'import de Proxmox
Dans tous les cas, il faudra s'assurer que les drivers iSCSI soient bien installés et fonctionnels.
Windows
Méthode pré-migration
Pour Windows, la méthode est très simple. Il faut avant d'éteindre la VM sur l'ancien système, installer les drivers VirtIO. L'équipe de Fedora propose un CD avec tous les drivers précompilés pour une large gamme de Windows allant de Windows 2000 au dernier Windows : https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/latest-virtio/virtio-win.iso.
Pour les éditions de Windows 10 (et Windows Server 2019) et supérieur, l'exécutable à la racine du CD fonctionnera et installera tous les drivers. Pour les OS plus anciens, il faudra installer manuellement à partir des différents dossiers de drivers qui sont présents dans le CD.
Pour que le Windows démarre, il faut impérativement avoir au moins le driver block storage (scsi). Il peut aussi être intéressant d'y ajouter le driver réseau et le driver de gestion dynamique de la mémoire.
Méthode post-migration
Si pour une raison quelconque vous n'avez pas pu installer le driver scsi avant la migration et vous vous retrouvez avec une VM qui ne démarre pas. Rien n'est perdu. Vous pouvez passer en réparation de Windows. En théorie, n'ayant pas pu démarrer le système passera tout seul en réparation. Montez l'image du disque avec les drivers sur la VM.
En imaginant que le CD est monté sur le lecteur D et le système en lecteur E, la commande DISM pour installer un driver ressemblera à :
drvload D:\vioscsi\2k11\amd64\vioscsi.inf dism /Image:E:\ /Add-Driver /Driver:D:\vioscsi\2k11\amd64\vioscsi.inf
Redémarrez la machine, elle démarrera correctement.
Linux
Sur linux, les drivers sont fournis à partir de la version 2.6. Ils sont généralement sous la forme d'un module noyau. Généralement les différentes distributions linux utilise des outils pour ne pas intégrer tous les modules afin d'avoir un noyau plus léger. Cet outil dépend de la famille de linux utilisé.
Méthode pré-migration (famille RedHat)
Pour la famille redhat, cette image de démarrage est créé par dracut. Pour ajouter les drivers dans l'image créé par Dracut, il faut modifier le fichier /etc/dracut.conf
ou ajouter un fichier dans /etc/dracut.conf.d/
et modifier ou ajouter la ligne suivante :
- 10-virtio.conf
add_drivers+=" virtio_scsi virtio_net virtio_balloon "
virtio virtio_ring virtio_pci
peuvent potentiellement être ajoutés mais non présent sur tous les systèmes.
Pour lancer la construction d'une nouvelle image de démarrage :
dracut -f -v --regenerate-all
Vous pouvez aussi installer les guest tools :
yum install qemu-guest-agent
Méthode pré-migration (famille Debian)
Pour la famille Debian, l'image de démarrage est créé par initramfs-tools. Cet outil est installé par défaut.
Ajouter les lignes suivantes au fichier /etc/initramfs-tools/modules
:
virtio virtio_ring virtio_pci virtio_scsi virtio_net virtio_balloon
Lancez la reconstruction de l'image de démarrage via :
update-initramfs -k all -u
Vous pouvez aussi installer les guest tools :
apt install qemu-guest-agent
Méthode hors-ligne
Vous pouvez démarrer votre linux depuis un live CD. Rentrez dans le système avec un chroot et montez bien tous les lecteurs. Lancez ensuite directement la commande pour refaire l'image de démarrage. En théorie, comme vous serez déjà sur proxmox, il intègrera directement les modules nécessaires pour gérer le disque.