Virtualisation : hyperviseurs et machines virtuelles

·

Avant la virtualisation, chaque application critique vivait sur son propre serveur physique qui dépassait rarement 10 % d'utilisation du processeur. Le reste représentait du matériel coûteux consommant de l'électricité et occupant de l'espace dans le centre de données. L'hyperviseur a changé cette équation en permettant à un seul serveur physique d'exécuter des dizaines de machines virtuelles isolées les unes des autres. Cet article explique ce qu'est précisément un hyperviseur, en quoi diffèrent les architectures de type 1 et de type 2, comment se comparent VMware, KVM, Hyper-V et Proxmox, et quelles décisions de conception font la différence entre une consolidation réussie et un goulot d'étranglement.

Qu'est-ce qu'un hyperviseur et comment isole-t-il les charges ?

Un hyperviseur est la couche logicielle qui abstrait le matériel physique et le présente à plusieurs machines virtuelles comme si chacune disposait de son propre serveur. Sa fonction est de répartir le CPU, la mémoire, le stockage et le réseau entre les hôtes invités en garantissant l'isolation : ce qui se passe dans une machine virtuelle ne doit pas affecter les autres. Cette isolation est la propriété de sécurité fondamentale de la virtualisation ; elle s'appuie sur des extensions matérielles présentes dans les processeurs modernes, qui permettent d'exécuter le code de l'invité de manière contrôlée sans pénalité significative.

Il convient de distinguer la virtualisation des conteneurs. Une machine virtuelle inclut son propre système d'exploitation complet et s'exécute sur l'hyperviseur ; un conteneur partage le noyau du système hôte et n'isole que l'espace utilisateur. Les machines virtuelles offrent une meilleure isolation et permettent d'exécuter des systèmes d'exploitation différents sur le même équipement ; les conteneurs sont plus légers et démarrent plus rapidement. Il ne s'agit pas d'une opposition : dans les architectures modernes, ils coexistent, avec des conteneurs qui s'exécutent à l'intérieur de machines virtuelles.

Hyperviseurs de type 1 et de type 2

Les hyperviseurs se classifient selon l'endroit où ils s'exécutent. Ceux de type 1, appelés natifs ou bare metal, fonctionnent directement sur le matériel sans système d'exploitation hôte intermédiaire : VMware ESXi, Microsoft Hyper-V en mode serveur et le KVM de Linux appartiennent à cette catégorie. Ce sont la solution privilégiée des centres de données pour leur performance et leur surface d'attaque réduite. Ceux de type 2, ou hébergés, s'exécutent comme une application sur un système d'exploitation classique — VMware Workstation, VirtualBox — ; ils sont pratiques pour le développement et les tests sur un poste de travail, mais ajoutent une couche de surcharge qui les rend inadaptés à la production.

Comparaison des plateformes : VMware, KVM, Hyper-V et Proxmox

Le choix de la plateforme conditionne le coût, l'écosystème et la dépendance vis-à-vis du fournisseur. VMware vSphere a été la référence entreprise pendant des années, avec un écosystème mature de gestion, de haute disponibilité et de migration à chaud, bien que les récents changements de son modèle de licences aient poussé de nombreuses organisations à évaluer des alternatives. KVM est l'hyperviseur intégré au noyau Linux, à code source ouvert, qui sous-tend une bonne partie du cloud public mondial ; associé à des outils de gestion, il offre des capacités de niveau entreprise sans coût de licence. Hyper-V s'intègre naturellement dans les environnements Microsoft et s'avère logique lorsque Windows Server prédomine déjà. Proxmox VE, basé sur KVM et les conteneurs LXC, a gagné en popularité comme alternative ouverte dotée d'une interface de gestion complète.

Comparaison des plateformes de virtualisation
PlateformeTypeModèleContexte idéalMigration à chaud
VMware vSphere1 (ESXi)CommercialGrande entreprise, écosystème maturevMotion
KVM1 (noyau Linux)Code source ouvertCloud, infrastructure LinuxOui (avec libvirt)
Hyper-V1Commercial / inclusEnvironnements MicrosoftLive Migration
Proxmox VE1 (KVM + LXC)Code source ouvertPME, laboratoires, coût maîtriséOui

Consolidation, surprovisionnement et ses limites

La consolidation est la justification économique de la virtualisation : regrouper de nombreuses charges sous-utilisées sur moins de serveurs physiques pour augmenter l'utilisation du matériel et réduire la consommation électrique et l'espace. Le concept clé est le surprovisionnement, c'est-à-dire attribuer aux machines virtuelles plus de ressources virtuelles que le serveur hôte n'en possède physiquement, en pariant que toutes ne demanderont pas leur pic en même temps. Cela fonctionne avec le CPU, car les charges saturent rarement simultanément, mais c'est risqué avec la mémoire : lorsque la mémoire physique est épuisée, le système recourt à l'échange sur disque et les performances s'effondrent. La règle pratique est d'être généreux dans le surprovisionnement du CPU et conservateur avec la mémoire RAM.

L'autre limite fréquente est le stockage. Concentrer des dizaines de machines virtuelles dans le même sous-système multiplie les opérations d'entrée et de sortie par seconde que celui-ci doit traiter ; une conception qui dimensionne le stockage uniquement en capacité et non en IOPS aboutit à des latences qui affectent simultanément tous les hôtes invités.

