Les Hyperviseurs
Qu'est-ce qu'un hyperviseur ?
Un hyperviseur est un composant logiciel (ou logiciel + micro-noyau) qui permet de créer et de gérer des machines virtuelles (VM). Il joue le rôle d'« intermédiaire » entre le matériel (ou le système hôte) et les machines virtuelles. De manière générale, on distingue deux grands types d'hyperviseurs :
- Les hyperviseurs de type 1, dits « bare-metal » ou « nativement sur le matériel ».
- Les hyperviseurs de type 2, dits « hébergés » ou « s'appuyant sur un système d'exploitation hôte ».
Cependant, on peut affiner cette classification pour les hyperviseurs de type 1 en distinguant ceux qui s'installent directement sur le matériel (Ex. : ESXi, Hyper-V Core, Xen en mode "bare-metal"...) de ceux qui reposent sur un OS minimal ou sur un noyau hôte dédié (Ex. : Proxmox VE qui s'appuie sur Debian + KVM, bhyve sous FreeBSD, NVMM sous NetBSD, etc.).
Quel est son rôle ?
Un hyperviseur (ou « monitor de machine virtuelle ») a pour rôle :
- De partager et isoler les ressources matérielles (CPU, RAM, stockage, réseau...) entre plusieurs machines virtuelles.
- De gérer l'exécution de ces VM : démarrage, arrêt, allocations de ressources, sécurité, snapshots etc.
- De permettre la coexistence de plusieurs systèmes d'exploitation au sein d'une même machine physique (Linux, Windows, BSD, etc.).
Grâce à un hyperviseur, on peut :
- Optimiser l'utilisation des ressources.
- Simplifier les déploiements ou migrations (consolidation de serveurs).
- Séparer les services applicatifs pour plus de flexibilité et, surtoutde sécurité.
Les deux grandes familles d'hyperviseurs
1. L'hyperviseur de type 1 (bare-metal ou « natif »)
Un hyperviseur de type 1 s'exécute directement sur le matériel (ou sur un noyau extrêmement léger).
C'est-à-dire qu'il n'y a pas de système d'exploitation « classique » entre l'hyperviseur et le matériel.
Exemples courants :
- VMware ESXi : un hyperviseur très répandu en entreprise, spécifiquement conçu pour la virtualisation. ESXi est un système à part entière et n'a pas besoin d'un OS sous-jacent.
- Microsoft Hyper-V Core : version « standalone » (Core) qui transforme la machine en serveur de virtualisation, sans passer par Windows Server complet (pas d'interface graphique).
- Xen en mode « bare-metal » : l'hyperviseur Xen démarre au plus bas niveau, et fait tourner un « dom0 » (généralement un Linux privilégié) qui pilote l'accès au matériel et gère les VM (domU).
Distinction au sein des hyperviseurs de type 1
Certains (dont je fais partie !) les classent en deux sous-catégories :
1. Les hyperviseurs de type 1 "bare-metal purs"
- Comme ESXi, Hyper-V Core, ou Xen qui se lancent directement au démarrage de la machine et fournissent une couche minimale pour faire tourner les VM.
2. Les hyperviseurs de type 1 "hébergés sur un noyau minimal (ou sur un OS technique)"
- Proxmox VE (basé sur Debian + KVM) : KVM est intégré au noyau Linux, considéré souvent comme un hyperviseur de type 1 car il s'exécute au niveau du noyau, même s'il repose sur un OS Linux.
- bhyve (FreeBSD) et NVMM (NetBSD) fonctionnent aussi comme des modules de virtualisation intégrés au noyau.
Dans ces solutions, on installe un système spécialisé (une distribution très légère ou un OS dédié) qui inclut un noyau possédant des capacités de virtualisation intégrées (KVM, bhyve, etc.).
Sur cet OS minimal (souvent optimisé), on lance ensuite les VM, ce qui se rapproche d'une expérience « bare-metal » du point de vue de la virtualisation.
2. L'hyperviseur de type 2 (hébergé ou « hosted »)
Un hyperviseur de type 2 s'appuie sur un système d'exploitation hôte déjà existant (Windows, Linux, macOS...), au-dessus duquel il tourne comme un logiciel classique.
Le système d'exploitation hôte gère les pilotes matériels, la gestion de la mémoire, du CPU, etc., puis l'hyperviseur se « branchera » dessus pour présenter des ressources virtuelles aux machines invitées.
Exemples courants :
- VMware Workstation / VMware Fusion (sur Windows / macOS).
- Oracle VirtualBox (sur Windows, Linux, macOS).
- Parallels Desktop (principalement sur macOS).
Ces hyperviseurs de type 2 sont plus souvent utilisés en environnement de test ou bureautique (machines virtuelles de développement, par ex.), car ils permettent d'exécuter facilement des VM à partir d'un ordinateur personnel déjà équipé d'un OS.
Les Principaux hyperviseurs du marché
- VMware ESXi
- Type : Hyperviseur de type 1 (bare-metal).
- Particularités : Très largement déployé en milieu professionnel, offre de nombreuses fonctionnalités avancées (vMotion, DRS, HA, etc.) via la suite VMware vSphere.
- Microsoft Hyper-V
- Type : Hyperviseur de type 1 (bare-metal en version Core) ou s'exécutant dans Windows Server.
- Particularités : Intégration forte avec l'écosystème Microsoft, intéressant pour les environnements Windows.
- Xen
- Type : Hyperviseur de type 1 (bare-metal, avec un dom0 sous Linux).
- Particularités : Utilisé notamment par de grands fournisseurs de cloud (AWS EC2 est historiquement basé sur Xen, même s'il y a évolution vers Nitro). Permet la paravirtualisation ou la virtualisation complète selon les besoins.
- Proxmox VE (KVM/QEMU + LXC)
- Type : Souvent classé dans le type 1 (hébergé sur OS minimal, Debian).
- Particularités : Distribution open source complète avec interface web, intégrant KVM pour la virtualisation complète et LXC pour la conteneurisation. Facile à administrer, très utilisé dans des labos, PME ou auto-hébergement.
- bhyve
- Type : Hyperviseur de type 1 (intégré au noyau FreeBSD).
- Particularités : Minimaliste et performant, dédié aux environnements BSD (FreeBSD, TrueNAS, etc.).
- NVMM
- Type : Hyperviseur de type 1 (intégré au noyau DragonFlyBSD (OS hôte)).
- Particularités : Orientation DragonFlyBSD (à présent, car initialement porté sous NetBSD), léger, supporte la virtualisation sur architecture x86 et ARM64.
VMware Workstation / VirtualBox / Parallels / etc.
- Type : Hyperviseurs de type 2 (hébergés).
- Particularités : Utilisés majoritairement pour le développement, les tests, ou un usage bureautique. Ils s'installent comme un logiciel sur votre OS principal.
Tableau récapitulatif
Récapitulatif des différences
Exécution :
- Type 1 (bare-metal) : Directement sur le matériel, sans OS sous-jacent
- Type 1 (OS minimal) : Sur un noyau/OS spécialisé minimal (Ex. Proxmox VE, FreeBSD avec bhyve, etc.)
- Type 2 (hébergé) : Au-dessus d'un OS hôte (Windows, Linux, macOS)
Performance :
- Type 1 (bare-metal) : Très performants, car la couche logicielle est minimale
- Type 1 (OS minimal) : Presque équivalent au bare-metal, dépend juste d'un noyau modifié/optimisé
- Type 2 (hébergé) : Moins performant (surcouche de l'OS hôte), plus adapté à des usages de test
Cas d'usage principal :
- Type 1 (bare-metal) : Data centers, serveurs de production, haute disponibilité (HA)
- Type 1 (OS minimal) : Data centers, PME, homelab, solutions "clés en main" de virtualisation
- Type 2 (hébergé) : Environnements de bureau, dev/test, utilisateurs finaux
Exemples :
- Type 1 (bare-metal) : VMware ESXi, Microsoft Hyper-V Core, Xen
- Type 1 (OS minimal) : Proxmox VE (KVM), bhyve (FreeBSD), NVMM (NetBSD)
- Type 2 (hébergé) : VMware Workstation, VirtualBox, Parallels Desktop
Administration :
- Type 1 (bare-metal) : Interfaces spécifiques (vSphere, Hyper-V Manager, Xen Orchestra, etc.)
- Type 1 (OS minimal) : Interface web/CLI (Proxmox, bhyve via la CLI, etc.), plus ou moins intégrée
- Type 2 (hébergé) : Application graphique classique (Workstation, VirtualBox, etc.)
↑ Haut de page