[[xen]]
Piste: » xen
Xen
Si vous n'avez pas la fonction virtualisation matériel veuillez plutôt voir comment installer VirtualBox
(Lstr le 08/12/2006)
A compléter par les pratiquants étant arrivés à un résultat concret...
Présentation
Xen est un logiciel de virtualisation de type hyperviseur. Il permet donc de faire tourner plusieurs systèmes d'exploitation (OS) sur une même ressource matérielle (PC, Serveur,...). Le principe de l'hyperviseur est de faire tourner les OS dans le noyau (kernel) même, et non-pas de les émuler, ce qui permet de conserver des performances proches des natives.
Utilisation
L'utilisation d'un hyperviseur comme Xen peut servir dans beaucoup d'applications :
- Fonctionnement de plusieurs serveurs virtuels sur un unique serveur physique (avec création de serveurs virtuels "à la volée", notamment lorsque l'un d'entre-eux plante ou est victime de piratage,...)
- Gestion de Clusters
- Fonctionnement de plusieurs OS sur une même ressource matérielle (développement multi-OS,...)
- Amélioration de la compatibilité (D'anciennes versions d'OS et d'applications peuvent devenir incompatibles avec du nouveau matériel)
- Développement de kernel en live (débogage, test,...)
- Facilite le développement de nouveaux OS en sachant que d'autres pilotes seront réutilisables.
Caractéristiques
- Pas d'émulation : ni matérielle, ni logicielle = sûreté
- Performances proches des natives
- Migration d'OS en direct
- Supporte jusqu'à 32 processeurs virtuels par machine "hôte"
- Supporte la plupart des pilotes Linux
- Installation de la machine "hôte" en Ring1 (droits inférieurs au Ring0 = root) mais possibilité de faire des requêtes (HyperCall) vers le Ring0.
Support
- Processeurs 32bits x86_32 (dont Intel-PAE)
- Processeurs 64bits AMD x86_64 (EM64T & Opteron)
- Jusqu'à 4Go de RAM
- HyperThreading
- Multi-Processeurs
- Processeurs virtuels Intel VT-X (Vanderpool Technology)
Remarques :
- Le portage sur PowerPC et Intel 64bits (Itanium = IA64) est en cours
- Les processeurs virtuels AMD AMD-V (Pacifica), bien que développés essentiellement autour de Xen, je n'ai pas trouvé d'information quant à leur compatibilité qui est plus que probable.
Principe
Général
Les couches de l'OS
Dom0 et DomU
Le Dom0 est la partie qui doit être installée sur le système d'exploitation hôte (OS Host)
Le DomU est la partie à installer sur le système d'exploitation invité (OS Guest) Si vous avez une technologie de virtualisation sur votre processeur il n'est à priori pas indispensable de passer par cette étape (en tous cas pour MS Windows)
Différences avec VM-Ware, VirtualBox et QEmu
L'OS invité (Guest) doit être modifié pour être virtualisé alors qu'avec un virtualiseur classique les systèmes d'exploitation fonctionnent en l'état (même s'il existe des optimiseurs à installer).
Depuis La dernière version de Xen il est aussi possible de faire tourner des OS non modifiés si vous disposez d'une technologie de virtualisation intégrée au processeur ...
Contrairement aux autres technologies de virtualisation, Xen n'est pas composé d'un programme et d'un module du noyau, mais il est composé de plusieurs programmes et d'un noyau totalement modifié pour son fonctionnement, ce qui peut poser problème avec certains pilotes (essentiellement les propriétaires de chez ati ...)
Support
Quasiment tout le matériel supporté par linux sera disponible sous Xen
Xen supporte tous les systèmes d'exploitations modifiés pour fonctionner en son sein.
Installation de Xen sous OS libre
Installation du Dom0
Installation Pour Edgy
Documentations Anglaise (à transcrire) :
Création de l'image de boot
Modification du fichier de boot
Installation pour Feisty et supérieure
- Activez le dépôt Universe.
- Pour Hardy, le paquet Xenman est manquant. Vous pouvez le trouver ici : http://launchpadlibrarian.net/11041870/xenman_0.6-5ubuntu1_all.deb
- Installer le paquet ubuntu-xen-desktop
Ceci installera et configurera les logiciels nécessaires à l'exécution de Xen sur votre ordinateur de bureau.
Pour installer la version serveur, utilisez ubuntu-xen-server
Si vous utilisez Ubuntu 64 bits il vous faudra utiliser le paquet ubuntu-xen-desktop-amd64
Suite pour Feisty: Xen sur Feisty (En) (en traduction)
Support XOrg
Les pilotes nVidia fonctionnent. Voir cette page
...
Installation du DomU
INSTALLATION D'UN DomU NetBSD sur un Dom0 DEBIAN NON-PAE 3.1.0
- Principe de l'installation
- Récupérer deux archives NetBSD, l'une d'installation (netbsd-INSTALL_XEN3_DOMU) et l'autre de boot normal (netbsd-XEN3_DOMU).
- Créer le fichier "image disque"
dd if=/dev/zero of=disk.img bs=1024k seek=3000 count=1
- Créer le fichier de boot de machine virtuelle NetBSD qui utilisera lors du premier démarrage l'archive d'installation et pour les boots suivants l'archive de boot.
Fichier Xen du DomU NetBSD sur un Dom0 DEBIAN NON-PAE 3.1.0
kernel = "/vserver/netbsd/noyaux-netbsd-xen3/netbsd-INSTALL_XEN3_DOMU"
#kernel = "/vserver/netbsd/noyaux-netbsd-xen3/netbsd-XEN3_DOMU"
memory = 128
name = "netbsd"
disk = [ 'file:/vserver/netbsd/disk.img,sda1,w' ]
vif = [ '' ]
- Installation d'un NetBSD DomU (Non-PAE)
- 1) - Installation de la machine virtuelle NetBSD : sudo xm create -c netbsd.sxp
- L'installation se déroule comme pour une machine normale. Bien faire attention à l'adresse du serveur FTP et du répertoire de récupération des src.
- Une fois l'installation terminée, changer le fichier netbsd.sxp afin d'utiliser maintenant le fichier de boot normal et non celui d'installation.
- 2) - Démarrage de la machine virtuelles NetBSD : sudo xm create -c netbsd.sxp
INSTALLATION D'UN DomU DEBIAN (etch) sur un Dom0 DEBIAN NON-PAE 3.1.0
- 1) Installation et utilisation de xen-tools
- XEN-TOOLS est un utilitaire permet de créer les machines virtuelles de XEN très simplement et sans rien oublier. Donc XEN-TOOLS n'est pas obligatoire, mais bien utile.
apt-get install xen-tools
- 2) Configuration de xen-tools via /etc/xen-tools/xen-tools.conf
- Commenter tout, surtout la ligne "initrd" et ne laisser que ce qui suit.
size = 4Gb # Disk image size.
memory = 128Mb # Memory size
swap = 128Mb # Swap size
fs = ext3 # use the EXT3 filesystem for the disk image.
dist = sarge # Default distribution to install.
image = sparse # Specify sparse vs. full disk images.
gateway = 172.20.0.1
netmask = 255.255.255.0
passwd = 1
kernel = /boot/vmlinuz-2.6.18-xen
mirror = http://ftp2.de.debian.org/debian/
- 3) Créer la machine virtuelle avec xen-tools
- Créer le répertoire d'accueil des machines virtuelles
mkdir /vserver
sudo xen-create-image --hostname=xen1 --size=4Gb --swap=256Mb --ide --ip=192.168.50.176 --netmask=255.255.255.0 --gateway=192.168.50.1 --force --dir=/vserver --memory=64Mb --arch=i386 --kernel=/boot/vmlinuz-2.6.18-xen --debootstrap --dist=etch --mirror=http://ftp2.de.debian.org/debian/ --passwd
- 4) Créer et démarrer la machine virtuelle
- sudo xm create /etc/xen/xen-amm.cfg
qqun@xen:~$ sudo xen-create-image --hostname=xen-amm --size=4Gb --swap=256Mb --ide --ip=172.20.0.178 --netmask=255.255.255.0 --gateway=172.20.0.1 --force --dir=/vserver --memory=128Mb --arch=i386 --kernel=/boot/vmlinuz-2.6.18-xen --debootstrap --dist=sarge --mirror=http://ftp2.de.debian.org/debian/ --passwd
General Infomation
--------------------
Hostname : xen-amm
Distribution : sarge
Fileystem Type : ext3
Size Information
----------------
Image size : 4Gb
Swap size : 256Mb
Image type : sparse
Memory size : 128Mb
Kernel path : /boot/vmlinuz-2.6.18-xen
Networking Information
----------------------
IP Address 1 : 172.20.0.178
Netmask : 255.255.255.0
Gateway : 172.20.0.1
WARNING
-------
Loopback module not loaded and you're using loopback images
Run the following to load the module:
modprobe loop loop_max=255
Creating swap image: /vserver/domains/xen-amm/swap.img
Done
Creating disk image: /vserver/domains/xen-amm/disk.img
Done
Creating ext3 filesystem on /vserver/domains/xen-amm/disk.img
Done
Installing your system with debootstrap mirror http://ftp2.de.debian.org/debian/
Done
Running hooks
Done
No role script specified. Skipping
Creating Xen configuration file
Done
Setting up root password
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
All done
Logfile produced at:
/var/log/xen-tools/xen-amm.log
qqun@xen:~$
INSTALLATION D'UN DomU PLAN 9 sur un Dom0 DEBIAN NON-PAE 3.1.0
- PLAN 9 présente un tuto très bien fait : HowTo Installing Plan9 on XEN 3
- Créer le répertoire de la machine virtuelle
mkdir /vserver/domains/plan9
- Récupérer les kernel et les sources
wget http://plan9.bell-labs.com/sources/xen/xen3/9xeninst.gz
wget http://plan9.bell-labs.com/sources/xen/xen3/9xenpcf.gz
wget http://plan9.bell-labs.com/plan9/download/plan9.iso.bz2
bzip2 -d plan9.iso.bz2
- Créer les fichiers XEN du DomU PLAN9
- Fichier d'installation de PLAN 9 utilisant 9xeninst.gz
kernel = "/usr/xen9/9xeninst.gz"
memory = 32
name = "plan9"
vif = [ 'mac=aa:00:10:00:00:10' ]
disk = [ 'file:/vserver/domains/plan9/plan9.img,sda,w',
'file:/vserver/domains/plan9/plan9.iso,sdb,r' ]
restart = 'never'
# This is the equivalent of plan9.ini:
extra="""
nobootprompt=local!/boot/bzroot
bootfile=sd01!cdboot!bootdisk.img
"""
LOL
Installation de Windows et OS propriétaires dans Xen
Il est nécessaire de disposer de la version 3 de Xen et d'un processeur supportant Intel VT ou AMD-V (Pacifica).
Car seuls les processeurs ayant le support matériel de la virtualisation peuvent faire tourner des systèmes d'exploitation propriétaires étant donné qu'il n'est plus nécessaire d'installer un noyau modifié.
Liste des processeurs Intel VT et AMD-V :
- Tous les Intel Centrino Core 2 Solo, Core 2 Quad, Core 2 XE, Xeon et Itanium.
- Tous les AMD Athlon 64, Athlon 64 X2, les turions X2 TL-50 et +, ainsi que les Opteron sur sockets AM2, AM2+ et socket F.
: Tutoriel d'installation de windows.