Sur-allocation (Oversubscription) et bonnes pratiques du dimensionnement des Hyperviseurs


1. Introduction

Dans un environnement virtualisé, il est courant de sur-allouer (ou oversubscribe en anglais) des ressources CPU, c'est-à-dire d'attribuer un nombre total de vCPU (virtual CPU) supérieur au nombre de cœurs physiques (pCPU : physical CPU cores) d'un serveur hôte. L'idée derrière cette pratique est que toutes les machines virtuelles (VM) ne solliciteront pas leurs ressources au même moment ou de façon continue, permettant ainsi d'optimiser l'utilisation du matériel.

Toutefois, cette oversubscription doit être contrôlée. Un dimensionnement excessif des vCPU peut engendrer une dégradation des performances globales : temps de latence élevé, ralentissements voire contention CPU sur l'hôte. L'équilibre doit donc être trouvé entre la consolidation des VMs et la performance globale.

Dans cet article, nous allons donc passer en revue :


2. Définition de l'oversubscription

2.1. Qu'est-ce que l'oversubscription ?

2.2. Avantages et risques

Avantages :

Risques :


3. Bonnes pratiques générales pour le ratio vCPU/pCPU

3.1. Notion de ratio d'oversubscription

On parle souvent de ratio entre le nombre de vCPU alloués et le nombre de cœurs physiques (pCPU) d'un serveur. Ce ratio peut être exprimé sous forme :

Ratio = Nombre total de vCPU / Nombre total de cœurs physiques

Exemples de ratios courants :

3.2. Paramètres à prendre en compte

1. Type de charges de travail (workloads)

2. Profil d'utilisation

3. Qualité de service (SLA)

4. Capacités de gestion de la ressource CPU de l'hyperviseur


4. Spécificités par hyperviseur

4.1. Microsoft Hyper-V

1. Oversubscription CPU sur Hyper-V

2. Gestion dynamique

3. Bonnes pratiques spécifiques

4.2. Proxmox VE

1. Oversubscription CPU sur Proxmox

2. Gestion des ressources

3. Bonnes pratiques spécifiques

4.3. VMware ESXi

1. Oversubscription CPU sur VMware

2. Fonctionnalités clés

3. Bonnes pratiques spécifiques


5. Recommandations pratiques et synthèse


6. Exemples de scénarios

Scénario 1 : Environnement de production critique

Scénario 2 : Environnement de production mixte

Scénario 3 : Environnement de test / DevOps / Lab


7. Conclusion

L'oversubscription est un levier puissant pour tirer pleinement parti d'un hyperviseur.
Bien géré, il permet de déployer plus de VMs sur moins de serveurs physiques, réduisant les coûts et optimisant l'exploitation. Toutefois, la règle d'or est de toujours surveiller finement l'usage CPU (et les autres ressources) en fonction de la charge attendue des futures systèmes invités, afin de ne pas engendrer de contention nuisible pour les performances.

Chaque hyperviseur (Hyper-V, Proxmox, VMware ESXi) dispose de ses mécanismes de planification et d'outils de gestion de la ressource. Les ratios d'oversubscription courants varient entre 2:1 et 4:1 pour une production standard, 1:1 ou 2:1 pour des charges critiques, et des valeurs plus élevées (6:1 ou 8:1) dans des environnements de tests ou de charges légères.

En somme, il n'existe pas de "recette miracle" fixe ! Il faut évaluer la charge, démarrer avec prudence et ajuster en fonction du retour d'expérience et de la surveillance continue.
Ainsi, l'oversubscription deviendra un atout plutôt qu'une source de problèmes.


⬆️ Retour en haut de la page