Recommandations pour répondre aux problèmes de performances en direct

S’applique à cette recommandation de liste de vérification de l’efficacité des performances d’Azure Well-Architected Framework :

PE :11 Répondre aux problèmes de performances en direct. Planifiez la façon de résoudre les problèmes de performances en incorporant des lignes de communication et des responsabilités claires. Lorsqu’une situation problématique se produit, utilisez ce que vous avez appris pour identifier les mesures préventives et les incorporer dans votre charge de travail. Implémentez des méthodes pour revenir à des opérations normales plus rapidement lorsque des situations similaires se produisent.

Ce guide décrit les meilleures pratiques pour répondre aux problèmes de performances en direct. Les problèmes de performances en direct font référence à des défis en temps réel et à des goulots d’étranglement qui peuvent entraver le fonctionnement optimal d’une charge de travail. La résolution rapide de ces problèmes facilite non seulement la détection et la correction immédiates des problèmes de performances, mais garantit également que la charge de travail répond de manière cohérente à ses critères de performances. Le fait de ne pas y remédier peut entraîner des complications, notamment des ralentissements, des plantages et une absence de réponse du système, et dégrader l’expérience utilisateur. Ils peuvent également empêcher les utilisateurs d’effectuer efficacement leurs tâches et, à leur tour, ternir la réputation de l’organization.

Définitions

Terme Définition
Corrélation des données Alignement des journaux, des métriques et des événements de différentes parties de votre charge de travail pour identifier les causes sous-jacentes.
Analyse de la cause racine Processus permettant d’identifier les facteurs sous-jacents responsables d’un problème.
Autoréparation La possibilité de réparer automatiquement les problèmes sans intervention humaine.
Auto-prévention Implémentations au sein d’une charge de travail pour éviter les problèmes et les défaillances potentiels.

Stratégies de conception

Lorsque vous rencontrez un problème de performances en direct, vous devez être préparé avec les données appropriées et un plan pour y répondre. Ce plan doit inclure des lignes de communication et des responsabilités claires. L’objectif principal est d’implémenter des solutions qui facilitent un retour rapide aux opérations régulières et fournissent des insights sur l’incident. L’intégration de mesures préventives dans votre flux de travail est une stratégie essentielle. L’objectif est d’éviter que le même problème se reproduise ou d’atténuer ses effets sur les performances s’il n’est pas évitable.

Se préparer aux problèmes

La réponse idéale aux problèmes de performances du site actif est précise et rapide. La précision et la rapidité de la correction des performances nécessitent une préparation. Pour répondre efficacement aux problèmes de performances en direct, il est essentiel de surveiller les métriques de performances clés, d’identifier la cause racine des problèmes et d’implémenter les solutions ou optimisations appropriées. Pour effectuer ces étapes, vous devrez peut-être analyser les journaux de charge de travail, effectuer des tests de performances, optimiser le code ou les configurations et mettre à l’échelle les ressources. Les exemples suivants décrivent quelques domaines critiques de préparation :

  • Disposer de diagrammes d’architecture précis. Vos diagrammes d’architecture doivent inclure tous les composants et montrer comment ils interagissent. La représentation visuelle peut aider à identifier les goulots d’étranglement et les points de défaillance uniques qui peuvent entraîner une dégradation ou une indisponibilité des performances. Dans l’idéal, vous interceptez et supprimez ces problèmes avant qu’ils ne provoquent des problèmes, mais le fait de disposer d’un diagramme à jour peut vous aider à identifier les problèmes dans les moments de stress élevé.

  • Vérifier l’accès aux données. Les données et les journaux des processus de supervision sont essentiels pour répondre aux problèmes de performances en temps réel et effectuer des analyses de la cause racine. Mais il est important de maintenir l’intégrité et la confidentialité des données. La réponse aux problèmes de performances de site actif nécessite souvent l’accès aux données sous-jacentes qui peuvent ne pas être normalement accessibles. Vous devez vous assurer que le personnel a accès aux données dont il a besoin en cas de problème. Toutefois, vous ne devez accorder qu’un accès limité dans le temps, avec des privilèges minimum, et vous devez limiter cet accès au personnel autorisé.

  • Définissez des alertes automatiques. Les alertes peuvent vous aider à identifier et à résoudre les problèmes dès qu’ils se produisent. Les alertes doivent générer des notifications lorsque les performances de la charge de travail s’écartent des bases de référence des performances. Au fil du temps, vous devez ajuster les configurations d’alerte pour éviter de générer trop ou trop peu de notifications. Les solutions de supervision que vous utilisez doivent collecter suffisamment de données pour générer des alertes. Ces alertes doivent s’aligner sur les objectifs de performances et les bases de référence établies. Vous devez éviter de générer des alertes sur des problèmes pertinents pour vos objectifs. Les dégradations de l’utilisation du processeur, de la mémoire, des temps de réponse et des performances de la base de données sont des exemples d’alertes.

