Empfehlungen für die Reaktion auf Liveleistungsprobleme
Gilt für die folgende Checkliste zur Leistungseffizienz von Azure Well-Architected Framework:
PE:11 | Reagieren sie auf Liveleistungsprobleme. Planen Sie, wie Sie Leistungsprobleme beheben können, indem Sie klare Kommunikationslinien und Zuständigkeiten integrieren. Wenn eine problematische Situation auftritt, verwenden Sie das Gelernte, um Vorbeugende Maßnahmen zu identifizieren und in Ihre Workload zu integrieren. Implementieren Sie Methoden, um in ähnlichen Situationen schneller zu normalen Vorgängen zurückzukehren. |
---|
In diesem Leitfaden werden die bewährten Methoden für die Reaktion auf Liveleistungsprobleme beschrieben. Liveleistungsprobleme beziehen sich auf Echtzeit-Herausforderungen und Engpässe, die das optimale Funktionieren einer Workload beeinträchtigen können. Die sofortige Behandlung dieser Probleme erleichtert nicht nur die sofortige Erkennung und Korrektur von Leistungsproblemen, sondern stellt auch sicher, dass die Workload ihre Leistungsbenchmarks konsistent erfüllt. Wenn sie nicht behoben werden, kann dies zu Komplikationen wie Verlangsamungen, Abstürze und Nicht reagierenden Systemen führen und die Benutzererfahrung beeinträchtigen. Sie können auch verhindern, dass Benutzer ihre Aufgaben effizient erledigen, und wiederum den Ruf der organization.
Definitionen
Begriff | Definition |
---|---|
Datenkorrelation | Ausrichten von Protokollen, Metriken und Ereignissen aus verschiedenen Teilen Ihrer Workload, um die zugrunde liegenden Ursachen zu ermitteln. |
Analyse der Grundursache | Ein Prozess zum Identifizieren der zugrunde liegenden Faktoren, die für ein Problem verantwortlich sind. |
Selbstreparatur | Die Fähigkeit, Probleme ohne menschliches Eingreifen automatisch zu reparieren. |
Selbstprävention | Implementierungen innerhalb einer Workload, um potenzielle Probleme und Fehler zu verhindern. |
Wichtige Entwurfsstrategien
Wenn ein Liveleistungsproblem auftritt, müssen Sie mit den richtigen Daten und einem Plan vorbereitet sein, um auf das Problem zu reagieren. Dieser Plan sollte klare Kommunikationslinien und Zuständigkeiten enthalten. Das Hauptziel besteht darin, Lösungen zu implementieren, die eine schnelle Rückkehr zum regulären Betrieb ermöglichen und Erkenntnisse aus dem Incident liefern. Die Integration von Präventivmaßnahmen in Ihren Workflow ist eine zentrale Strategie. Das Ziel besteht darin, entweder zu verhindern, dass dasselbe Problem erneut auftritt, oder seine Auswirkungen auf die Leistung zu mindern, wenn es nicht verhindert werden kann.
Vorbereiten auf Probleme
Die ideale Reaktion auf Live-Site-Leistungsprobleme ist präzise und schnell. Präzision und Geschwindigkeit bei der Leistungssanierung erfordern Vorbereitung. Um effektiv auf Liveleistungsprobleme zu reagieren, ist es wichtig, wichtige Leistungsmetriken zu überwachen, die Grundursache der Probleme zu identifizieren und geeignete Lösungen oder Optimierungen zu implementieren. Um diese Schritte auszuführen, müssen Sie möglicherweise Workloadprotokolle analysieren, Leistungstests durchführen, Code oder Konfigurationen optimieren und Ressourcen skalieren. In den folgenden Beispielen werden einige wichtige Bereiche der Vorbereitung beschrieben:
Sie verfügen über genaue Architekturdiagramme. Ihre Architekturdiagramme sollten alle Komponenten enthalten und zeigen, wie sie interagieren. Die visuelle Darstellung kann dazu beitragen, Engpässe und Single Points of Failure zu identifizieren, die zu Leistungseinbußen oder Nichtverfügbarkeit führen können. Im Idealfall können Sie diese Probleme abfangen und entfernen, bevor sie Probleme verursachen, aber ein aktuelles Diagramm kann Ihnen helfen, Probleme in Stressmomenten zu ermitteln.
Überprüfen Sie den Datenzugriff. Daten und Protokolle aus Überwachungsprozessen sind wichtig, um in Echtzeit auf Leistungsprobleme zu reagieren und Ursachenanalysen durchzuführen. Es ist jedoch wichtig, die Integrität und Vertraulichkeit der Daten zu wahren. Die Reaktion auf Leistungsprobleme von Livewebsites erfordert häufig Zugriff auf zugrunde liegende Daten, auf die normalerweise nicht zugegriffen werden kann. Sie müssen sicherstellen, dass mitarbeiter Zugriff auf die Daten haben, die sie benötigen, wenn Probleme auftreten. Sie sollten jedoch nur zeitlich eingeschränkten Zugriff mit den geringsten Rechten gewähren, und Sie sollten diesen Zugriff auf autorisierte Mitarbeiter beschränken.
Automatische Warnungen festlegen. Warnungen können Ihnen helfen, Probleme zu identifizieren und zu beheben, sobald sie auftreten. Warnungen sollten Benachrichtigungen generieren, wenn die Workloadleistung von den Leistungsbaselines abweicht. Im Laufe der Zeit sollten Sie warnungskonfigurationen optimieren, um zu vermeiden, dass zu viele oder zu wenige Benachrichtigungen generiert werden. Die verwendeten Überwachungslösungen müssen genügend Daten sammeln, um Warnungen zu generieren. Diese Warnungen sollten sich an Leistungszielen und festgelegten Baselines orientieren. Sie sollten vermeiden, Warnungen zu Problemen zu generieren, die für Ihre Ziele relevant sind. Beispiele für Warnungen sind Beeinträchtigungen der CPU-Auslastung, des Arbeitsspeichers, der Antwortzeiten und der Datenbankleistung.
Erstellen eines Selektierungsplans
Das Erstellen eines Selektierungsplans umfasst die Entwicklung eines strukturierten Ansatzes zum Identifizieren, Eskalieren, Analysieren, Priorisieren und Kommunizieren von Leistungsproblemen der Livewebsite. Ein Selektierungsplan ist eine Strategie für die Reaktion auf Liveleistungsprobleme. Es stellt sicher, dass Leistungsunterbrechungen mit klaren Rollen und Verfahren umgehend und effektiv behoben werden. Die meisten Leistungsprobleme verdienen keine Notfallwiederherstellungsprotokolle, aber sie können die Workloadfunktionalität so beeinträchtigen, dass eine Selektierungsplanung erforderlich ist. Ein gut dokumentierter Selektierungsplan stellt sicher, dass alle Teammitglieder ausgerichtet sind und schnell handeln können, wodurch die Auswirkungen auf Benutzer und Workloads minimiert werden. Ein Selektierungsplan sollte die folgenden Komponenten enthalten:
Identifizierung und Überwachung: Implementieren Sie ein System, um Leistungsprobleme in Echtzeit zu identifizieren und zu überwachen. Sie sollten über eine Liste der Kontaktinformationen von Personen verfügen, die in der Lage sind, Entscheidungen zu treffen oder Probleme auf höhere Ebenen zu eskalieren. Der Plan sollte auch Rollen und Zuständigkeiten identifizieren. Es muss dokumentiert werden, welche Konten zugriff auf geschützte Informationen erhalten und für wie lange.
Eskalationsprozess: Definieren Sie einen klaren Eskalationsprozess, um sicherzustellen, dass Leistungsprobleme rechtzeitig an die entsprechenden Teams oder Einzelpersonen eskaliert werden. Die Prozessdefinition sollte Kontaktinformationen und Richtlinien für die Eskalation von Problemen enthalten.
Ursachenanalyse: Entwickeln Sie einen Prozess zum Durchführen einer Ursachenanalyse, um die zugrunde liegende Ursache jedes Leistungsproblems zu identifizieren. Der Prozess sollte die Analyse von Protokollen und Leistungsmetriken und die Durchführung von Diagnosetests umfassen, um die Ursache jedes Problems zu ermitteln.
Priorisierung: Richten Sie ein Priorisierungsframework ein, um den Schweregrad von Leistungsproblemen zu bestimmen und sie basierend auf ihrer Auswirkung auf die Workload und die Benutzer zu priorisieren.
Kommunikation: Erstellen Sie einen Kommunikationsplan, um die Beteiligten über die status von Leistungsproblemen und den Fortschritt ihrer Lösung auf dem Laufenden zu halten. Erwägen Sie regelmäßige Updates, status Berichte und klare Kommunikationskanäle.
Dokumentation: Dokumentieren Sie den Selektierungsplan, einschließlich aller Schritte, Prozesse und bewährten Methoden. Diese Dokumentation sollte für die Teammitglieder, die an der Reaktion auf Leistungsprobleme beteiligt sind, leicht zugänglich sein.
Entwickeln von Methoden zum Identifizieren und Beheben von Problemen
Das Beheben von Problemen mit der Liveleistung umfasst das Identifizieren und Behandeln von Faktoren, die zu Leistungseinbußen oder Ineffizienzen in einer Liveworkload führen können. Daten, die Sie während der Überwachung sammeln, sind von unschätzbarem Wert, wenn Sie leistungsbezogene Vorfälle untersuchen und beheben. Diese Daten stellen einen Verlaufsdatensatz von Leistungsmetriken bereit. Wenn Sie Überwachungsdaten zur Verfügung haben, können Sie die Grundursachen analysieren und mitwirkende Faktoren identifizieren. Sie sollten alle relevanten Überwachungsdaten verwenden, um jedes Leistungsproblem zu verstehen und zu beheben.
Verwenden der Ursachenanalyse
Die Ursachenanalyse erfordert Hypothesentests. Nachdem Sie die Überwachungsdaten überprüft haben, sollten Sie mögliche Ursachen für das Leistungsproblem auflisten und testen. Führen Sie die folgenden Schritte aus, um eine Ursachenanalyse für ein Liveleistungsproblem durchzuführen:
Sammeln von Informationen. Sammeln Sie so viele Informationen wie möglich über das Leistungsproblem. Beispiele hierfür sind Fehlermeldungen, Protokolle, Leistungsmetriken und alle anderen relevanten Daten.
Definieren Sie das Problem. Definieren Sie das Problem klar, indem Sie die Symptome und die Auswirkungen des Problems auf die Workload oder die Benutzer identifizieren.
Untersuchen sie mögliche Ursachen. Schränken Sie den Bereich der Analyse ein, indem Sie die spezifische Komponente oder den Bereich der Workload identifizieren, in der das Leistungsproblem auftritt. Identifizieren Sie potenzielle Ursachen für das Leistungsproblem basierend auf den gesammelten Informationen. Dieser Prozess kann die Analyse von Code, Konfigurationseinstellungen, Infrastruktur oder externen Abhängigkeiten umfassen.
Korrelieren von Daten. Untersuchen Sie die gesammelten Daten, um Muster, Anomalien oder Korrelationen zu identifizieren, die zu dem Leistungsproblem beitragen können. Die Datenkorrelation ist der Schlüssel zum Identifizieren von Leistungsproblemen und Ursachen. Dies kann das Überprüfen von Protokollen, die Analyse von Leistungsmetriken und das Durchführen von Tests umfassen.
Testhypothesen. Formulieren Sie Hypothesen basierend auf den potenziellen Ursachen, die Sie identifizieren. Führen Sie Tests durch, um Ihre Hypothesen zu überprüfen oder zu widerlegen. Sie sollten eine Testumgebung verwenden, um zu ermitteln, ob Sie den Fehler replizieren können.
Implementieren von Lösungen. Nachdem Sie eine Grundursache identifiziert haben, entwickeln und implementieren Sie Lösungen, um das Leistungsproblem zu beheben.
Überwachen und Überprüfen. Nachdem Sie die Lösungen implementiert haben, überwachen Sie die Workload kontinuierlich, um sicherzustellen, dass das Leistungsproblem behoben wird. Überprüfen Sie die Effektivität der Lösungen, indem Sie Leistungsmetriken und Benutzerfeedback überwachen.
Kompromiss: Die Schritte einer Ursachenanalyse, z. B. das Identifizieren möglicher Ursachen, das Testen von Hypothesen und das Dokumentieren der Analyse, können zeitaufwendig sein. Um Leistungsprobleme zu korrelieren, müssen Sie auch Daten sammeln und speichern. Die erforderliche Zeit und Infrastruktur kann den Betriebsteams erhebliche Arbeit und Kosten für die Workload hinzufügen.
Risiko: Wenn Sie eine Ursachenanalyse ohne geeignete Sicherheitsrichtlinien durchführen, besteht das Risiko, dass Sie vertrauliche Informationen verfügbar machen, wenn Sie Zugriff auf Protokolle und Daten gewähren.
Einbinden des Anbietersupports
Der Anbietersupport kann ein wesentlicher Schritt sein, wenn Sie mit laufenden Leistungsproblemen umgehen. Anbieter verfügen über das Fachwissen, die Tools, die Ressourcen und die Erfahrung, um Probleme mit ihren Produkten zu beheben. Ihre Supportvereinbarung mit Ihrem Lieferanten bestimmt die Supportebene, die ein Anbieter bereitstellt.
Es ist häufig am besten, parallel mit Anbietern zu arbeiten. Sie sollten einen Plan erstellen, damit einige Teammitglieder mit dem Herstellersupport zusammenarbeiten, während andere weiterhin Leistungsprobleme selektieren und beheben. Anbietersupportteams können auch Vorschläge machen, wie Sie Antworten auf ähnliche Ereignisse verhindern und automatisieren können.
Sie benötigen Kontaktinformationen für Ihre Mitarbeiter. Anbieter benötigen möglicherweise auch Zugriff auf Daten, um sich effektiv an der Problemlösung zu beteiligen. Sie benötigen einen Plan für die Authentifizierung und Autorisierung externer oder Gastkonten für den Zugriff auf Überwachungsdaten.
Aus Ergebnissen lernen
Nachdem Sie ein Problem mit der Live-Site-Leistung behoben haben, müssen Sie überprüfen, was passiert ist. Das Ziel besteht darin, aus Leistungsproblemen zu lernen und nicht nur Probleme zu identifizieren. Der beste Weg, um zu lernen, ist die Dokumentation. Dokumentieren Sie jedes Problem, und erläutern Sie, wie Sie es beheben können. Wenn ein Anbieter geholfen hat, arbeiten Sie mit dem Anbieter zusammen, um Ihre Dokumentation zu verbessern, Ihr Team zu schulen und Ihre Workload entsprechend zu ändern.
In der Dokumentation sollte angegeben werden, wie verhindert werden kann, dass jedes Problem erneut auftritt. Eine Möglichkeit, wiederkehrende Probleme zu vermeiden, besteht darin, eine Automatisierung einzuführen, um auf häufige Probleme zu reagieren. Die Automatisierung sollte einer Workload Eigenschaften zur Selbstreparatur und Selbstprävention hinzufügen. Zusammen mit der Automatisierung können Sie verfeinerte Warnungen erstellen, die Ihnen helfen, frühzeitig auf Leistungsproblemindikatoren zu reagieren.
Azure-Erleichterung
Entwickeln von Methoden zum Identifizieren und Beheben von Problemen: Azure bietet mehrere Tools, mit denen Sie auf Liveleistungsprobleme reagieren können:
Azure Monitor ist eine umfassende Überwachungslösung, die Einblicke in die Leistung und Integrität Ihrer Anwendungen und Infrastruktur bietet. Monitor bietet Features wie Metriken, Protokolle, Warnungen und Dashboards, mit denen Sie Leistungsprobleme überwachen und diagnostizieren können.
Application Insights ist ein APM-Dienst (Application Performance Management), mit dem Entwickler und DevOps-Experten Liveanwendungen überwachen können. Es erkennt automatisch Leistungsanomalien, sammelt Protokolle und Ereignisse auf Anwendungsebene und stellt Analysetools zum Diagnostizieren von Problemen bereit.
Log Analytics ist ein Dienst, der Protokolldaten aus verschiedenen Quellen sammelt und analysiert, einschließlich Anwendungen, virtuellen Computern und Azure-Ressourcen. Wenn Sie Log Analytics verwenden, können Sie Protokolldaten abfragen und analysieren, um Einblicke in die Leistung und das Verhalten Ihrer Anwendungen zu erhalten.
Verwandte Links
Prüfliste zur Leistungseffizienz
Sehen Sie sich den vollständigen Satz von Empfehlungen an.