Résoudre les problèmes de performances des machines virtuelles Azure sur Linux ou Windows
S’applique à : ✔️ Machines virtuelles Linux ✔️ Machines virtuelles Windows
Cet article décrit comment résoudre les problèmes de performances génériques des machines virtuelles en supervisant et en observant les goulots d’étranglement. Il offre des solutions possibles aux problèmes pouvant survenir. Outre la supervision, vous pouvez utiliser Perfinsights qui peut fournir un rapport avec les bonnes pratiques suggérées et les goulots d’étranglement clés concernant les E/S, le processeur et la mémoire. Perfinsights est disponible pour les machines virtuelles Windows et Linux dans Azure.
Cet article vous guide dans l’utilisation de la supervision pour diagnostiquer les goulots d’étranglement de performances.
Activation de la surveillance
Supervision d’une machine virtuelle IaaS Azure
Pour superviser la machine virtuelle invitée, utilisez la fonctionnalité de supervision de machine virtuelle Azure, qui vous informe de certaines conditions de ressources générales. Pour vérifier si les diagnostics de machine virtuelle sont activés, consultez Vue d’ensemble des journaux de ressource Azure. Si vous voyez le message suivant, cela signifie probablement que les diagnostics ne sont pas activés :
Activer les diagnostics de machine virtuelle à l’aide du portail Microsoft Azure
Pour activer les diagnostics de machine virtuelle :
Accédez à la machine virtuelle.
Cliquez sur Paramètres de diagnostic.
Sélectionnez le compte de stockage et cliquez sur Activer la supervision d’invités.
Vous pouvez cocher le compte de stockage utilisé pour l’installation des diagnostics sous l’onglet Agent, dans Paramètres de diagnostic.
Activer les diagnostics de compte de stockage à l’aide du portail Azure
Le stockage est un niveau très important lorsque nous avons l’intention d’analyser les performances d’E/S d’une machine virtuelle dans Azure. Pour obtenir des métriques liées au stockage, nous devons activer les diagnostics en tant qu’étape supplémentaire. Cela peut également être activé si nous souhaitons uniquement analyser les compteurs liés au stockage.
Identifiez le ou les comptes de stockage que votre machine virtuelle utilise en sélectionnant la machine virtuelle. Cliquez sur Paramètres, puis sur Disques :
Dans le portail, accédez au compte de stockage (ou aux comptes de stockage) de la machine virtuelle et suivez les étapes ci-dessous :
- Cliquez sur Vue d’ensemble pour le compte de stockage que vous avez trouvé à l’étape précédente.
- Les métriques par défaut sont affichées.
Cliquez sur l’une des métriques pour afficher un autre panneau avec davantage d’options de configuration et d’ajout de métriques.
Pour configurer ces options :
- Sélectionnez Métriques.
- Sélectionnez la ressource (compte de stockage).
- Sélectionnez l’espace de noms.
- Sélectionnez la métrique.
- Sélectionnez le type d’agrégation.
- Vous pouvez épingler cette vue dans le tableau de bord.
Observation des goulots d’étranglement
Après avoir terminé le processus d’installation initial pour les métriques nécessaires et activé les diagnostics pour la machine virtuelle et le compte de stockage associé, nous pouvons passer à la phase d’analyse.
Accès à la supervision
Sélectionnez la machine virtuelle Azure que vous souhaitez examiner, puis sélectionnez Supervision.
Intervalle de temps d’observation
Passez en revue vos données pour détecter la présence de goulots d’étranglement. Si votre ordinateur semble fonctionner correctement, mais qu’une baisse de performances récente a été signalée, examinez les données sur une plage de temps qui englobe les données de métriques de performance avant la modification signalée, au moment où le problème est survenu et après.
Vérifier la présence d’un goulot d’étranglement au niveau du processeur
- Modifiez le graphe.
- Définissez l’intervalle de temps.
- Vous devez ensuite ajouter le compteur : système d’exploitation invité pourcentage processeur
- Enregistrez. .
Processeur : observation des tendances
Quand vous examinez les problèmes de performances, tenez compte des tendances et déterminez si elles vous concernent. Dans les sections suivantes, nous allons utiliser les graphes de supervision du portail pour visualiser les tendances. Ils peuvent également être utiles pour faire des recoupements entre différents comportements de ressources sur la même période. Pour personnaliser les graphes, cliquez sur Plateforme de données Azure Monitor.
Pic : un pic peut être associé à une tâche planifiée ou un événement connu. Si vous pouvez identifier la tâche, déterminez si elle s’exécute au niveau de performance requis. Si les performances sont acceptables, vous n’aurez peut-être pas besoin d’augmenter les ressources.
Pic et niveau constant : ceci indique souvent une nouvelle charge de travail. S’il ne s’agit pas d’une charge de travail reconnue, activez la supervision sur la machine virtuelle pour déterminer le ou les processus à l’origine de ce comportement. Une fois le processus reconnu, déterminez si l’augmentation de la consommation est due à un code inefficace ou à une consommation normale. Si la consommation est normale, déterminez si le processus fonctionne au niveau de performance requis.
Niveau constant : déterminez si la machine virtuelle s’exécute toujours à ce niveau ou si cela se produit seulement depuis l’activation du diagnostic. Si c’est le cas, identifiez le ou les processus à l’origine du problème et envisagez d’ajouter d’autres ressources de ce type.
Augmentation régulière : une augmentation régulière de la consommation est souvent liée à un code inefficace ou à un processus utilisant la charge de travail utilisateur de façon plus intensive.
Solution en cas d’utilisation élevée du processeur
Si votre application ou votre processus ne s’exécute pas au niveau de performances approprié et que vous constatez une utilisation du processeur constante de 95 % ou plus, vous pouvez effectuer l’une des opérations suivantes :
- Pour une résolution immédiate, augmentez la taille de la machine virtuelle en choisissant un nombre de cœurs supérieur.
- Essayez de comprendre le problème : localisez l’application/le processus concerné et procédez à la résolution du problème en conséquence.
Si vous avez augmenté la taille de la machine virtuelle et que le processeur fonctionne toujours à 95 %, déterminez si ce paramètre améliore les performances ou le débit de l’application de façon à offrir un niveau acceptable. Si ce n’est pas le cas, procédez à la résolution du problème au niveau de l’application/du processus concerné.
Vous pouvez utiliser Perfinsights pour Windows ou Linux afin d’analyser le processus qui pilote la consommation du processeur.
Vérifier la présence d’un goulot d’étranglement au niveau de la mémoire
Pour voir les métriques :
- Ajoutez une section.
- Ajoutez une vignette.
- Ouvrez la galerie.
- Sélectionnez la vignette Utilisation de la mémoire et faites-la glisser. Une fois la vignette ancrée, cliquez avec le bouton droit et sélectionnez 6x4.
Mémoire : observation des tendances
La mesure d’utilisation de la mémoire indique la quantité de mémoire consommée avec la machine virtuelle. Essayez de comprendre la tendance et de déterminer si elle correspond à la période à laquelle vous rencontrez des problèmes. La mémoire disponible doit toujours être supérieure à 100 Mo.
Pic et niveau constant/consommation régulière et constante : une utilisation élevée de la mémoire n’est pas nécessairement à l’origine de mauvaises performances. En effet, certaines applications telles que les moteurs de bases de données relationnelles allouent une grande quantité de mémoire, et cette utilisation n’est pas toujours significative. Toutefois, la présence de plusieurs applications gourmandes en mémoire peut entraîner des pertes de performances. Ceci est dû à la contention de mémoire, qui provoque des insuffisances et des opérations de pagination et d’échange sur le disque. Ces pertes de performances représentent souvent une cause majeure de baisse des performances d’une application.
Consommation croissante constante : une application possible « réchauffement », cette consommation est courante parmi les moteurs de base de données qui démarrent. Cependant, cela peut également être le signe d’une fuite de mémoire dans une application. Identifiez l’application et déterminez si le comportement est attendu.
Utilisation du fichier de page ou d’échange : vérifiez si vous utilisez le fichier de pagination Windows (situé sur D :) ou le fichier d’échange Linux (situé sur /dev/sdb
) sont fortement utilisés. Si ces volumes ne contiennent rien à l’exception de ces fichiers, vérifiez si ces disques font l’objet d’un nombre élevé de lectures/écritures. Ce problème indique des conditions de mémoire insuffisante.
Solution en cas d’utilisation élevée de la mémoire
Pour résoudre les problèmes d’utilisation élevée de la mémoire, effectuez l’une des opérations suivantes :
- Pour une résolution immédiate ou en cas d’utilisation d’un fichier de pagination ou d’échange, augmentez la taille de la machine virtuelle en choisissant une mémoire supérieure, puis supervisez la machine virtuelle.
- Essayez de comprendre le problème : localisez les applications/processus concernés et identifiez les applications gourmandes en mémoire.
- Si vous savez de quelle application il s’agit, vérifiez si l’allocation de mémoire peut être limitée.
Si, après une mise à niveau vers une machine virtuelle plus grande, vous constatez toujours une augmentation régulière et constante jusqu’à 100 %, identifiez l’application/le processus concerné et procédez à la résolution du problème.
Vous pouvez utiliser Perfinsights pour Windows ou Linux afin d’analyser le processus qui pilote la consommation de mémoire.
Vérifier la présence d’un goulot d’étranglement au niveau du disque
Pour vérifier le sous-système de stockage de la machine virtuelle, vérifiez les diagnostics au niveau de la machine virtuelle Azure. Utilisez pour cela les compteurs fournis dans les diagnostics de machine virtuelle et les diagnostics de compte de stockage.
Pour la résolution des problèmes spécifiques à la machine virtuelle, vous pouvez utiliser Perfinsights pour Windows ou Linux, ce qui peut vous aider à analyser le processus qui pilote les E/S.
Notez que nous ne proposons pas de compteurs pour les comptes de stockage redondants interzones et Premium. En cas de problème lié à ces compteurs, ouvrez un cas de support.
Visualisation des diagnostics de compte de stockage dans la fonctionnalité de supervision
Pour utiliser les éléments ci-dessous, accédez au compte de stockage associé à la machine virtuelle dans le portail :
- Modifiez le graphe de supervision.
- Définissez l’intervalle de temps.
- Ajoutez les compteurs décrits dans les étapes ci-dessous.
- Enregistrez les modifications.
Disque : observation des tendances (stockage standard uniquement)
Pour identifier les problèmes de stockage, examinez les métriques de performances dans les diagnostics de compte de stockage et les diagnostics de machine virtuelle.
Pour chaque vérification ci-dessous, recherchez les principales tendances quand les problèmes surviennent dans l’intervalle de temps concerné.
Vérifier la disponibilité du stockage Azure – Ajouter la métrique de compte de stockage : disponibilité
Si vous constatez une baisse de la disponibilité, cela peut indiquer un problème avec la plateforme. Vérifiez l’état Azure. Si aucun problème n’y est indiqué, ouvrez une nouvelle demande de support.
Rechercher le délai d’expiration du stockage Azure - Ajouter les métriques du compte de stockage
- ClientTimeoutError
- ServerTimeOutError
- AverageE2ELatency
- AverageServerLatency
- TotalRequests
Les valeurs des métriques *TimeOutError indiquent qu’une opération d’E/S a pris trop de temps et a expiré. L’utilisation des étapes suivantes vous aidera à identifier les causes potentielles.
L’augmentation de la valeur AverageServerLatency en même temps que la valeur TimeOutErrors peut être liée à un problème de plateforme. Dans ce cas, ouvrez une nouvelle demande de support.
La valeur AverageE2ELatency représente la latence du client. Vérifiez le nombre d’IOPS effectuées par l’application. Vérifiez si la métrique TotalRequests présente une augmentation ou un niveau élevé constant. Cette métrique représente les IOPS. Si vous commencez à atteindre les limites du compte de stockage ou d’un disque dur virtuel unique, la latence peut être liée à la limitation.
Rechercher la limitation du stockage Azure - Ajouter les métriques du compte de stockage : ThrottlingError
Les valeurs de limitation indiquent que vous êtes limité au niveau du compte de stockage et que vous atteignez la limite d’IOPS du compte. Vous pouvez déterminer si vous atteignez le seuil d’IOPS en vérifiant la métrique TotalRequests.
Notez que chaque disque dur virtuel a une limite de 500 IOPS ou 60 Mbits/s, mais est restreint par la limite cumulée de 20 000 IOPS par compte de stockage.
Cette métrique ne vous permet pas d’identifier le blob à l’origine de la limitation ni ceux qui s’en trouvent affectés. Toutefois, vous atteignez les limites d’IOPS ou d’entrée/sortie du compte de stockage.
Pour déterminer si vous atteignez la limite d’IOPS, accédez aux diagnostics de compte de stockage et vérifiez la métrique TotalRequests pour voir si sa valeur approche 20 000. Déterminez si le modèle a subi un changement, si vous voyez la limite pour la première fois ou si cette limite se présente à un moment spécifique.
Avec les nouvelles offres de disque sous le stockage standard, les limites de débit et IOPS peuvent différer, mais la limite cumulée du compte de stockage standard est de 20 000 IOPS (le stockage Premium a des limites différentes au niveau du compte ou du disque). Apprenez-en plus sur les différentes offres de disque de stockage standard et les limites par disque :
Références
La bande passante du compte de stockage est mesurée par les métriques du compte de stockage : TotalIngress et TotalEgress. Les seuils de bande passante sont différents selon le type de redondance et les régions.
Comparez les valeurs TotalIngress et TotalEgress aux limites d’entrée et de sortie pour le type de redondance et la région du compte de stockage.
Vérifiez les limites de débit des disques durs virtuels attachés à la machine virtuelle. Ajoutez les métriques de machine virtuelle de lecture et écriture sur disque.
Les nouvelles offres de disque sous le stockage standard ont des limites de débit et IOPS différentes (les IOPS ne sont pas exposées par disque dur virtuel). Examinez les données pour voir si vous atteignez les limites du débit combiné (en Mbits/s) du ou des disques durs virtuels au niveau de la machine virtuelle à l’aide des métriques de lecture et écriture sur disque, puis optimisez la configuration du stockage de la machine virtuelle pour porter la capacité au-delà des limites d’un seul disque dur virtuel. Apprenez-en plus sur les différentes offres de disque de stockage standard et les limites par disque :
Solution en cas d’utilisation/latence élevée du disque
Réduire la latence du client et optimiser les E/S de machine virtuelle pour porter la capacité au-delà des limites d’un disque dur virtuel
Réduire la limitation
Si vous atteignez les limites supérieures des comptes de stockage, rééquilibrez les disques durs virtuels entre les comptes de stockage. Consultez Objectifs de performance et de scalabilité du stockage Azure.
Augmenter le débit et réduire la latence
En présence d’une application sensible à la latence, si vous avez besoin d’un débit élevé, migrez vos disques durs virtuels vers le stockage Premium Azure à l’aide des machines virtuelles de séries DS et GS.
Ces articles décrivent les scénarios spécifiques :
Contactez-nous pour obtenir de l’aide
Pour toute demande ou assistance, créez une demande de support ou posez une question au support de la communauté Azure. Vous pouvez également soumettre des commentaires sur les produits à la communauté de commentaires Azure.