GNU/Linux >> Tutoriels Linux >  >> Debian

Créer une nouvelle machine virtuelle Xen Debian à partir de zéro

Présentation :

Dans ce didacticiel, une nouvelle machine virtuelle basée sur la distribution Debian Jessie sera créée à partir de rien avec un minimum de composants.
Hypothèse :l'hyperviseur Xen doit déjà être installé et en cours d'exécution sur le système principal (DOM0).

Création de la machine virtuelle Xen

Cette machine virtuelle sera créée avec les outils xen qui démarrent la création de la VM.
Bootstrap :
mkdir -p /virtual/xen/
cd /virtual/xen/
xen-create-image --dir=. --dist=jessie --hostname=mail.myserver.com --size=10Gb --swap=2048Mb --ip=87.176.10.167 --gateway=87.176.10.254 --netmask=255.255.255.0 --memory=4096Mb --arch=amd64 --role=udev

Installer le noyau et pyGrub
– Placez les fichiers disk.img et swap.img produits dans le bon chemin.
ex. dans /virtual/xen/MAIL/
Monte l'image disque en boucle
mkdir /mnt/MAIL
mount /virtual/xen/MAIL/disk.img /mnt/MAIL -o loop,rw

Montez /sys, /proc, /dev et chrootez dessus
mount /proc /mnt/MAIL/proc -o bind
mount /sys /mnt/MAIL/sys -o bind
mount /dev /mnt/MAIL/dev -o bind
chroot /mnt/MAIL

Installez grub-legacy dans la VM
apt-get update
apt-get install grub-legacy linux-image-3.2.0-4-amd64 mc
mkdir /boot/grub
mcedit /boot/grub/menu.lst
CONTENT:
#----------------
default 0
timeout 2
#
title Debian GNU/Linux
root (hd0,0)
kernel /vmlinuz root=/dev/xvda1 ro
initrd /initrd.img
#
title Debian GNU/Linux (recovery mode)
root (hd0,0)
kernel /vmlinuz root=/dev/xvda1 ro single
initrd /initrd.img
#-------------

Quittez chroot et démontez tout.
exit
umount /mnt/MAIL/dev
umount /mnt/MAIL/sys
umount /mnt/MAIL/proc
umount /mnt/MAIL/

Ajustez la configuration VM xen (/etc/xen/mail.server.com.cfg ) comme suit :
Remplacez les anciennes lignes kernel et initrd dans le fichier de configuration Xen DOMu comme suit :
Exemple :
REPLACE:
kernel = '/boot/vmlinuz-2.6.32-5-xen-amd64'
ramdisk = '/boot/initrd.img-2.6.32-5-xen-amd64'

AVEC :
Pour l'hyperviseur Debian squeeze :
bootloader = '/usr/lib/xen-default/bin/pygrub'
Pour l'hyperviseur Debian Wheezy :
bootloader = '/usr/lib/xen-4.1/bin/pygrub'
Pour l'hyperviseur Debian jessie :
bootloader = '/usr/lib/xen-4.4/bin/pygrub'

Ajustez correctement les chemins des disques :
Exemple :
disk = [
'file:/virtual/xen/MAIL/disk.img,xvda2,w',
'file:/virtual/xen/MAIL/disk.swp,xvda1,w',
]

Testez la configuration pyGRUB avec le disque VM
Remarque :un menu GRUB devrait apparaître pendant quelques secondes, puis disparaître avec un message d'erreur. Ignorez le message d'erreur. Le plus important est que le menu Grub apparaisse.
Pour l'hyperviseur Debian squeeze :
/usr/lib/xen-default/bin/pygrub /virtual/xen/MAIL/disk.img
Pour l'hyperviseur Debian Wheezy :
/usr/lib/xen-4.1/bin/pygrub /virtual/xen/MAIL/disk.img
Pour l'hyperviseur Debian jessie :
/usr/lib/xen-4.4/bin/pygrub /virtual/xen/MAIL/disk.img

Démarrez la VM
Le menu Grub devrait apparaître et démarrer le démarrage.
xm create /etc/xen/mail.server.com.cfg -c

Remarque importante : Normalement, après un tel démarrage d'une nouvelle machine virtuelle Xen, la machine virtuelle utilise le noyau de l'hyperviseur lors du démarrage. Cela signifie que chaque VM n'est pas capable de mettre à jour son noyau indépendamment. Cette méthode ci-dessus rend la machine virtuelle totalement indépendante du noyau de l'hyperviseur et obtient son propre noyau. Le seul inconvénient que je vois est qu'avec certaines mises à jour du noyau, le fichier /boot/grub/menu.lst est automatiquement remplacé lors de la mise à niveau du noyau, vous DEVEZ alors récupérer le précédent /boot/grub/menu.lst qui est normalement enregistré sous / boot/grub/menu.lst~ avant de redémarrer la machine virtuelle. Au cas où vous l'auriez oublié, montez simplement l'image VM en boucle comme expliqué ci-dessus et remplacez le fichier si nécessaire. Vous devriez alors pouvoir ensuite démarrer la VM.


Debian
  1. Comment passer de Debian 10 à Debian 11

  2. Création d'hôtes virtuels simples avec mod_mysql_vhost sur Lighttpd (Debian Etch)

  3. Création d'hôtes virtuels simples avec mod_mysql_vhost sur Lighttpd (Debian Squeeze)

  4. Sortie de Debian 10 (Buster) – Nouvelles fonctionnalités

  5. Debian – Utiliser Aes-ni dans Debian ?

Créer une sauvegarde des données stockées dans une machine virtuelle Linux

Comment installer les ajouts d'invités VirtualBox dans la machine virtuelle Debian 9

Comment créer une nouvelle Machine Virtuelle sur Proxmox ?

Migrer la machine virtuelle de VMware ESXi vers Proxmox VE

Comment construire le noyau Linux à partir de zéro

Quoi de neuf dans Debian 11 « Bullseye »