61 votes

La machine virtuelle est-elle plus lente que la machine physique sous-jacente ?

Cette question est assez générale, mais plus spécifiquement, j'aimerais savoir si une machine virtuelle exécutant Ubuntu Enterprise Cloud sera plus lente que la même machine physique sans aucune virtualisation. Dans quelle mesure (1%, 5%, 10%) ?

Quelqu'un a-t-il mesuré la différence de performance d'un serveur web ou d'un serveur de données (virtuel VS physique) ?

Si cela dépend de la configuration, imaginons deux processeurs quad core, 12 Go de mémoire et un tas de disques SSD, exécutant un serveur d'entreprise ubuntu 64 bits. En plus de cela, une seule machine virtuelle est autorisée à utiliser toutes les ressources disponibles.

-2voto

drozdzynski Points 101

Désolé de ne pas être d'accord avec TomTom.

J'utilise VMware Workstation depuis un certain temps, principalement sur des systèmes natifs de Windows XP, Windows Vista et maintenant Windows Seven pour exécuter différentes saveurs de Windows ainsi qu'Ubuntu.

Oui, un environnement virtualisé est plus lent qu'un système natif et cela peut aller de 5 à 100 %.

Le problème principal n'est pas tant la charge du CPU que le manque de mémoire physique.

Disons que vous avez un Windows Seven 64 Ultimate fonctionnant sur un système de 4 Go qui, lorsqu'il est inactif, a besoin de presque 1,5 Go et utilise ~ 10 % du CPU. Le lancement de la couche supplémentaire de VMware vous coûtera ~ 300 Ko et la charge du CPU grimpera à ~ 20%. Ensuite, le lancement d'un système virtuel dans VMware demandera au minimum la quantité de mémoire que vous avez définie pour cette machine virtuelle, soit un minimum de 1 Go pour tout système décent. Vous verrez alors la charge CPU atteindre ~ 60 % si la machine virtuelle est Ubuntu et ~ 80 % pour n'importe quelle version d'un système d'exploitation Windows récent.

Maintenant, vous allez démarrer différentes applications dans cette machine virtuelle.

Si la quantité de mémoire que vous avez définie pour cette machine virtuelle n'est pas suffisante, le système virtualisé commencera à faire du swap, ce qui ralentira considérablement ses performances globales et sa réactivité.

Si la somme de la quantité de mémoire que vous avez définie pour cette machine virtuelle plus la quantité de mémoire nécessaire pour votre système natif est supérieure à la quantité de mémoire de votre système natif, alors c'est votre système natif qui va swapper, ralentissant à la fois le système natif et le système virtualisé.

Cela dépend donc d'abord de l'équilibre de la mémoire nécessaire pour les machines natives et virtualisées.

Maintenant, c'est presque la même chose avec la charge du CPU. Si une application virtualisée a besoin d'une charge CPU énorme, et qu'une application native a également besoin d'une charge CPU énorme, votre système natif devra gérer la priorité et équilibrer la charge CPU entre ses différentes applications, le système virtualisé n'étant rien d'autre qu'une application mais ce phénomène est un problème classique de charge CPU que vous pouvez contourner avec des priorités d'applications.

Ainsi, mon premier conseil si vous devez utiliser la virtualisation est de mettre un tas de mémoire dans votre machine, quel que soit le système d'exploitation que vous utilisez en natif ou dans une machine virtuelle.

Juste mes deux centimes.

Meilleures salutations.

-2voto

Paul Marshall Points 562

D'après mon expérience, les machines virtuelles sont toujours beaucoup plus lentes que les machines physiques.

Vous ne le remarquerez que lorsque vous exécuterez des applications qui sollicitent beaucoup le disque et le processeur. J'ai exécuté de nombreuses bases de données et serveurs web sur des machines virtuelles et, en tant qu'utilisateur final et d'après les retours d'autres utilisateurs (c'est-à-dire en accédant à l'application à partir d'un navigateur web distant), le décalage est assez important lorsque l'on utilise des machines virtuelles.

Bien sûr, une machine virtuelle correctement configurée peut atteindre 80 % (je ne connais pas le chiffre réel) ou plus de la vitesse de la machine physique, mais vous finissez par avoir à creuser vraiment profondément dans ce que l'application fait et comment la machine virtuelle fonctionne. Je suppose donc qu'il s'agit d'une équation de coût qui détermine la valeur du temps que vous consacrez à la configuration des machines virtuelles par rapport à l'achat et à l'hébergement d'un nouveau serveur.

Pour moi, les machines virtuelles n'ont rien à voir avec les performances, mais elles sont plus faciles à gérer et permettent bien sûr d'héberger plusieurs machines virtuelles peu performantes.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X