1. Créer et installer la VM en mode HVM
- Créer une VM depuis le template "Other install media". Le nom de la VM ne doit pas contenir d’espace.
- attacher l’ISO d’Ubuntu 11.10 au lecteur DVD de la VM
- démarrer la VM
- à l’étape de partitionnement du disque, prendre soin de formater en Ext3 et non Ext4, car ’pygrub’, l’amorceur de XenServer en mode PV, n’est pas capable de lire Ext4. Si vous souhaitez conserver les avantages d’Ext4, alors vous devez créer une partition /boot (en Ext3) séparée de / (en Ext4)
- terminer l’installation et redémarrer la VM
2. Préparer la VM à la transformation
- se connecter via la console de XenCenter et installer un serveur ssh
sudo apt-get install openssh-server - créer une nouvelle console pour Xen et remplacer tous les ’tty1’ par des ’hvc0’
sudo cp /etc/init/tty1.conf /etc/init/hvc0.confsudo vi /etc/init/hvc0.conf - identifier l’entrée par défaut dans grub2 et la recopier.
cat /boot/grub/grub.cfg[...]menuentry 'Ubuntu, avec Linux 3.0.0-12-generic' --class ubuntu --class gnu-linux --class gnu --class os {recordfailset gfxpayload=$linux_gfx_modeinsmod gzioinsmod part_msdosinsmod ext2set root='(hd0,msdos1)'search --no-floppy --fs-uuid --set=root 51a2ba97-2521-44d7-9b08-316b7059db89linux /boot/vmlinuz-3.0.0-12-generic root=UUID=51a2ba97-2521-44d7-9b08-316b7059db89 ro quiet splash vt.handoff=7initrd /boot/initrd.img-3.0.0-12-generic}[...] - il y a une régression depuis une ou deux versions d’Ubuntu à cause de laquelle le module xen n’est plus chargé dans l’initramfs. Il faut corriger cela avec :
sudo echo "xen-blkfront" >> /etc/initramfs-tools/modulessudo update-initramfs -u - éteindre la VM
- créer un snapshot pour pouvoir revenir à un état stable si quelque chose ne fonctionne pas dans la suite
3. Conversion grâce à makepv.sh
- se connecter à l’hôte XenServer et identifier le nom de la VM à convertir
ssh root@<XenServer>xe vm-list - télécharger le script makepv.sh destiné à convertir la VM en PV. Le script peut être téléchargé via le lien en bas du document. Il consiste à :
- changer l’amorceur (ou bootloader) du mode HVM vers PV
- donner les chemins vers le noyau (
/boot/vmlinuz-3.0.0-12-generic), - donner les paramètres du noyau (
root=UUID=51a2ba97-2521-44d7-9b08-316b7059db89 ro quiet splash vt.handoff=7) - donner le chemin vers l’initrd (
/boot/initrd.img-3.0.0-12-generic) - convertir le disque dur virtuel de la VM à l’aide de ce script
chmod +x makepv.sh./makepv.sh <nom de la vm> # sans espace
4. Installer les ’XenServer tools’
- démarrer la VM sans image attachée au lecteur DVD (pour éviter une erreur due à deux disques de démarrage détectés)
- attacher à partir de XenCenter xs-tools.iso au lecteur de DVD
- monter le volume et installer les XenServer tools
ssh <adresse ip de la vm>sudo mount /dev/cdrom1 /media/cdromcd /media/cdrom/Linuxsudo dpkg -i xe-guest-utilities_6.0.0-743_amd64.deb - démonter le volume et redémarrer
sudo umount /media/cdromsudo init 6 - se reconnecter en ssh et définir les runlevels des services installés
ssh <adresse ip de la vm>sudo update-rc.d -f xe-linux-distribution removesudo update-rc.d xe-linux-distribution defaults - redémarrez une dernière fois et vous pouvez à présent profiter d’Ubuntu Oneiric Ocelot 11.10 en mode paravirtualisé. La console de la VM dans XenCenter est désormais disponible. En revanche, le serveur X se plaindra de ne pas trouver de pilote pour l’affichage graphique. C’est le mauvais côté du mode paravirtualisé. Si vous trouvez comment faire tourner le serveur X dans ces conditions, nous serions ravis de mettre à jour cet article.
N’hésitez pas à contacter le CETIC pour tout commentaire et/ou question.

