Qu'est-ce qu'un hyperviseur en virtualisation ?
Infrastructure
Moyen 4 min

Qu'est-ce qu'un hyperviseur en virtualisation ?

Le logiciel qui permet de faire tourner plusieurs systèmes d'exploitation sur un seul processeur

Un hyperviseur est une couche logicielle isolant les ressources matérielles pour exécuter plusieurs machines virtuelles. Fonctionnement, types et intérêt technique.

L’hyperviseur est la couche logicielle qui transforme un serveur physique unique en plusieurs machines virtuelles totalement indépendantes. Il intercepte les instructions des systèmes invités pour les distribuer aux ressources matérielles réelles sans que chaque système ne sache qu’il partage le processeur.

À RETENIR

Qu’est-ce qu’un hyperviseur en virtualisation ?

  • Chaque machine virtuelle dispose de ses propres ressources allouées, empêchant un crash système d’affecter les autres instances.
  • Le matériel physique est partagé de manière dynamique entre les différentes machines virtuelles selon leurs besoins en temps réel.
  • La gestion centralisée permet de déplacer une machine virtuelle d’un serveur physique à un autre sans interruption de service.

La couche logicielle gère les accès directs au processeur

L’hyperviseur agit comme un arbitre entre le matériel brut et les systèmes d’exploitation. Lorsqu’une machine virtuelle tente d’exécuter une instruction processeur, l’hyperviseur intercepte cette demande pour vérifier qu’elle n’empiète pas sur les ressources d’une autre machine. Cette interception est rendue extrêmement rapide par les extensions de virtualisation intégrées directement dans les processeurs modernes.

Les deux architectures principales

Les hyperviseurs de type 1 s’installent directement sur le matériel nu, sans système d’exploitation intermédiaire. Ils offrent les meilleures performances car ils contrôlent nativement le processeur, la mémoire et le stockage. C’est la norme dans les centres de données où la stabilité est la priorité.

Les hyperviseurs de type 2 s’exécutent comme une application au-dessus d’un système d’exploitation hôte, comme Windows ou macOS. Ils sont principalement utilisés pour le développement, les tests ou l’exécution ponctuelle d’un environnement secondaire. Bien que plus simples à installer, ils subissent la latence du système hôte qui doit également gérer ses propres tâches en parallèle.

Hyperviseur bare-metal et hébergé diffèrent par leur accès au matériel

La différence fondamentale entre les deux types d’hyperviseurs réside dans la proximité avec les composants physiques. Un hyperviseur de type 1 possède son propre noyau optimisé pour la virtualisation, ce qui réduit drastiquement les délais de traitement des instructions. Il n’y a aucune couche logicielle superflue entre la machine virtuelle et le processeur.

CritèreHyperviseur Type 1 (Bare-metal)Hyperviseur Type 2 (Hébergé)
InstallationDirectement sur le matérielSur un OS hôte
PerformanceMaximale (natif)Réduite par l’OS hôte
Usage cibleServeurs de productionDéveloppement et tests
ComplexitéÉlevéeFaible

À l’inverse, l’hyperviseur de type 2 doit demander au système d’exploitation hôte l’accès aux ressources. Si l’hôte est saturé par d’autres processus, la machine virtuelle ralentit mécaniquement. Ce modèle est idéal pour tester des logiciels dans des environnements variés sans dédier un serveur complet à cette seule tâche.

Le choix dépend uniquement de l’usage. Pour un serveur de production, le type 1 est requis pour garantir l’isolation et la performance. Pour un poste de travail, le type 2 apporte la souplesse nécessaire pour jongler entre plusieurs environnements sans redémarrer la machine.

La saturation des ressources impacte toutes les machines virtuelles

Bien que l’hyperviseur isole les systèmes, il ne peut pas créer de ressources à partir de rien. Si le processeur physique ou la mémoire vive atteignent leur capacité maximale, l’hyperviseur doit arbitrer entre les machines virtuelles. Cela provoque des ralentissements globaux sur toutes les instances en cours d’exécution.

Une mauvaise configuration des priorités peut entraîner un phénomène de famine où une machine virtuelle gourmande accapare les cycles processeur au détriment des autres (c’est un problème fréquent avec les hébergements mutualisés). La surveillance des ressources de l’hôte est donc indispensable pour éviter que l’hyperviseur ne devienne le goulot d’étranglement de toute l’infrastructure.

Un hyperviseur peut-il fonctionner sans processeur compatible ?

Les hyperviseurs modernes exigent des extensions matérielles comme Intel VT-x ou AMD-V. Sans ces fonctions activées dans l’UEFI, l’hyperviseur ne pourra pas isoler correctement les machines virtuelles et refusera de démarrer.

Quelle est la différence entre virtualisation et émulation ?

La virtualisation utilise les instructions natives du processeur physique pour exécuter le système invité à pleine vitesse. L’émulation, elle, traduit logiciellement chaque instruction pour simuler un matériel différent, ce qui est beaucoup plus lent.

Un hyperviseur de type 1 est-il un système d’exploitation ?

Techniquement, oui. Il s’agit d’un noyau minimaliste conçu exclusivement pour gérer la virtualisation. Il ne possède pas d’interface graphique utilisateur classique car il est piloté à distance via une console d’administration.