Installer les packages suivants:
kernel-xen-2.6.18-8.el5.i686.rpm xen-libs-3.0.3-25.el5.i386.rpm bridge-utils-1.1-2.i386.rpm libvirt-0.1.8-15.el5.i386.rpm libvirt-python-0.1.8-15.el5.i386.rpm python-virtinst-0.99.0-2.el5.noarch.rpm SDL-1.2.10-8.el5.i386 xen-3.0.3-25.el5.i386.rpm
Redémarrer le serveur pour charger le système sous le noyau prévu pour XEN
Plusieurs méthodes sont possibles
Il faut créer 2 FS, un pour le system et l'autre pour la swap de notre futur serveur virtuel
lvcreate -n serveur1-rootfs -L4G rootvg lvcreate -n serveur1-swapfs -L512M rootvg
Voir LVM
dd if=/dev/zero of=/products/xen-data/serveur1/serveur1.disk bs=1k count=2048k dd if=/dev/zero of=/products/xen-data/serveur1/serveur1.swap bs=1k count=256k mkfs.ext3 /products/xen-data/serveur1/serveur1.disk mkswap /products/xen-data/serveur1/serveur1.swap
cd / tar -cz --exclude=./products --exclude=./sys --exclude=./proc/ /products/serveur1.tgz . > /products/serveur1.tgz
mount /dev/rootvg/serveur1-rootfs /mnt/ cd /mnt/ tar --numeric-owner -xzf /products/serveur1.tgz
Création des fichiers spéciaux pour nos deux partitions
chroot /mnt/ MAKEDEV hda MAKEDEV hda1 MAKEDEV hda2 exit
Modification de /mnt/etc/fstab
devpts /dev/pts devpts gid=5,mode=620 0 0 tmpfs /dev/shm tmpfs defaults 0 0 proc /proc proc defaults 0 0 sysfs /sys sysfs defaults 0 0 /dev/hda1 / ext3 defaults 1 1 /dev/hda2 swap swap defaults 0 0
Changer l'adresse IP et le nom du serveur
vi /mnt/etc/sysconfig/network-scripts/ifcfg-eth0 /mnt/etc/sysconfig/network
Notre disque virtuel est prêt, il ne reste plus qu'à configurer Xen
Copier le fichier modèle ainsi
cp /etc/xen/xmexample1 /etc/xen/auto/serveur1
Editer le fichier /etc/xen/auto/serveur1 et configuer ainsi:
kernel = "/boot/vmlinuz-2.6.10-xenU" name = "serveur1" memory = 256 disk = [ 'phy:/dev/rootvg/serveur1-rootfs,hda1,w', 'phy:/dev/rootvg/serveur1-swapfs,hda2,w' ]
Avec la méthode fichier “disque”
disk = [ 'file:/products/xen-data/serveur2/serveur2.disk,hda1,w', 'file:/products/xen-data/serveur2/serveur2.swap,hda2,w' ]
Il faut obtenir une image vmlinuz-2.6.10-xenU et la déposer dans /boot de la machine hôte
Il n'y a plus qu'à démarrer ! :
xm create -c /etc/xen/auto/serveur1
Démarrer un serveur:
xm create -c /etc/xen/auto/serveur1
Se connecter à la console d'un serveur:
xm console serveur1
Crtl + $ pour se détacher de la console
Arrêter un serveur ( = Crtl+Alt+Supp sur une vraie machine):
xm shutdown serveur1
Arrêt d'un serveur brutalement ( = Arrêt physique sur une vraie machine )
xm detroy serveur1
Lister les serveurs actifs:
xm list
Création du bridge xenbr1
brctl addbr xenbr1
Ajout de l'interface eth1 dans le bridge xenbr1
brctl addif xenbr1 eth1
Voir la configuration des bridges:
brctl show