01/05/2013 17:21
Présentation
Xen est un logiciel de (para)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.
Xen est un « paravirtualiseur » ou un « hyperviseur » de machines virtuelles. Les systèmes d'exploitation invités ont « conscience » du Xen sous-jacent, ils ont besoin d'être « portés » (adaptés) pour fonctionner sur Xen. Linux, NetBSD, FreeBSD (portage en cours), Plan 9 et GNU Hurd peuvent d'ores et déjà fonctionner sur Xen.
Xen 3 peut également exécuter des systèmes non modifiés comme Windows sur des processeurs supportant les technologies VT d'Intel ou AMD-V (nom de projet: Pacifica) de AMD1.
Les architectures x86, x64, IA-64, PowerPC et SPARC sont supportées. Le multiprocesseur (SMP) et partiellement l’Hyper-Threading sont supportés.
Utilisation
L'utilisation d'un hyperviseur comme Xen peut servir dans beaucoup d'applications :
Caractéristiques
-
Pas d'émulation : ni matérielle, ni logicielle = sûreté
-
Performances proches des natives
-
Migration d'
OS en direct ( dans le cas d'une infrastructure en cluster)
-
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
-
Processeurs 64bits Intel (x86_64 EM64T & IA64)
-
Processeurs à architecture Power
-
Jusqu'à 4Go de RAM
-
HyperThreading
-
Multi-Processeurs
-
Processeurs à virtualisation hardware Intel VT (Vanderpool Technology) et AMD-V (Pacifica)
Principe
Général
Les couches de l'OS
Dom0 et DomU
Le Dom0 correspond au système d'exploitation hôte (OS Host). Il gère l'infrastructure Xen et toute la partie matérielle. Les DomU dépendent du Dom0.
Les DomU correspondent à chaque système d'exploitation invité (OS Guest).
Différences avec VM-Ware, VirtualBox et QEmu
L'OS invité (Guest) doit en général ê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).
Il est aussi possible de faire tourner des OS non modifiés (HVM : Hardware Virtual Machine cf. Hardware-assisted virtualization) si vous disposez d'une technologie de virtualisation intégrée au processeur : Intel VT ou AMD-V.
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 modifié pour son fonctionnement.
Support
Tout le matériel supporté par linux est disponible sous Xen (sous réserve de compatibilité avec le noyau).
Xen supporte tous les systèmes d'exploitation modifiés pour fonctionner en son sein.
Xen supporte les systèmes d'exploitation non-modifiés à travers la virtualisation matérielle des processeurs compatibles (Intel VT et AMD-V).