Haute disponibilité et migration à chaud

Virtualiser concentre les risques : si le serveur physique tombe, toutes ses machines virtuelles tombent avec lui. C'est pourquoi la virtualisation en production se conçoit en cluster. La haute disponibilité redémarre automatiquement les machines d'un nœud défaillant sur un nœud sain. La migration à chaud — vMotion chez VMware, Live Migration chez Hyper-V — transfère une machine virtuelle d'un hôte à un autre sans l'éteindre, ce qui permet de maintenir le matériel ou d'équilibrer la charge sans interrompre le service. Ces deux capacités dépendent d'un stockage partagé accessible par tous les nœuds et d'un réseau dédié disposant d'une bande passante suffisante.

Bien dimensionner la capacité du cluster implique de respecter la règle consistant à réserver un nœud de marge : si un cluster de quatre nœuds fonctionne à la limite de sa capacité agrégée, la perte d'un nœud laisse les trois restants sans ressources pour accueillir les machines orphelines, et la haute disponibilité échoue précisément au moment où on en a le plus besoin. Une planification correcte dimensionne le cluster pour tolérer la perte d'au moins un nœud tout en maintenant le service, ce qui signifie en pratique ne pas dépasser de façon soutenue un seuil d'utilisation qui préserve cette marge.

Sécurité et segmentation dans les environnements virtualisés

La concentration des charges concentre également la surface d'attaque. Compromettre l'hyperviseur équivaut à compromettre toutes les machines qu'il héberge ; c'est pourquoi le plan de gestion doit être isolé dans un réseau dédié, accessible uniquement par une authentification renforcée et jamais exposé à Internet. La microsegmentation étend le contrôle du trafic au niveau de chaque machine virtuelle : au lieu de supposer que tout ce qui se trouve à l'intérieur du centre de données est sûr, elle définit ce qui peut communiquer avec quoi, de sorte qu'un hôte compromis ne puisse pas se déplacer latéralement vers les autres. Les normes de management de la sécurité de l'information, comme l'ISO/IEC 27001, et les guides de l'INCIBE fournissent un cadre pour gouverner ces contrôles, le chiffrement des disques virtuels et la gestion des correctifs de l'hyperviseur — un aspect souvent négligé par crainte des interruptions, et que précisément la migration à chaud permet de mettre à jour sans arrêt de service.

Erreurs fréquentes et bonnes pratiques

L'erreur la plus coûteuse est de surprovisioner la mémoire comme on le fait avec le CPU, ce qui provoque un échange sur disque sous charge. La deuxième consiste à ne pas séparer le trafic de gestion, de stockage et des hôtes invités sur des réseaux distincts, ce qui crée de la contention. La troisième est d'oublier que les sauvegardes des machines virtuelles doivent être cohérentes avec l'application : un instantané pris au milieu d'une transaction de base de données peut être inutilisable. La quatrième omission fréquente est de ne pas documenter le dimensionnement ni de surveiller l'utilisation réelle, ce qui empêche de détecter quand le cluster est à court de ressources avant que les utilisateurs ne s'en aperçoivent.

Questions fréquentes

Machines virtuelles ou conteneurs ?

Il ne s'agit pas d'une alternative exclusive. Les machines virtuelles offrent une meilleure isolation et permettent des systèmes d'exploitation différents ; les conteneurs sont plus légers et démarrent en quelques secondes. La pratique courante consiste à exécuter des conteneurs à l'intérieur de machines virtuelles, en combinant l'isolation des unes avec l'agilité des autres.

Quel est le taux de surprovisionnement possible pour le CPU ?

Cela dépend du profil de charge, mais des ratios de plusieurs processeurs virtuels par cœur physique sont courants pour des charges peu intensives. La clé est de surveiller le temps que les machines passent à attendre le CPU : si cet indicateur augmente, la limite a été dépassée.

Est-il viable d'abandonner VMware pour une alternative ouverte ?

De plus en plus d'organisations l'étudient à la suite des changements de licences. KVM et Proxmox offrent des capacités comparables pour de nombreux cas d'usage, bien que la migration exige de planifier la conversion des disques, la formation des équipes et la validation de la haute disponibilité avant de déplacer la production.

La virtualisation dégrade-t-elle les performances ?

Avec des hyperviseurs de type 1 et des extensions matérielles, la pénalité est faible pour la plupart des charges. Les problèmes de performance proviennent généralement d'un mauvais dimensionnement du stockage ou de la mémoire, et non de l'hyperviseur lui-même.

Conclusion

La virtualisation a cessé d'être une technologie d'économie pour devenir la base sur laquelle repose pratiquement toute l'infrastructure moderne, du centre de données local au cloud public. Mais consolider ne signifie pas empiler des machines virtuelles jusqu'à ce que quelque chose tombe en panne : cela exige de dimensionner le stockage en IOPS, d'être conservateur avec la mémoire, de séparer les réseaux et de concevoir la haute disponibilité en cluster dès le départ. Le choix entre VMware, KVM, Hyper-V ou Proxmox dépend moins de savoir lequel est « le meilleur » que de l'écosystème existant, du budget de licences et de la tolérance à la dépendance vis-à-vis d'un fournisseur. Chez Summum Systèmes, nous concevons, dimensionnons et migrons des plateformes de virtualisation avec rigueur technique et un plan de continuité validé avant de toucher à la production.