Liste de vérification : mesure des performances sur Hyper-V
Bien que la plupart des principes d’analyse des performances d’un système d’exploitation invité installé sur une machine virtuelle Hyper-V soient identiques à l’analyse des performances d’un système d’exploitation installé sur une machine physique, de nombreuses méthodes de collecte sont différentes. Les sections ci-dessous doivent être utilisées comme référence rapide lors de l’évaluation des performances de votre solution BizTalk Server s’exécutant sur un système d’exploitation invité installé sur une machine virtuelle Hyper-V.
Mesure des performances d’E/S disque
Utilisez les compteurs d’analyseur de performances suivants pour mesurer les performances d’E/S disque sur un système d’exploitation invité installé sur une machine virtuelle Hyper-V :
Étape | Référence |
---|---|
Mesurer la latence du disque sur un système d’exploitation hôte Hyper-V : le meilleur indicateur initial des performances du disque sur un système d’exploitation hôte Hyper-V est obtenu à l’aide des compteurs de performances « \Logical Disk()\Avg. Disk s/Read » et « \Logical Disk(*)\Avg. Disk sec/Write ». Ces compteurs d’analyseur de performances mesurent le temps nécessaire aux opérations de lecture et d’écriture pour répondre au système d’exploitation. En règle générale, les temps de réponse moyens supérieurs à 15 ms sont considérés comme sous-optimaux. En règle générale, les temps de réponse moyens supérieurs à 15 ms sont considérés comme sous-optimaux. Cela est basé sur le temps de recherche standard d’un seul lecteur de disque de 7200 tr/min sans cache. L’utilisation de compteurs d’analyse des performances de disque logique et de disque physique est recommandée, car les applications et services Windows utilisent des lecteurs logiques représentés sous forme de lettres de lecteur dans lesquels le disque physique (LUN) présenté au système d’exploitation peut être composé de plusieurs lecteurs de disque physiques dans un tableau de disques. Utilisez la règle de base suivante lors de la mesure de la latence du disque sur le système d’exploitation hôte Hyper-V à l’aide des compteurs \Logical Disk(*)\Avg. Disk sec/Read ou \Logical Disk(*)\Avg. Disk sec/Write performance monitor : Cela est basé sur le temps de recherche standard d’un seul lecteur de disque de 7200 tr/min sans cache. L’utilisation de compteurs d’analyse des performances de disque logique et de disque physique est recommandée, car les applications et services Windows utilisent des lecteurs logiques représentés sous forme de lettres de lecteur dans lesquels le disque physique (LUN) présenté au système d’exploitation peut être composé de plusieurs lecteurs de disque physiques dans un tableau de disques. Utilisez la règle de base suivante lors de la mesure de la latence du disque sur le système d’exploitation hôte Hyper-V à l’aide des compteurs \Logical Disk(*)\Avg. Disk sec/Read ou \Logical Disk(*)\Avg. Disk sec/Write performance monitor : - 1 ms à 15 ms = Sain - 15 ms à 25 ms = Avertissement ou Moniteur - 26 ms ou plus = Critique, les performances seront négativement affectées **Remarque :* Les disques physiques installés sur un environnement non virtualisé offrent de meilleures performances que les disques accessibles via un système d’exploitation hôte Hyper-V. Si les performances du disque sont absolument critiques pour les performances globales de votre application, envisagez d’héberger des disques sur du matériel physique uniquement. Note: Lors de l’évaluation des performances d’E/S disque, veillez à configurer un logiciel antivirus pour exclure l’analyse des partitions de disque évaluées. L’analyse antivirus introduit une surcharge qui peut avoir un impact négatif sur les performances et l’asymétrie des résultats des tests. Mesurer la latence des disques sur les systèmes d’exploitation invités : les temps de réponse des disques utilisés par les systèmes d’exploitation invités peuvent être mesurés à l’aide des compteurs d’analyseur de performances utilisés pour mesurer les temps de réponse des disques utilisés par le système d’exploitation hôte Hyper-V. |
Pour plus d’informations sur l’analyse des performances des disques, consultez les ressources suivantes : - Section « Performances supplémentaires liées à l’exécution de SQL Server dans Hyper-V » du livre blanc « Exécution SQL Server 2008 dans un environnement Hyper-V – Meilleures pratiques et considérations relatives aux performances » - Exclure les problèmes de Disk-Bound - bonnes pratiques d’E/S de prédéploiement SQL Server - Section « Goulots d’étranglement des E/S » dans le livre blanc « Résolution des problèmes de performances dans SQL Server 2008 » - Comment identifier un goulot d’étranglement des performances de disque à l’aide de l’outil Microsoft Server Performance Advisor (SPA) |
Mesure des performances de la mémoire
Utilisez les compteurs d’analyse de performances suivants pour mesurer l’impact de la mémoire disponible sur les performances d’un système d’exploitation invité installé sur une machine virtuelle Hyper-V :
Étape | Référence |
---|---|
Mesurer la mémoire disponible sur le système d’exploitation hôte Hyper-V : la quantité de mémoire physique disponible pour le système d’exploitation hôte Hyper-V peut être déterminée en surveillant le compteur d’analyse de performances « \Memory\Available MBytes » sur l’ordinateur physique. Ce compteur indique la quantité de mémoire physique libre disponible pour le système d’exploitation hôte. Utilisez les règles générales suivantes lors de l’évaluation de la mémoire physique disponible disponible pour le système d’exploitation hôte :
Mesurer la mémoire disponible sur le système d’exploitation invité : la mémoire disponible pour les systèmes d’exploitation invités peut être mesurée avec les mêmes compteurs d’analyseur de performances que pour mesurer la mémoire disponible pour le système d’exploitation hôte Hyper-V. |
Pour plus d’informations sur l’impact de la mémoire physique disponible sur les performances du serveur d’applications, consultez l’article Exchange Server 2003, « Exclure les problèmes Memory-Bound ». |
Mesure des performances réseau
Hyper-V permet aux ordinateurs invités de partager la même carte réseau physique. Bien que cela aide à consolider le matériel, veillez à ne pas saturer l’adaptateur physique. Utilisez les méthodes suivantes pour garantir l’intégrité du réseau utilisé par les machines virtuelles Hyper-V :
Étape | Référence |
---|---|
Tester la latence du réseau | Effectuer un test ping sur chaque machine virtuelle pour garantir une latence réseau adéquate. Sur les réseaux locaux, attendez-vous à recevoir des temps de réponse inférieurs à 1 ms. |
Test de perte de paquets | Utilisez l’utilitaire pathping.exe pour tester la perte de paquets entre les machines virtuelles. Pathping.exe mesure la perte de paquets sur le réseau et est disponible avec toutes les versions de Windows depuis Windows 2000 Server. Pathping.exe envoie une rafale de 100 requêtes ping à chaque nœud réseau et calcule le nombre de pings retournés. Sur les réseaux locaux, il ne doit pas y avoir de perte de requêtes ping de l’utilitaire pathping.exe. |
Tester les transferts de fichiers réseau | Copiez un fichier de 100 Mo entre des machines virtuelles et mesurez la durée nécessaire pour terminer la copie. Sur un réseau sain de 100 Mbits (mégabits), un fichier de 100 Mo (mégaoctets) doit être copié en 10 à 20 secondes. Sur un réseau 1Gbit sain, un fichier de 100 Mo doit être copié en environ 3 à 5 secondes. Les temps de copie en dehors de ces paramètres indiquent un problème réseau. Une cause courante de transferts réseau médiocres se produit lorsque la carte réseau a « détecté automatiquement » un réseau demi-duplex de 10 Mo, ce qui empêche la carte réseau de tirer pleinement parti de la bande passante disponible. |
Mesurer l’utilisation du réseau sur le système d’exploitation hôte Hyper-V | Utilisez les compteurs d’analyseur de performances suivants pour mesurer l’utilisation du réseau sur le système d’exploitation hôte Hyper-V : \Network Interface(*)\Bytes Total/s : le pourcentage d’utilisation du réseau est calculé en multipliant Bytes Total/s par 8 pour le convertir en bits, multiplier le résultat par 100, puis diviser par la bande passante actuelle de la carte réseau. Utilisez les seuils suivants pour évaluer l’utilisation de la bande passante réseau : - Moins de 40 % de l’interface consommée = Saine - 41 %-64 % de l’interface consommée = Surveiller ou Mettre en garde - 65 à 100 % de l’interface consommée = Critique, les performances seront affectées \Interface réseau(*)\Longueur de la file d’attente de sortie : la longueur de la file d’attente de sortie mesure le nombre de threads en attente sur la carte réseau. S’il y a plus de 2 threads en attente sur la carte réseau, le réseau peut être un goulot d’étranglement. Les causes courantes de ce problème sont une faible latence du réseau et/ou des taux de collision élevés sur le réseau. Utilisez les seuils suivants pour évaluer la longueur de la file d’attente de sortie : - 0 = Sain - 1-2 = Surveiller ou prudence - Supérieur à 2 = Critique, les performances seront affectées. Assurez-vous que les cartes réseau de tous les ordinateurs (physiques et virtuels) de la solution sont configurées pour utiliser la même valeur pour l’unité de transmission maximale (MTU). Pour plus d’informations sur la configuration de la valeur MTU, consultez Annexe A : Paramètres de configuration TCP/IP. Si une longueur de file d’attente de sortie de 2 ou plus est mesurée, envisagez d’ajouter une ou plusieurs cartes réseau physiques à l’ordinateur physique qui héberge les machines virtuelles et de lier les cartes réseau utilisées par les systèmes d’exploitation invités à ces cartes réseau physiques. |
Mesurer l’utilisation du réseau sur les systèmes d’exploitation invités | Si une carte réseau sur la partition racine Hyper-V est occupée comme indiqué par les compteurs de l’analyseur de performances mentionnés ci-dessus, envisagez d’utiliser le compteur d’analyseur de performances « \Hyper-V Réseau virtuel Adapter(*)\Octets/s » pour identifier les cartes réseau virtuelles qui consomment le plus d’utilisation du réseau. |
Pour plus d’informations sur l’analyse des performances réseau, consultez Chapitre 15 - Mesure des performances des applications .NET.
Mesure des performances du processeur
Utilisez les méthodes suivantes pour évaluer les performances du processeur sur un système d’exploitation invité installé sur une machine virtuelle Hyper-V :
Mesurer l’utilisation du processeur du système d’exploitation invité - Traditionnellement, les performances du processeur peuvent être mesurées à l’aide du compteur d’analyse de performances « \Processor(*)\% Temps processeur ». Il ne s’agit pas d’un compteur précis pour évaluer l’utilisation du processeur d’un système d’exploitation invité, car Hyper-V mesure et signale cette valeur par rapport au nombre de processeurs alloués à la machine virtuelle. Si plus de processeurs sont alloués aux machines virtuelles en cours d’exécution que n’en sont réellement présents sur l’ordinateur physique, la valeur retournée par chaque système d’exploitation invité pour le compteur de performances « \Processor(*)\% Processor Time » sera faible, même si en fait l’utilisation du processeur est un goulot d’étranglement. Cela se produit parce que les processeurs virtuels utilisent les processeurs physiques en tourniquet. Chaque processeur virtuel essaie de s’allouer une part des ressources système globales. Par conséquent, dans un système de processeur physique à 4, chaque processeur virtuel essaie par défaut d’utiliser 25 % des ressources système. Si 8 processeurs virtuels sont créés, cela signifie que collectivement, les processeurs virtuels tenteront d’utiliser 200 % de la capacité du processeur du serveur. Dans ce cas, chaque processeur virtuel signale une faible utilisation mesurée par le compteur de performances « \Processor(*)\% Temps processeur » (par rapport au niveau attendu) et le basculement excessif du contexte entre les processeurs virtuels entraîne des performances médiocres pour chaque machine virtuelle. Dans ce scénario, envisagez de réduire le nombre de processeurs virtuels alloués aux machines virtuelles Hyper-V sur le système d’exploitation hôte. Hyper-V fournit des objets de performances d’hyperviseur pour surveiller les performances des processeurs logiques et virtuels. Un processeur logique est directement corrélé au nombre de processeurs ou de cœurs installés sur l’ordinateur physique. Par exemple, 2 processeurs quad core installés sur l’ordinateur physique seraient corrélés à 8 processeurs logiques. Les processeurs virtuels sont ce que les machines virtuelles utilisent réellement, et toute l’exécution dans les partitions racine et enfant se produit dans les processeurs virtuels.
Hyper-V fournit des objets de performances d’hyperviseur pour surveiller les performances des processeurs logiques et virtuels. Un processeur logique est directement corrélé au nombre de processeurs ou de cœurs installés sur l’ordinateur physique. Par exemple, 2 processeurs quad core installés sur l’ordinateur physique seraient corrélés à 8 processeurs logiques. Les processeurs virtuels sont ce que les machines virtuelles utilisent réellement, et toute l’exécution dans les partitions racine et enfant se produit dans les processeurs virtuels.
Pour mesurer avec précision l’utilisation du processeur d’un système d’exploitation invité, utilisez le compteur de performances « Processeur logique hyperviseur Hyperviseur Hyperviseur (_Total) % temps d’exécution total » sur le système d’exploitation hôte Hyper-V. Utilisez les seuils suivants pour évaluer l’utilisation du processeur du système d’exploitation invité à l’aide du compteur de performances « Processeur logique hyperviseur Hyperviseur (_Total) % temps d’exécution total » :
Moins de 60 % consommés = sain
60 % - 89 % consommé = Surveiller ou se mettre en garde
90 % - 100 % consommé = Critique, les performances seront affectées
Pour résoudre les problèmes de performances du processeur des systèmes d’exploitation invités sur un environnement Hyper-V, il est préférable de rechercher un équilibre entre les valeurs signalées par le système d’exploitation hôte pour « \Processeur logique hyperviseur Hyperviseur(_Total)\% durée d’exécution totale » (LPTR) et « \Hyper-V Hyperviseur Virtual Processor(_Total)\% Total Run Time » (VPTR). Si LPTR est élevé et que le VPTR est faible, vérifiez qu’il n’y a pas plus de processeurs alloués aux machines virtuelles que ceux physiquement disponibles sur l’ordinateur physique. Utilisez les compteurs « \Hyperviseur Virtual Processor(*)\%Guest Run Time » pour déterminer les processeurs virtuels qui consomment le processeur virtuel et désallouer les processeurs virtuels des machines virtuelles selon les besoins pour configurer un mappage un-à-un des processeurs virtuels aux processeurs logiques. Pour plus d’informations sur la configuration d’un mappage un-à-un des processeurs virtuels aux processeurs logiques, consultez la section « Optimisation des performances du processeur » dans Check-list : Optimisation des performances sur Hyper-V. Si vptr est élevé et LPTR faible, envisagez d’allouer des processeurs supplémentaires aux machines virtuelles s’il existe des processeurs logiques disponibles et si d’autres processeurs sont pris en charge par le système d’exploitation invité. Dans le cas où vptr est élevé, LPTR est faible, il existe des processeurs logiques disponibles à allouer, mais les processeurs supplémentaires ne sont pas pris en charge par le système d’exploitation invité. Envisagez de scale-out en ajoutant des machines virtuelles supplémentaires à l’ordinateur physique et en allouant des processeurs disponibles à ces machines virtuelles. Dans le cas où le VPTR et le LPTR sont élevés, la configuration repousse les limites de l’ordinateur physique et doit envisager un scale-out en ajoutant un autre ordinateur physique et des machines virtuelles Hyper-V supplémentaires à l’environnement. L’organigramme ci-dessous décrit le processus à utiliser lors de la résolution des problèmes de performances du processeur dans un environnement Hyper-V.
Si vptr est élevé et LPTR faible, envisagez d’allouer des processeurs supplémentaires aux machines virtuelles s’il existe des processeurs logiques disponibles et si d’autres processeurs sont pris en charge par le système d’exploitation invité. Dans le cas où vptr est élevé, LPTR est faible, il existe des processeurs logiques disponibles à allouer, mais les processeurs supplémentaires ne sont pas pris en charge par le système d’exploitation invité. Envisagez de scale-out en ajoutant des machines virtuelles supplémentaires à l’ordinateur physique et en allouant des processeurs disponibles à ces machines virtuelles. Dans le cas où le VPTR et le LPTR sont élevés, la configuration repousse les limites de l’ordinateur physique et doit envisager un scale-out en ajoutant un autre ordinateur physique et des machines virtuelles Hyper-V supplémentaires à l’environnement. L’organigramme ci-dessous décrit le processus à utiliser lors de la résolution des problèmes de performances du processeur dans un environnement Hyper-V.
Résolution des problèmes de performances du processeur dans un environnement Hyper-V
Notes
Les processeurs de système d’exploitation invités n’ont pas d’affinité définie avec les processeurs/cœurs physiques : l’hyperviseur détermine la façon dont les ressources physiques sont utilisées. Dans le cas de l’utilisation du processeur, l’hyperviseur planifie le temps du processeur invité au processeur physique sous la forme de threads. Cela signifie que la charge processeur des machines virtuelles sera répartie entre les processeurs de l’ordinateur physique. En outre, les machines virtuelles ne peuvent pas dépasser l’utilisation du processeur du nombre configuré de processeurs logiques, par exemple si une seule machine virtuelle est configurée pour s’exécuter avec 2 processeurs logiques sur un ordinateur physique avec 8 processeurs/cœurs, la machine virtuelle ne peut pas dépasser la capacité du processeur du nombre de processeurs logiques configurés (dans ce cas 2 processeurs).
Mesurer l’utilisation globale du processeur de l’environnement Hyper-V à l’aide des compteurs d’analyseur de performances Hyper-V - Pour mesurer l’utilisation du processeur, le système d’exploitation hôte est logiquement vu comme un autre système d’exploitation invité. Par conséquent, le compteur d’analyse « \Processor(*)\% Processor Time » mesure uniquement l’utilisation du processeur du système d’exploitation hôte. Pour mesurer l’utilisation totale du processeur physique du système d’exploitation hôte et de tous les systèmes d’exploitation invités, utilisez le compteur de performances « \Hyperviseur Logical Processor(_Total)\% Total Run Time ». Ce compteur mesure le pourcentage total de temps passé par le processeur exécutant à la fois le système d’exploitation hôte et tous les systèmes d’exploitation invités.
Utilisez les seuils suivants pour évaluer l’utilisation globale du processeur de l’environnement Hyper-V à l’aide du compteur d’analyseur de performances « \Hyperviseur Logique Hyperviseur(_Total)\% Temps d’exécution total » :
Moins de 60 % consommés = sain
60 % - 89 % consommé = Surveiller ou se mettre en garde
90 % - 100 % consommé = Critique, les performances seront affectées
Pour plus d’informations sur l’utilisation du processeur, consultez les ressources suivantes :
Chapitre 15 - Mesure des performances des applications .NET.