Créer un plan de triage

La création d’un plan de triage implique de concevoir une approche structurée pour identifier, remonter, analyser, hiérarchiser et communiquer les problèmes de performances des sites en direct. Un plan de triage est une stratégie pour répondre aux problèmes de performances en direct. Il garantit que les interruptions de performances sont traitées rapidement et efficacement, avec des rôles et des procédures clairs. La plupart des problèmes de performances ne méritent pas les protocoles de récupération d’urgence, mais ils peuvent affecter suffisamment les fonctionnalités de charge de travail pour nécessiter une planification de triage. Un plan de tri bien documenté garantit que tous les membres de l’équipe sont alignés et peuvent agir rapidement, ce qui réduit l’impact sur les utilisateurs et les charges de travail. Un plan de tri doit inclure les composants suivants :

  • Identification et surveillance : implémentez un système pour identifier et surveiller les problèmes de performances en temps réel. Vous devez avoir une liste des coordonnées des personnes capables de prendre des décisions ou de faire remonter les problèmes à des niveaux plus élevés. Le plan doit également identifier les rôles et les responsabilités. Il doit documenter les comptes qui accèdent aux informations protégées et pendant combien de temps.

  • Processus d’escalade : définissez un processus d’escalade clair pour vous assurer que les problèmes de performances sont réaffectés aux équipes ou aux personnes appropriées en temps opportun. La définition du processus doit inclure des informations de contact et des instructions pour l’escalade des problèmes.

  • Analyse de la cause racine : développez un processus pour effectuer une analyse de la cause racine afin d’identifier la cause sous-jacente de chaque problème de performances. Le processus doit impliquer l’analyse des journaux et des métriques de performances, ainsi que l’exécution de tests de diagnostic pour identifier la source de chaque problème.

  • Hiérarchisation : établissez une infrastructure de hiérarchisation pour déterminer la gravité des problèmes de performances et les hiérarchiser en fonction de leur effet sur la charge de travail et les utilisateurs.

  • Communication : créez un plan de communication pour tenir les parties prenantes informées de la status des problèmes de performances et de la progression de leur résolution. Envisagez des mises à jour régulières, des rapports status et des canaux de communication clairs.

  • Documentation : documentez le plan de tri, y compris toutes ses étapes, processus et meilleures pratiques. Cette documentation doit être facilement accessible aux membres de l’équipe qui sont impliqués dans la réponse aux problèmes de performances.

Développer des méthodes pour identifier et résoudre les problèmes

La résolution des problèmes de performances en direct implique l’identification et la résolution de tous les facteurs susceptibles de provoquer une dégradation des performances ou des inefficacités dans une charge de travail active. Les données que vous collectez pendant la surveillance sont précieuses lorsque vous examinez et résolvez les incidents liés aux performances. Ces données fournissent un enregistrement historique des métriques de performances. Lorsque vous disposez de données de surveillance disponibles, vous pouvez analyser les causes racines et identifier les facteurs contributifs. Vous devez utiliser toutes les données de supervision pertinentes pour comprendre et résoudre chaque problème de performances.

Utiliser l’analyse de la cause racine

L’analyse de la cause racine nécessite des tests d’hypothèse. Après avoir examiné les données de surveillance, vous devez répertorier les causes potentielles du problème de performances et les tester. Pour effectuer une analyse de la cause racine d’un problème de performances en direct, vous pouvez effectuer les étapes suivantes :

  1. collecte des informations ; Collectez autant d’informations que possible sur le problème de performances. Par exemple, les messages d’erreur, les journaux, les métriques de performances et toutes les autres données pertinentes.

  2. Définissez le problème. Définissez clairement le problème en identifiant les symptômes et l’effet du problème sur la charge de travail ou les utilisateurs.

  3. Examiner les causes potentielles. Réduisez l’étendue de l’analyse en identifiant le composant ou la zone spécifique de la charge de travail où le problème de performances se produit. Identifiez les causes potentielles du problème de performances en fonction des informations collectées. Ce processus peut impliquer l’analyse du code, des paramètres de configuration, de l’infrastructure ou des dépendances externes.

  4. Mettre en corrélation les données. Explorez plus en détail les données collectées pour identifier les modèles, les anomalies ou les corrélations susceptibles de contribuer au problème de performances. La corrélation des données est essentielle pour identifier les problèmes de performances et les causes. Cela peut impliquer l’examen des journaux, l’analyse des métriques de performances et l’exécution de tests.

  5. Tester des hypothèses. Formulez des hypothèses basées sur les causes potentielles que vous identifiez. Effectuez des tests pour valider ou réfuter vos hypothèses. Vous devez utiliser un environnement de test pour voir si vous pouvez répliquer l’erreur.

  6. Implémentez des solutions. Une fois que vous avez identifié une cause racine, développez et implémentez des solutions pour résoudre le problème de performances.

  7. Surveiller et valider. Après avoir implémenté les solutions, surveillez en permanence la charge de travail pour vous assurer que le problème de performances est résolu. Validez l’efficacité des solutions en surveillant les métriques de performances et les commentaires des utilisateurs.

