Suite à notre récent article sur les hyperviseurs, nous approfondissons et analysons les principaux hyperviseurs en termes de fonctionnalités, d'interfaces Web et de capacités de performances. Plus précisément, nous comparons KVM sur RHEL, Proxmox, VMWare ESXI 8 et Microsoft HyperV.
À la suite de la récente acquisition de VMWare par Broadcom, la communauté technologique a été en effervescence avec des discussions sur les changements, notamment le passage aux licences par abonnement. Cela a incité de nombreuses entreprises et MSP à rechercher des options d’hyperviseur plus rentables. En réponse à cet intérêt croissant, nous avons comparé les principaux hyperviseurs, les présentant comme des alternatives viables pour ceux qui envisagent de changer de fournisseur ou explorent les options du marché.
Notre objectif est d'analyser ces hyperviseurs en termes de fonctionnalités, d'interfaces Web et de capacités de performances. Plus précisément, nous comparons KVM sur RHEL, Proxmox, VMWare ESXI 8 et Microsoft HyperV.
KVM sur RHEL (RedHat Enterprise Linux)
KVM (Kernel-based Virtual Machine) est un hyperviseur open source basé sur Linux qui transforme Linux en hyperviseur de type 1 en intégrant des fonctionnalités de virtualisation de base dans le noyau Linux. Bien que KVM puisse être hébergé sur n'importe quelle distribution Linux, Red Hat Enterprise Linux (RHEL) est populaire en raison de sa prise en charge robuste et de ses fonctionnalités de niveau entreprise.
RHEL est une distribution Linux polyvalente qui peut être installée avec ou sans environnement de bureau. L'interface de gestion, Cockpit, est un service optionnel qui peut être ajouté lors de l'installation. Cockpit, un projet open source non exclusif à RHEL, facilite la gestion de base des instances et des services Linux. Cependant, il n’est pas principalement conçu comme un outil de gestion d’hyperviseur et ne dispose pas de certaines fonctionnalités telles que le gonflement de la mémoire. Cette limitation n'est pas due à l'hyperviseur mais plutôt à l'interface de gestion.
Pour une virtualisation et une orchestration de conteneurs plus avancées, Red Hat propose OpenShift, une plate-forme complète avec une approche axée sur le cloud qui peut également être hébergée sur site. OpenShift fournit des outils robustes pour gérer les applications et l'infrastructure conteneurisées, y compris des fonctionnalités avancées de mise en réseau, de stockage et de sécurité. Cependant, OpenShift a une exigence de production minimale d'au moins trois nœuds, ce qui le rend moins adapté aux petits déploiements.
nextmox
Proxmox, basé sur Debian, est une autre implémentation KVM qui gagne du terrain dans les laboratoires domestiques et les entreprises, mais pas encore à l'échelle d'ESXi ou d'HyperV. Il est gratuit et open source et propose une assistance et des mises à jour par abonnement.
Son interface utilisateur Web est supérieure à Cockpit pour les tâches de virtualisation, simplifie la gestion des ressources et inclut des fonctionnalités avancées et des réglages. Proxmox propose également des sauvegardes avancées, des instantanés et une gestion du pare-feu. Cependant, il ne correspond pas entièrement à l'étendue de VMWare, en particulier pour les tâches telles que la configuration de vGPU, qui nécessitent une intervention en ligne de commande. En termes de fonctionnalités, Proxmox reflète KVM sur RHEL, maintenant la parité avec les principaux hyperviseurs.
VMware ESXi
ESXi de VMWare est réputé pour son ensemble complet de fonctionnalités. Bien qu'il soit un hyperviseur autonome, toutes ses capacités sont débloquées avec vCenter, qui centralise la gestion.
Être avant tout un hyperviseur, construit à partir de zéro. L'interface utilisateur Web d'ESXi est la plus raffinée parmi ses concurrents. Il intègre presque toutes les fonctionnalités, y compris des fonctionnalités telles que la gestion des vGPU, dans l'interface Web, nécessitant rarement un accès à la console. Lié à des solutions comme VMWare Horizon, ESXi propose une solution VDI intégrée. Ses capacités autonomes et en cluster sont encore améliorées par des services tels que vCenter, VSAN et Horizon, ce qui en fait une option unique et robuste.
Hyper-V
L'Hyper-V de Microsoft s'est imposé, notamment dans les environnements centrés sur Windows. La gestion dans Hyper-V est gérée via Hyper-V Manager pour les petites configurations ou SCVMM pour les environnements plus grands. L'interface utilisateur est conviviale, en particulier pour ceux qui sont habitués à Windows, et offre également des fonctionnalités telles que la gestion des vGPU directement depuis l'interface utilisateur. Hyper-V excelle dans la virtualisation basée sur Windows et s'intègre bien à d'autres solutions Microsoft, telles qu'Azure, facilitant ainsi les mises à niveau et les migrations vers le cloud. Bien qu'il s'agisse d'un choix évident pour les environnements axés sur Windows, il n'est peut-être pas aussi adapté à d'autres cas d'utilisation.
Dans quelle mesure ont-ils performé ?
Comparons les performances de ces hyperviseurs et voyons comment ils se comparent les uns aux autres.
Méthodologie de test
Notre objectif principal est d'évaluer la surcharge de performances associée à chaque hyperviseur, en l'utilisant comme mesure clé de comparaison. Nos tests se concentrent sur la comparaison des performances multithread, de la bande passante mémoire et des performances d'E/S de stockage.
Nos benchmarks incluent Linux Kernel Compilation, Apache, OpenSSL, SQLite, Stream et FIO. Ils sont administrés au moins trois fois à l'aide de la suite de tests Phoronix et répétés jusqu'à ce qu'une faible variance des résultats soit obtenue. Pendant les tests, les fonctionnalités telles que les interfaces Web ou les environnements de bureau sont fermées pour garantir des conditions optimales.
Notre référence est la performance bare metal, et tous les chiffres sont mis à l'échelle par rapport à celle-ci, sous forme de pourcentage. Les mêmes tests sont ensuite répliqués pour chaque hyperviseur ; nous configurons une VM exécutant Ubuntu. Surtout, chaque VM se voit allouer l’intégralité des ressources de l’hôte. Les machines virtuelles sont configurées à l'aide des paramètres par défaut sans aucune optimisation supplémentaire.
Suite à certaines inquiétudes concernant les résultats, nous avons souhaité fournir un contexte supplémentaire derrière notre méthodologie de test. Les tests ont été conçus pour simuler l'expérience d'une personne nouvelle dans l'environnement, comme un utilisateur migrant à partir d'une configuration axée sur ESXi ou Hyper-V. Lorsque nous parlons de « valeurs par défaut », nous entendons les options présélectionnées lors de la création d'une VM, les seuls paramètres configurés étant ceux d'allocation des ressources (vCPU, RAM et stockage).
Des préoccupations ont également été soulevées quant aux raisons pour lesquelles toutes les ressources ont été allouées à ces tests. Il y a deux raisons principales à cette approche. La comparaison de ces résultats avec le bare metal comme référence fournit plus de contexte pour nos performances mesurées. Deuxièmement, cela nous permet de juger les performances des nœuds NUMA. Dans les environnements de production, il est difficile d'éviter les sauts de nœuds NUMA, il est donc essentiel d'inclure cet aspect dans nos tests.
Nous avons estimé que des éclaircissements supplémentaires étaient justifiés. Pour répondre à ces préoccupations, nous avons réexécuté tous les tests, y compris une configuration Proxmox optimisée et d'autres tests avec des allocations de ressources VM plus réalistes.
Dans nos nouveaux tests, Proxmox optimisé utilise l'hôte comme type de processeur, NUMA activé, q35 comme machine et OVMF (UEFI) comme BIOS. Le cache a été défini sur Write Back pour le stockage puisque nous utilisons un contrôleur Raid et l'émulation SSD a été activée. Dans tous les autres cas, avec tous les autres hyperviseurs, seules les ressources ont été allouées à la VM avec leurs interfaces utilisateur respectives, et aucun paramètre supplémentaire n'a été modifié.
Configuration de test
Pour nos tests, nous utilisons le Dell R760.
Spécifications :
- Intel Xeon Sapphire Rapids 6430
- 256GB DDR5
- 8 x 7.68TB Solidigme P5520 en RAID5 sur Dell PERC12
(Remarque: Le serveur utilisé pour les tests originaux a été mis à niveau pour accueillir les nouveaux processeurs Emerald Rapids. En conséquence, les résultats originaux ne peuvent pas être directement comparés aux nouveaux résultats. Par conséquent, tous les tests ont été réexécutés pour garantir la cohérence et l’exactitude.)
Ces nouveaux tests seront exécutés sur le Dell R760 avec refroidissement liquide direct.
Spécifications :
- Intel Xeon Emerald Rapids 8580
- 256GB DDR5
- 8 x 7.68TB Solidigme P5520 en RAID5 sur Dell PERC12
Résultats de test
Examinons plus en détail les résultats des tests individuels.
Le test Linux Kernel Compile, qui est gourmand en CPU et mesure le temps nécessaire à la compilation du noyau Linux, a montré qu'ESXi et Hyper-V ont réalisé des performances exceptionnelles, atteignant respectivement 96.79 % et 96.70 % des performances du système nu. KVM sur RHEL a atteint 66.61 %, tandis que l'action Proxmox était à la traîne avec 63.28 %. Cependant, Proxmox optimisé a obtenu un respectable 89.71 % de performances sans système d'exploitation.
Dans le benchmark Apache, qui évalue les performances du serveur Web Apache sous des connexions et requêtes simultanées élevées, ESXi et Hyper-V ont démontré des résultats impressionnants, avec respectivement 113.64 % et 129.62 % de performances bare metal. KVM sur RHEL a obtenu un score de 85.72 %, le stock Proxmox de 75.90 % et le Proxmox optimisé de 75.31 %. Notamment, ESXi et Hyper-V ont dépassé les performances du bare metal, probablement en raison des accélérateurs matériels des puces plus récentes, ce qui suggère que ces hyperviseurs peuvent utiliser ces accélérateurs sans configuration ni réglage manuels.
Le test OpenSSL, qui mesure les performances cryptographiques du processeur, a montré qu'ESXi, Hyper-V et KVM sur RHEL fonctionnaient remarquablement bien, avec respectivement 101.35 %, 101.27 % et 101.15 % de performances nues. Le stock Proxmox a eu du mal avec seulement 5.33 %, tandis que le Proxmox optimisé a obtenu un score de 98.91 %.
Dans le test de compression 7-Zip, qui évalue les performances de compression et de décompression, ESXi et Hyper-V ont démontré de solides performances, avec respectivement 95.98 % et 97.56 % de performances sans système d'exploitation. KVM sur RHEL, stock Proxmox et Optimized Proxmox se sont tous rapprochés à 85.81 %, 87.17 % et 87.43 %, respectivement.
Le test FIO, qui mesure les performances du sous-système de stockage avec une lecture et une écriture aléatoires de taille de bloc de 4 Ko, a montré qu'ESXi a obtenu 57.41 % en lecture aléatoire et 55.27 % en écriture aléatoire, tandis qu'Hyper-V a obtenu 72.95 % en lecture aléatoire et 85.71 %. pour une écriture aléatoire. KVM sur RHEL a atteint 74.60 % en lecture aléatoire et 85.37 % en écriture aléatoire. Stock Proxmox est arrivé à 54.71 % pour la lecture aléatoire et 44.71 % pour l'écriture aléatoire, tandis que Optimized Proxmox a obtenu les meilleurs résultats dans ce test avec 98.57 % pour la lecture aléatoire et 91.49 % pour l'écriture aléatoire.
Le test SQLite, qui mesure les performances de la base de données SQLite, a montré qu'ESXi a démontré 96.44 % de performances sans système d'exploitation. Hyper-V a obtenu un score de 55.94 %, tandis que KVM sur RHEL a obtenu un score de 62.52 %. Il est intéressant de noter que l'action Proxmox s'est établie à 85.27 %, un score meilleur que l'action Proxmox optimisée, qui s'est élevée à 68.86 %. La cause exacte n'est pas entièrement apparente, mais les tests ont été exécutés deux fois sur de nouvelles installations de l'hyperviseur et de la VM pour garantir la répétabilité.
Le benchmark Stream, qui évalue les performances de la bande passante mémoire, a montré qu'ESXi et Hyper-V ont démontré de solides performances, avec respectivement 98.30 % et 99.01 % de performances bare metal. KVM sur RHEL, le stock Proxmox et Optimized Proxmox ont obtenu des scores proches les uns des autres à 74.60 %, 76.24 % et 71.04 %, respectivement.
Dans l’ensemble, Hyper-V s’est imposé comme le plus performant, avec une moyenne de 92 % des performances du bare metal. ESXi était légèrement en retard avec une performance moyenne de 89 %, Proxmox optimisé était en troisième position avec 85 %, KVM sur RHEL est arrivé quatrième avec 79 % et l'action Proxmox était à la traîne à 61 %.
Dans un scénario d’allocation de ressources VM plus réaliste, les chiffres ont été normalisés en fonction du plus performant dans chaque catégorie. Pour le benchmark Linux Kernel Compile, ESXi a obtenu le meilleur score, KVM sur RHEL arrivant en deuxième position avec 97.90 % et Proxmox optimisé en troisième position avec 97.88 %. L'action Proxmox est arrivée quatrième avec 88.90 % et Hyper-V était à la traîne avec 66.05 %.
Pour le benchmark Apache, ESXi a une fois de plus obtenu les meilleurs résultats, KVM sur RHEL arrivant en deuxième position avec 76.25 % et Hyper-V en troisième position avec 76.14 %. Le Proxmox optimisé était également très proche avec 75.36 %, tandis que le titre Proxmox arrivait en dernière position avec 61.11 %.
Dans le benchmark OpenSSL, ESXi a maintenu sa position en obtenant le meilleur score, KVM sur RHEL arrivant en deuxième position avec 96.25 %, Proxmox optimisé en troisième position avec 94.48 %, Hyper-V n'obtenant que 48.96 % et le stock Proxmox terminant dernier avec 3.42 %. .
Pour le test de compression 7-Zip, ESXi a continué à obtenir les meilleurs résultats, avec KVM sur RHEL, Optimized Proxmox et stock Proxmox se rapprochant très près à 96.84 %, 96.59 % et 95.40 %, respectivement, tandis qu'Hyper-V était toujours à la traîne avec 64.48%.
Lors du test FIO, ESXi a obtenu les meilleurs résultats en lecture et en écriture aléatoires. Pour la lecture aléatoire, Proxmox optimisé est arrivé en deuxième position avec 86.81 %, Hyper-V en troisième position avec 71.02 %, KVM sur RHEL quatrième avec 68.44 % et le stock Proxmox en dernière position avec 45.05 %. Le test d'écriture aléatoire a raconté une histoire similaire, avec Hyper-V arrivant en deuxième position avec 73.43 %, KVM sur RHEL troisième avec 70.92 %, Proxmox optimisé quatrième avec 59.91 % et le stock Proxmox en dernière position avec 38.79 %.
Le test SQLite était plus intéressant, ESXi obtenant toujours les meilleurs résultats, le stock Proxmox arrivant en deuxième position et KVM sur RHEL, Hyper-V et Optimized Proxmox arrivant en dernier avec 49.23 %, 43.06 % et 42.61 %, respectivement.
Dans le test Stream, Proxmox optimisé a obtenu les meilleurs résultats, avec le stock Proxmox deuxième avec 83.56 %, KVM sur RHEL troisième avec 82.47 %, ESXi quatrième avec 71.21 % et Hyper-V dernier avec 63.02 %.
Pour aller plus loin
Dans l'ensemble, dans le pire des cas, toutes ressources confondues, Hyper-V a remporté la victoire avec une moyenne de 92.34 %, suivi par ESXi à 89.36 %, Proxmox optimisé à 85.16 %, KVM sur RHEL à 79.55 % et enfin le stock Proxmox. à 61.58% par rapport au bare metal. Avec une allocation de ressources plus réaliste, ESXi a remporté la victoire en obtenant le meilleur score dans tous les tests à l'exception de Stream, obtenant un score moyen de 96.4 %, suivi de Proxmox optimisé avec 81.7 %, KVM sur RHEL avec un score proche de 79.79 %, Hyper-V en retard. derrière avec seulement 63.27%, et l'action Proxmox arrive en dernière position avec 59.69%.
Lors de nos tests, ESXi a obtenu les meilleurs résultats en moyenne. Parmi les alternatives open source, Optimized Proxmox a démontré des performances louables, mais les performances étaient loin d'être idéales sans les optimisations. KVM sur RHEL était à la traîne dans notre test du pire des cas, mais était très proche de Proxmox optimisé dans des tests plus réalistes. Les résultats d'Hyper-V avec une allocation réaliste des ressources étaient surprenants ; une analyse plus approfondie expliquerait pourquoi les résultats ont été tels que nous l’avons vu, mais cela sort du cadre de cet article.
S'engager avec StorageReview
Newsletter | YouTube | Podcast iTunes/Spotify | Instagram | Twitter | TikTok | Flux RSS