Présentation complète des problèmes de performances des machines virtuelles VMware
Les problèmes matériels et logiciels entraînent parfois une baisse des performances des VMs. Cela peut nuire à la commodité et à l’agilité de votre environnement virtuel. Lisez cet article de blog pour découvrir les méthodes permettant d’améliorer les performances des VMs VMware lorsque celles-ci sont lentes. Découvrez les problèmes les plus courants qui entraînent une dégradation des performances des VMs et apprenez les solutions possibles.
Raisons d’améliorer les performances des VMs
Examinons les principales raisons d’effectuer des diagnostics et d’améliorer les performances des VMs :
- Les performances de la machine virtuelle sont plus lentes que celles d’une VM identique sur un autre hôte.
- Les applications s’exécutent plus lentement qu’elles ne le devraient. Mais lorsque vous migrez une VM vers un autre hôte, les performances des applications sont normales.
- Les applications prennent beaucoup de temps à se lancer.
- Les applications en cours d’exécution ne répondent pas.
- L’utilisation du processeur, de la mémoire ou du disque est de 100 %.
Processeur et mémoire
L’insuffisance des ressources matérielles est l’une des raisons les plus courantes du ralentissement des performances des VM. Si vous ne fournissez pas suffisamment de ressources de processeur à une VM, les logiciels qu’elle contient risquent de fonctionner lentement et de présenter des ralentissements. Pour résoudre ce problème, configurez la VM afin qu’elle utilise davantage de processeurs ou ajoutez des processeurs virtuels supplémentaires. Envisagez également de mettre à niveau le matériel de votre machine hôte si vous disposez d’un processeur ancien avec un nombre de processeurs, une mémoire cache et une fréquence faibles.
Lorsque vous définissez la quantité de RAM de la VM, assurez-vous que cette quantité est suffisante pour la VM. Dans le même temps, il doit y avoir suffisamment de RAM pour la machine hôte. Si vous ne fournissez pas suffisamment de mémoire pour une VM, le système d’exploitation invité (OS) utilise intensivement un fichier swap, et les performances globales de la VM sont lentes. Si vous fournissez une grande quantité de mémoire à une VM et que vous ne laissez pas suffisamment de mémoire pour le système d’exploitation hôte, celui-ci utilisera un fichier swap. Cela entraînera une dégradation des performances du système d’exploitation et des applications. De plus, les performances de la VM se dégraderont également dans ce cas. N’attribuez pas trop de mémoire à une VM et, dans le même temps, laissez-en une partie pour l’hôte. Fournissez toujours suffisamment de mémoire à l’hôte.
Lisez les conditions à remplir pour votre système d’exploitation et vos applications. Prenons un exemple. Votre machine hôte dispose de 8 Go de mémoire et exécute ESXi 7.0 ou Windows 10 avec VMware Workstation. Une machine virtuelle Windows Server 2019 est en cours d’exécution sur cette machine hôte. Si vous allouez 4 Go de RAM à une machine virtuelle Windows Server 2019, il reste 4 Go de RAM pour le système d’exploitation hôte. Cela suffit pour le bon fonctionnement du système d’exploitation hôte et du système d’exploitation invité (sans exécuter d’applications supplémentaires qui consomment des ressources). Le rapport est de 1:2 (4 Go/8 Go), et 1/2-1=-0,5 est la valeur actuelle MEM overcommit avg . Si vous fournissez 2 Go de RAM à une machine virtuelle exécutant Windows Server 2019, dans ce cas, les performances de la machine virtuelle seront lentes. Si vous fournissez 6 Go de RAM à une machine virtuelle Windows Server 2019, la quantité de mémoire disponible pour la machine hôte n’est pas suffisante, ce qui ralentit à la fois les machines physiques et virtuelles.
Si vous exécutez des applications lourdes telles que des bases de données sur des machines virtuelles, ajustez la configuration de la machine virtuelle et ajoutez davantage de ressources de processeur et de mémoire en conséquence.
La surallocation de mémoire est une situation dans laquelle l’allocation totale de ressources dépasse la capacité. Si vous disposez d’un hôte avec 8 Go de RAM et que vous exécutez cinq VMs configurées pour utiliser 2 Go de RAM chacune, toutes les VMs et la machine hôte peuvent afficher de faibles performances en raison d’une surallocation de mémoire (si toutes les VMs utilisent intensivement la mémoire). Si certaines VMs sont en cours d’exécution, mais qu’elles sont peu chargées, la mémoire est principalement utilisée par les VMs fortement chargées, car ESXi améliore l’utilisation de la mémoire. La surallocation de mémoire est utile dans les environnements de test.
Vérifiez également le ballonnement de la mémoire et la configuration de cette fonctionnalité afin de récupérer la mémoire inutilisée des VMs pour une utilisation efficace de la mémoire physique. Parfois, cette fonctionnalité peut affecter les performances des VMs lorsque celles-ci doivent utiliser un disque pour un échange.
Surcharge du processeur . VMware fournit des techniques pour une utilisation rationnelle des ressources, vous permettant de provisionner plus de processeurs virtuels pour les VMs qu’il n’y a de cœurs de processeur physiques sur l’hôte. Le paramètre de surengagement du processeur correspond au rapport entre le nombre de processeurs virtuels attribués aux VMs et le nombre de cœurs de processeur physiques sur l’hôte. Si la valeur est de 3:1, il n’y a aucune raison de s’inquiéter. Si la valeur est de 5:1, les performances des VMs diminuent. Si la valeur de surengagement du processeur est de 6:1 ou plus, les performances des VMs sont lentes, ce qui peut entraîner de nombreux problèmes.
Comment résoudre les problèmes liés au processeur et à la mémoire ?
Envisagez de mettre à niveau le matériel et d’ajouter de la mémoire RAM à la machine physique sur laquelle vous exécutez des machines virtuelles. Essayez de disposer d’une mémoire suffisante pour éviter que les systèmes d’exploitation hôte et invité n’utilisent des fichiers swap. Évitez la surallocation de mémoire.
Les fonctionnalités de gestion de l’alimentation du processeur peuvent parfois entraîner une baisse des performances des machines virtuelles. Essayez de les désactiver.
Vérifiez les ressources disponibles du processeur et de la mémoire sur l’hôte.
Sur ESXi, exécutez cette commande dans la ligne de commande pour vérifier si votre serveur est surchargé : esxtop
Vérifiez le paramètre « load average » (charge moyenne) de l’ .
1,0 – signifie que le processeur est pleinement utilisé
0,5 – signifie que le processeur est utilisé à moitié (50 %)
2,0 – signifie que le processeur est deux fois surchargé et que vous devez prendre des mesures
Appuyez sur ces touches pour modifier l’affichage : c – mesures du processeur (affichées par défaut), m – mémoire, n – réseau, d – disque. Appuyez sur la barre d’espace pour mettre à jour les valeurs affichées (les valeurs sont mises à jour automatiquement chaque 5 secondes). Appuyez sur h pour obtenir de l’aide et sur q pour quitter.
Vérifiez le paramètre MEM overcommit avg pour examiner l’utilisation de la mémoire sur ESXi. La valeur MEM overcommit avg est la suivante : le rapport entre la mémoire demandée et la mémoire disponible moins 1. La valeur recommandée pour ce paramètre est 0 ou moins.
Si vous utilisez VMware Workstation installé sur Linux ou Windows pour exécuter des VMs, utilisez les outils de surveillance système standard disponibles sur votre système d’exploitation.
Vérifiez l’utilisation du processeur/de la mémoire sur le système d’exploitation invité. Certaines applications peuvent ne pas fonctionner correctement et consommer toutes les ressources du processeur (cœur du processeur). Vérifiez les processus en cours d’exécution et identifiez celui qui sollicite le processeur. Vérifiez la température des processeurs physiques sur l’hôte, car une température trop élevée (supérieure à 80 °C) entraîne des problèmes de performances et constitue un risque pour le processeur (celui-ci pourrait être endommagé).
Mettez à niveau le matériel : installez un processeur plus puissant ou davantage de processeurs sur l’hôte. Vérifiez la configuration des VMs. Si le nombre de processeurs virtuels pour les VMs est supérieur au nombre nécessaire, réduisez-le afin de libérer des ressources pour l’hôte.
Dans VMware vSphere, vous pouvez utiliser un cluster DRS (Planificateur de ressources distribuées) pour migrer les VMs d’un hôte VMware ESXi surchargé vers un hôte VMware ESXi disposant de ressources matérielles libres.
Problèmes de disque
Les faibles performances d’un système de stockage entraînent des performances médiocres des machines virtuelles qui stockent des disques virtuels sur ce système de stockage. La latence du stockage est essentielle pour les performances des machines virtuelles. Essayez d’utiliser des disques SSD (Solid State Drive) pour stocker les machines virtuelles. Si vous ne pouvez pas utiliser de disques SSD, utilisez des disques durs (HDD) à 7200 tr/min ou 10000 tr/min. Les disques durs à 5400 tr/min offrent des performances très faibles. Il est préférable d’utiliser des disques avec une interface SAS.
Si vous utilisez VMware Workstation, vous pouvez stocker des VMs sur des disques SATA externes (eSata) ou USB 3.0 en tenant compte des recommandations ci-dessus. Ne déconnectez pas un disque externe avant d’avoir éteint la machine virtuelle.
Dans les environnements de production, utilisez des disques épais non extensibles ou préalloués. Les disques Eager-zeroed provisionnement épais sont plus rapides pour les premières opérations d’écriture.
Si vous utilisez un disque dur pour stocker des VMs, défragmentez ce disque physique ou cette matrice, puis défragmentez le disque virtuel dans les paramètres de la machine virtuelle. Utilisez des partitions pour réduire la fragmentation du disque. Installez un système d’exploitation sur une partition, stockez les fichiers utilisés par les applications (par exemple, une base de données) sur une autre partition.
Vérifiez si le micrologiciel d’un adaptateur HBA (Host Bus Adapter) est à jour. Mettez à jour le micrologiciel de votre adaptateur HBA sur un serveur.
Vérifiez l’état du disque. Effectuez un diagnostic du disque et du système de fichiers. Si le disque est endommagé, remplacez-le immédiatement.
Vérifiez les câbles d’interface (SAS, SATA).
Le chiffrement du disque réduit les performances en raison des surcoûts. Déplacez les fichiers de la machine virtuelle vers un stockage non chiffré si le chiffrement n’est pas essentiel pour la machine virtuelle, ou désactivez le chiffrement du disque.
Utilisez des contrôleurs RAID (matériels) indépendants qui offrent des performances et une fiabilité supérieures.
Assurez-vous qu’il y a de l’espace libre sur un disque à l’intérieur d’une VM. Un espace disque insuffisant entraîne une dégradation des performances, car le système d’exploitation et les applications ne peuvent pas écrire de fichiers temporaires.
Vous pouvez migrer votre VM vers un autre disque ou une autre baie de disques qui n’est pas surchargée. Dans VMware vSphere, envisagez d’utiliser DRS et Storage DRS. Réduisez le nombre de VMs en cours d’exécution sur le même LUN ou magasin de données.
Les instantanés
Instantanés de disques virtuels réduisent les performances des disques virtuels. Chaque instantané produit un fichier VMDK delta supplémentaire d’un disque virtuel. Le mécanisme de copie à l’écriture est utilisé. Chaque fichier VMDK delta contient les différences de données (journal des modifications) par rapport à un fichier VMDK parent, et une machine virtuelle lit toutes ces données lorsqu’elle interagit avec un disque de machine virtuelle. Par conséquent, les données sont lues à partir de plusieurs fichiers de disques virtuels sur le même disque physique, ce qui réduit les performances de la machine virtuelle. Pour la même raison, n’utilisez pas de fichiers VMDK fractionnés pour les VMs dans VMware Workstation (cette option est créée pour les anciens systèmes de fichiers qui ne prennent pas en charge les fichiers de plus de 4 Go). La surcharge du disque augmente à mesure que le nombre d’instantanés augmente. Instantanés sont généralement utilisés à des fins temporaires (par exemple, lorsque vous copiez des données pendant une tâche de sauvegarde ou que vous installez ou testez une application à l’intérieur d’une machine virtuelle). Supprimez ou validez les instantanés dès que possible.
Dans VMware Workstation, vous devez arrêter la machine virtuelle, fermer VMware Workstation et exécuter une commande dans laquelle vous définissez le chemin d’accès au fichier VMDK principal existant et le chemin d’accès à un nouveau fichier de disque virtuel : "C:\Program Files (x86)\username\VMware Workstation\vmware-vdiskmanager.exe" -r
"D:\VMs\VM-folder\vm-name.vmdk" -t 0 "D:\VMs\VM-folder\NewDisk.vmdk"
Reconfigurez ensuite la machine virtuelle pour utiliser un nouveau disque virtuel ou créez une nouvelle machine virtuelle, puis configurez-la pour utiliser le nouveau disque virtuel consolidé.
Sur ESXi, exécutez cette commande pour enlever les instantanés :
vmware-cmd path_to_vmx_file removesnapshots
ou
vim-cmd vmsvc/snapshot.removeall VMID
Vous pouvez afficher le VMID à l’aide de cette commande :
vim-cmd vmsvc/getallvms
Fusionnez les fichiers VMDK fractionnés s’ils sont utilisés. Effectuez cette opération sur la machine Windows sur laquelle VMware Workstation est installé à l’aide de la commande :
"C:\Program Files (x86)\VMware\VMware Workstation\vmware-vdiskmanager.exe" -r splitdisk.vmdk -t 0 mergeddisk.vmdk
Stockez les données sensibles aux performances sur un disque plus rapide.
VMware Tools
Assurez-vous que VMware Tools est installé sur le système d’exploitation invité. Outils VMware est un ensemble de pilotes et d’utilitaires utilisés pour améliorer les performances des machines virtuelles et l’expérience utilisateur. Les performances graphiques sont améliorées après l’installation de VMware Tools. La souris est synchronisée et fonctionne sans décalage. Avec VMware Tools, vous pouvez utiliser une machine virtuelle en mode plein écran avec des performances supérieures. Vérifiez si VMware Tools est installé.
Sous Windows, cliquez sur l’icône VMware Tools dans la barre d’état système près de l’horloge, ou accédez à C:Program FilesVMwareVMware Tools (il s’agit du répertoire par défaut) et exécutez la commande :
VMwareToolboxCmd.exe -v
Sous Linux, exécutez la commande dans la console :
vmware-toolbox-cmd -v
Vérifiez la version de VMware Tools sur les invités VM en lisant les journaux VM dans la ligne de commande ESXi :
grep toolbox /vmfs/volumes/datastore/vm_name/vmware.log
ou
grep build- /vmfs/volumes/datastore/vm_name/vmware.log
Dans VMware vSphere Client, vérifiez si VMware Tools est installé sur le système d’exploitation invité s’exécutant sur la VM. Les informations relatives à VMware Tools s’affichent dans l’onglet Résumé d’une machine virtuelle (statut et version).
Problèmes réseau
Si votre hôte VMware ESXi est connecté à un stockage tel qu’un SAN (Storage Area Network) ou un NAS (Network Attached Storage), assurez-vous que la vitesse du réseau est suffisante et que le réseau n’est pas surchargé.
Pour des performances optimales, vous devez utiliser des réseaux ESXi de gestion réseau, réseau vMotionet de stockage distincts dans VMware vSphere.
Configurez le regroupement de cartes réseau (agrégation de liens) sur les hôtes ESXi qui utilisent commutateurs virtuels.
Si la bande passante de votre réseau actuel n’est pas suffisante pour répondre aux conditions à remplir, envisagez une mise à niveau du réseau. Par exemple, installez des adaptateurs réseau, des commutateurs et des routeurs 5 Gbit ou 10 Gbit à la place des équipements 1 Gbit existants.
Antivirus
Assurez-vous que le logiciel antivirus de l’hôte n’analyse pas les fichiers du disque virtuel, car cela peut nuire aux performances de la machine virtuelle. Vous pouvez exclure les fichiers VMDK des répertoires VM de l’analyse antivirus.
Vérifiez l’état du système d’exploitation fonctionnant sur le système d’exploitation hôte et le système d’exploitation invité. Assurez-vous qu’il n’y a pas de virus ou d’autres logiciels malveillants ou ransomware. Envisagez d’utiliser des solutions antivirus spéciales qui fonctionnent avec VMware vShield sur les hôtes VMware ESXi au lieu d’installer un logiciel antivirus sur chaque système d’exploitation invité des VMs. Cette approche vous permet d’obtenir de meilleures performances et est rationnelle pour les environnements virtuels de grande taille. Si vous utilisez vShield, configurez correctement ce logiciel, car une configuration incorrecte peut dégrader les performances des machines virtuelles.
Problèmes liés à Hyper-V
Si vous utilisez VMware Workstation 15.5 ou une version plus récente qui prend en charge l’exécution de VMs VMware lorsque la fonctionnalité Hyper-V est installé sur un hôte Windows, les performances des VMs VMware peuvent être ralenties. Lorsque le rôle Hyper-V est installé, Hyper-V utilise directement les fonctionnalités de virtualisation du processeur telles que Intel VT-x ou AMD-V, qui ne sont pas disponibles pour VMware Workstation avec Virtual Machine Monitor (VMM) qui doit s’exécuter en mode privilégié. Le VMM de VMware Workstation s’exécute en mode utilisateur ou en mode ULM (au lieu du mode privilégié) pour des raisons de compatibilité, car le VMM ne peut pas accéder aux fonctionnalités de virtualisation matérielle du processeur lorsqu’elles sont utilisées par Hyper-V. Dans ce cas, le VMM utilise les API WHP de Microsoft qui agissent comme une couche supplémentaire entre le VMM et le processeur et réduisent les performances des machines virtuelles VMware.
Désinstallez Hyper-V et les fonctionnalités associées telles que Virtualization Based Security d’une machine Windows hôte. Après cela, VMM de VMware Workstation s’exécute en mode privilégié et fonctionne directement avec les fonctionnalités de virtualisation du processeur avec des performances élevées. Cette solution permet de corriger les performances lentes des machines virtuelles VMware.
Surveillance des performances des machines virtuelles
La surveillance des performances des machines virtuelles est une méthode largement utilisée pour détecter les surcharges et les problèmes de performances associés. La surveillance des performances des machines virtuelles vous aide à résoudre le problème. N’oubliez pas de surveiller les performances des machines virtuelles au niveau de l’hôte et non à l’intérieur d’un système d’exploitation invité. Un système d’exploitation invité n’est pas conscient des fonctionnalités de virtualisation, telles que l’allocation dynamique des ressources, et peut afficher des données incorrectes. VMware fournit des compteurs au niveau de l’hôte. Ces compteurs fournissent des informations correctes et sont utilisés pour la surveillance des performances des VMs. Sachant comment les informations sur les performances sont collectées à l’intérieur des VMs, VMware a développé des bibliothèques de compteurs spécifiques aux VMs qui vous permettent de voir les informations correctes sur les performances des VMs par l’utilitaire Perfmon dans les invités Windows. VMware Tools doit être installé sur un système d’exploitation invité pour la surveillance des performances des VMs. Pour vérifier les ressources matérielles consommées dans VMware vSphere Client, sélectionnez une machine virtuelle, ouvrez l’onglet Monitor (Moniteur), puis sélectionnez (Ressources) > Performance (Performances) > > (Aperçu) ou Performance (Performances) > > (Performances) > Advanced (Avancé) > (Aperçu) pour afficher des graphiques et d’autres informations. Sur la page (Aperçu) > (Performances), vous pouvez afficher l’utilisation du processeur, de la mémoire, du réseau et du stockage (espace libre, espace utilisé et performances d’entrée/sortie) en temps réel et pour la veille, la semaine précédente, le mois précédent, l’année précédente ou un intervalle personnalisé. Sélectionnez ces options dans les deux menus déroulants de cette page ( Période et Affichage ).
Cliquez sur Utilisation dans l’onglet Moniteur pour afficher des informations supplémentaires sur l’utilisation du processeur de la machine virtuelle, de la mémoire de la machine virtuelle et de la mémoire invitée.
De même, vous pouvez sélectionner un hôte ESXi ou cluster dans vSphere Client et surveiller les ressources utilisées et disponibles en temps réel et pour la période sélectionnée.
Conclusion
Cet article de blog a expliqué les principaux points auxquels vous devez prêter attention lorsque vous abordez les problèmes de performances des machines virtuelles, ainsi que les recommandations qui permettent d’améliorer les performances des machines virtuelles. Vous devez disposer d’un matériel offrant des performances suffisantes, éviter la surallocation de mémoire et configurer correctement les logiciels. Utilisez la surveillance des performances des machines virtuelles pour détecter les causes du ralentissement des performances des machines virtuelles.
Les dommages au disque sont le problème le plus dangereux qui entraîne un ralentissement des performances des machines virtuelles, car en plus des mauvaises performances des machines virtuelles, vous pouvez également perdre des données. Pour éviter la perte de données, effectuez régulièrement des sauvegardes de données VMware. Utilisez NAKIVO Backup & Replication pour la sauvegarde VMware, la solution universelle de protection des données qui prend en charge VMware vSphere 7.0 et offre de nombreuses fonctionnalités utiles pour améliorer la vitesse et la fiabilité des sauvegardes.