Compromis : les étapes d’une analyse de la cause racine, telles que l’identification des causes possibles, le test des hypothèses et la documentation de l’analyse, peuvent prendre du temps. Pour mettre en corrélation les problèmes de performances, vous devez également collecter et stocker des données. Le temps et l’infrastructure nécessaires peuvent ajouter un travail important aux équipes d’exploitation et des coûts à la charge de travail.

Risque : si vous effectuez une analyse de la cause racine sans garde-fous de sécurité appropriés, vous risquez d’exposer des informations sensibles lorsque vous fournissez l’accès aux journaux et aux données.

Impliquer le support du fournisseur

La prise en charge du fournisseur peut être une étape essentielle lorsque vous traitez les problèmes de performances en cours. Les fournisseurs disposent de l’expertise, des outils, des ressources et de l’expérience nécessaires pour résoudre les problèmes liés à leurs produits. Votre contrat de support avec votre fournisseur détermine le niveau de support fourni par un fournisseur.

Il est souvent préférable de travailler en parallèle avec les fournisseurs. Vous devez créer un plan pour que certains membres de l’équipe collaborent avec le support du fournisseur tandis que d’autres continuent à trier et à résoudre les problèmes de performances. Les équipes de support technique des fournisseurs peuvent également faire des suggestions sur la façon de prévenir et d’automatiser les réponses à des événements similaires.

Vous devez disposer des coordonnées de votre personnel. Les fournisseurs peuvent également avoir besoin d’accéder aux données pour s’engager efficacement dans la résolution des problèmes. Vous devez disposer d’un plan d’authentification et d’autorisation des comptes externes ou invités à accéder aux données de surveillance.

Apprendre à partir des résultats

Après avoir résolu un problème de performances de site en direct, vous devez passer en revue ce qui s’est passé. L’objectif est d’apprendre des problèmes de performances, pas seulement d’identifier les problèmes. La meilleure façon d’apprendre consiste à utiliser la documentation. Documentez chaque problème et expliquez comment le résoudre. Si un fournisseur vous a aidé, collaborez avec le fournisseur pour améliorer votre documentation, former votre équipe et modifier votre charge de travail en conséquence.

La documentation doit indiquer comment éviter que chaque problème ne se reproduise. Une façon d’éviter les problèmes récurrents consiste à introduire l’automatisation pour répondre aux problèmes courants. L’automatisation doit ajouter des qualités d’auto-réparation et d’auto-prévention à une charge de travail. En plus de l’automatisation, vous pouvez créer des alertes affinées qui vous aident à répondre rapidement aux indicateurs de problème de performances.

Facilitation Azure

Développement de méthodes pour identifier et résoudre les problèmes : Azure fournit plusieurs outils pour vous aider à répondre aux problèmes de performances en direct :

  • Azure Monitor est une solution de supervision complète qui fournit des informations sur les performances et l’intégrité de vos applications et de votre infrastructure. Surveiller offre des fonctionnalités telles que des métriques, des journaux, des alertes et des tableaux de bord pour vous aider à surveiller et à diagnostiquer les problèmes de performances.

  • Application Insights est un service de gestion des performances des applications (APM) qui aide les développeurs et les professionnels DevOps à surveiller les applications actives. Il détecte automatiquement les anomalies de performances, collecte les journaux et les événements au niveau de l’application et fournit des outils d’analyse pour diagnostiquer les problèmes.

  • Log Analytics est un service qui collecte et analyse les données de journal à partir de différentes sources, notamment les applications, les machines virtuelles et les ressources Azure. Lorsque vous utilisez Log Analytics, vous pouvez interroger et analyser les données de journal pour obtenir des informations sur les performances et le comportement de vos applications.

Liste de contrôle d’efficacité des performances

Reportez-vous à l’ensemble complet de recommandations.