Erkennen und Beheben potenzieller Probleme mithilfe von AIOps und maschinellem Lernen in Azure Monitor

Artificial Intelligence for IT Operations (AIOps) bietet leistungsstarke Möglichkeiten, die Dienstqualität und -zuverlässigkeit zu verbessern, indem maschinelles Lernen verwendet wird, um Daten, die Sie aus Anwendungen, Diensten und IT-Ressourcen in Azure Monitor sammeln, zu verarbeiten und automatisch darauf zu reagieren.

Die in Azure Monitor integrierten AIOps-Funktionen bieten Erkenntnisse, helfen bei der Problembehandlung und automatisieren datengesteuerte Aufgaben, z. B. die Vorhersage der Kapazitätsauslastung und der automatischen Skalierung, das Identifizieren und Analysieren von Anwendungsleistungsproblemen und das Erkennen anomalen Verhaltens in virtuellen Computern, Containern und anderen Ressourcen. Diese Features verbessern Ihre IT-Überwachung und -Vorgänge, ohne dass Kenntnisse im Zusammenhang mit maschinellem Lernen und weitere Investitionen erforderlich sind.

Azure Monitor bietet auch Tools, mit denen Sie eine eigene Machine Learning-Pipeline erstellen können, um neue Analyse- und Antwortfunktionen einzuführen und auf Daten in Azure Monitor-Protokollen zu reagieren.

In diesem Artikel werden die integrierten AIOps-Funktionen von Azure Monitor beschrieben und erläutert, wie Sie benutzerdefinierte Machine Learning-Modelle erstellen und ausführen und eine automatisierte Machine Learning-Pipeline für Daten in Azure Monitor-Protokollen erstellen können.

Integrierte Azure Monitor-AIOps- und Machine Learning-Funktionen

Überwachungsszenario Funktion BESCHREIBUNG
Protokollüberwachung Erkenntnisse zu Log Analytics-Arbeitsbereichen Bietet eine einheitliche Ansicht Ihrer Log Analytics-Arbeitsbereiche und maschinelles Lernen verwendet, um Erfassungsanomalien zu erkennen.
Kusto-Abfragesprache (KQL)-Zeitreihenanalyse und Funktionen für maschinelles Lernen Benutzerfreundliche Tools zum Generieren von Zeitreihendaten, zum Erkennen von Anomalien, zur Prognose und zur Durchführung von Ursachenanalysen direkt in Azure Monitor-Protokollen, ohne dass Sie fundierte Kenntnisse über Data Science und Programmiersprachen benötigen.
Microsoft Copilot für Azure Hilft Ihnen bei der Verwendung von Log Analytics, um Daten zu analysieren und Probleme zu beheben. Generiert Beispiel-KQL-Abfragen basierend auf Eingabeaufforderungen, z. B. „Liegen Fehler in Containerprotokollen vor?“.
Überwachung der Anwendungsleistung Intelligente Ansicht der Anwendungsübersicht Ordner Abhängigkeiten zwischen Diensten zu und hilft Ihnen, Leistungsengpässe oder Fehlerhotspots in allen Komponenten Ihrer verteilten Anwendung zu erkennen.
Intelligente Erkennung Analysiert die Telemetriedaten, die Ihre Anwendung an Application Insights sendet, warnt bei Leistungsproblemen und Fehleranomalien und identifiziert potenzielle Ursachen für Anwendungsleistungsprobleme.
Metrikwarnungen Dynamische Schwellenwerte für Metrikwarnungen Lernt Metrikmuster, legt Warnungsschwellenwerte basierend auf Verlaufsdaten automatisch fest und identifiziert Anomalien, die auf Dienstprobleme hinweisen können.
VM-Skalierungsgruppen Vorhersagbare Autoskalierung Prognostiziert die gesamten CPU-Anforderungen einer VM-Skalierungsgruppe basierend auf historischen CPU-Auslastungsmustern und wird automatisch hochskaliert, um diese Anforderungen zu erfüllen.

Maschinelles Lernen in Azure Monitor-Protokollen

Verwenden Sie die integrierten Zeitreihenanalysen und Machine Learning-Funktionen, Operatoren und Plug-Ins der Kusto-Abfragesprache, um Erkenntnisse über Dienstintegrität, Nutzung, Kapazität und andere Trends zu gewinnen, Vorhersagen zu generieren und Anomalien in Azure Monitor-Protokollen zu erkennen.

Um mehr Flexibilität zu erlangen und Ihre Fähigkeit zum Analysieren und Reagieren auf Daten zu erweitern, können Sie auch Ihre eigene Machine Learning-Pipeline für Daten in Azure Monitor-Protokollen implementieren.

In dieser Tabelle werden die Vorteile und Einschränkungen der Verwendung der integrierten Machine-Learning-Funktionen von KQL und das Erstellen einer eigenen Machine Learning-Pipeline sowie Links zu Tutorials verglichen, die die Implementierung der einzelnen Funktionen veranschaulichen:

Integrierte KQL Machine Learning-Funktionen Erstellen Ihrer eigenen Machine Learning-Pipeline
Szenario ✅ Anomalieerkennung, Grundursache und Zeitreihenanalyse
✅ Anomalieerkennung, Grundursache und Zeitreihenanalyse
Erweiterte Analyse und AIOPs-Szenarien
Vorteile 🔹Sie können sehr schnell loslegen.
🔹Keine Data Science-Kenntnisse und Programmierkenntnisse erforderlich.
🔹 Optimale Leistung und Kosteneinsparungen.
🔹Unterstützt größere Skalierungen.
🔹Ermöglicht erweiterte, komplexere Szenarien.
🔹Flexibilität bei der Auswahl von Bibliotheken, Modellen, Parametern.
Dienstgrenzwerte und Datenvolumes Azure-Portal oder Abfrage-API-Protokollabfragelimits abhängig davon, ob Sie im Portal arbeiten oder die API verwenden, z. B. über ein Notebook. 🔹Abfrage-API-Protokollabfragelimits, wenn Sie Daten in Azure Monitor-Protokollen als Teil Ihrer Machine Learning-Pipeline abfragen. Andernfalls gibt es keine Azure-Diensteinschränkungen.
🔹Kann größere Datenvolumes unterstützen.
Integration Keine erforderlich. Ausführung mithilfe von Log Analytics im Azure-Portal oder über ein integriertes Jupyter Notebook. Erfordert die Integration in ein Tool, z. B. Jupyter Notebook. In der Regel würden Sie auch in andere Azure-Dienste wie Azure Synapse Analytics integrieren.
Leistung Optimale Leistung unter Verwendung der Azure Data Explorer-Plattform, die verteilt in hoher Skalierung ausgeführt wird. Führt eine geringe Latenz beim Abfragen oder Exportieren von Daten ein, je nachdem, wie Sie Ihre Machine Learning-Pipeline implementieren.
Modelltyp Lineares Regressionsmodell und andere Modelle, die von KQL-Zeitreihenfunktionen mit einer Reihe konfigurierbarer Parameter unterstützt werden. Vollständig anpassbares Machine Learning-Modell oder Anomalieerkennungsmethode.
Kosten Keine zusätzlichen Kosten: Je nachdem, wie Sie Ihre Machine Learning-Pipeline implementieren, fallen möglicherweise Gebühren für den Export von Daten, die Erfassung bewerteter Daten in Azure Monitor-Protokolle und die Verwendung anderer Azure-Dienste an.
Tutorial Erkennen und Analysieren von Anomalien mit den KQL-Funktionen für maschinelles Lernen in Azure Monitor Analysieren von Daten in Azure Monitor-Protokollen mithilfe eines Notebooks

Erstellen einer eigenen Machine Learning-Pipeline für Daten in Azure Monitor-Protokollen

Erstellen Sie Ihre eigene Machine Learning-Pipeline für Daten in Azure Monitor-Protokollen, um neue AIOps-Funktionen einzuführen und erweiterte Szenarien zu unterstützen, z. B.:

  • Suche nach Sicherheitsangriffen mit komplexeren Modellen als denen von KQL.
  • Erkennen von Leistungsproblemen und Beheben von Fehlern in einer Webanwendung.
  • Erstellen von mehrstufigen Flows, Ausführen von Code in jedem Schritt basierend auf den Ergebnissen des vorherigen Schritts.
  • Automatisieren der Analyse von Azure Monitor-Protokolldaten und Bereitstellen von Erkenntnissen aus mehreren Bereichen, einschließlich Infrastrukturintegrität und Kundenverhalten.
  • Korrelieren von Daten in Azure Monitor-Protokollen mit Daten aus anderen Quellen.

Es gibt zwei Ansätze, um Daten in Azure Monitor-Protokollen für Ihre Machine Learning-Pipeline verfügbar zu machen:

In dieser Tabelle werden die Vorteile und Einschränkungen der Ansätze zum Abrufen von Daten für Ihre Machine Learning-Pipeline verglichen:

Abfragen von Daten in Azure Monitor-Protokollen Exportieren von Daten
Vorteile 🔹Sie können schnell loslegen.
🔹Erfordert nur grundlegende Data Science- und Programmierkenntnisse.
🔹Minimale Latenz und Kosteneinsparungen.
🔹Unterstützt größere Skalierungen.
🔹Keine Abfrageeinschränkungen.
Daten exportiert? Nein Ja
Diensteinschränkungen Abfrage-API-Protokollabfragelimits und Benutzerabfragedrosselung. Sie können die Einschränkungen der Abfrage-API bis zu einem bestimmten Grad überwinden, indem Sie größere Abfragen in Blöcke aufteilen. Keine aus Azure Monitor.
Datenvolumes Analysieren Sie mehrere GB an Daten oder einige Millionen Datensätze pro Stunde. Unterstützt große Datenmengen.
Machine Learning-Bibliothek Für kleine bis mittelgroße Datasets verwenden Sie in der Regel Machine Learning-Bibliotheken mit einem Knoten, z. B. Scikit Learn. Für große Datasets verwenden Sie in der Regel Big Data-Machine Learning-Bibliotheken wie SynapseML.
Latenz Minimal. Führt eine geringe Latenz beim Exportieren von Daten ein.
Kosten Keine zusätzlichen Gebühren in Azure Monitor.
Kosten für Azure Synapse Analytics, Azure Machine Learning oder einen anderen Dienst, falls verwendet.
Kosten für Datenexport und externe Speicherung.
Kosten für Azure Synapse Analytics, Azure Machine Learning oder einen anderen Dienst, falls verwendet.

Tipp

Erstellen Sie eine Hybridpipeline, um von den besten Eigenschaften beider Implementierungsansätze zu profitieren. Ein gängiger Hybridansatz besteht darin, Daten für das Modelltraining zu exportieren, das große Datenmengen umfasst, und den Ansatz der Abfragedaten in Azure Monitor-Protokollen zu verwenden, um Daten zu untersuchen und neue Daten zu erfassen, um Latenz und Kosten zu reduzieren.

Implementieren der Schritte des Machine Learning-Lebenszyklus in Azure Monitor-Protokollen

Das Einrichten einer Machine Learning-Pipeline umfasst in der Regel alle oder einige der unten beschriebenen Schritte.

Es gibt verschiedene Azure- und Open Source Machine Learning-Bibliotheken, mit denen Sie Ihre Machine Learning-Pipeline implementieren können, einschließlich Scikit Learn, PyTorch, Tensorflow, Spark MLlib und SynapseML.

Diese Tabelle beschreibt jeden Schritt und enthält allgemeine Anleitungen und einige Beispiele für die Implementierung dieser Schritte basierend auf den Implementierungsansätzen, die unter Erstellen einer eigenen Machine Learning-Pipeline für Daten in Azure Monitor-Protokollen beschrieben sind:

Schritt BESCHREIBUNG Abfragen von Daten in Azure Monitor-Protokollen Exportieren von Daten
Durchsuchen von Daten Untersuchen und verstehen Sie die von Ihnen gesammelten Daten. Die einfachste Möglichkeit, Ihre Daten zu untersuchen, ist die Verwendung von Log Analytics, das eine Vielzahl von Tools zum Untersuchen und Visualisieren von Daten in der Azure-Portal bietet. Sie können auch Daten in Azure Monitor-Protokollen mithilfe eines Notebooks analysieren. Um Protokolle außerhalb von Azure Monitor zu analysieren, exportieren Sie Daten aus Ihrem Log Analytics-Arbeitsbereich, und richten Sie die Umgebung in dem von Ihnen ausgewählten Dienst ein.
Ein Beispiel zum Untersuchen von Protokollen außerhalb von Azure Monitor finden Sie unter Analysieren von Daten, die mithilfe von Synapse aus Log Analytics exportiert wurden.
Erstellen und Trainieren eines Machine Learning-Modells Modelltraining ist ein iterativer Prozess. Forscher oder Data Scientists entwickeln ein Modell, indem sie die Trainingsdaten abrufen und bereinigen, Features entwickeln, verschiedene Modelle ausprobieren und Parameter optimieren und diesen Zyklus wiederholen, bis das Modell genau und robust ist. Für kleine bis mittelgroße Datasets verwenden Sie in der Regel Machine Learning-Bibliotheken mit einem Knoten, z. B. Scikit Learn.
Ein Beispiel für das Trainieren eines Machine Learning-Modells für Daten in Azure Monitor-Protokollen mithilfe der Scikit Learn-Bibliothek finden Sie in diesem Beispiel-Notebook: Erkennen von Anomalien in Azure Monitor-Protokollen mithilfe von Machine Learning-Techniken.
Für große Datasets verwenden Sie in der Regel Big Data-Machine Learning-Bibliotheken wie SynapseML.
Bereitstellen und Bewerten eines Modells Bewertung ist der Prozess, bei dem ein Machine Learning-Modell auf neue Daten angewendet wird, um Vorhersagen zu erhalten. Die Bewertung muss in der Regel im großen Stil mit minimaler Latenz erfolgen. Verwenden Sie zum Abfragen neuer Daten in Azure Monitor-Protokollen die Azure Monitor Query-Clientbibliothek.
Ein Beispiel für die Bewertung von Daten mit Open Source-Tools finden Sie in diesem Beispiel-Notebook: Erkennen von Anomalien in Azure Monitor-Protokollen mithilfe von Machine Learning-Techniken.
Ausführen der Pipeline nach Zeitplan Automatisieren Sie Ihre Pipeline, um Ihr Modell regelmäßig auf aktuelle Daten zu trainieren. Planen Sie Ihre Machine Learning-Pipeline mit Azure Synapse Analytics oder Azure Machine Learning. Sehen Sie sich die Beispiele in der Spalte Abfragedaten in Azure Monitor-Protokollen an.

Wenn Sie bewertete Ergebnisse in einem Log Analytics-Arbeitsbereich erfassen, können Sie die Daten verwenden, um erweiterte Erkenntnisse zu erhalten und Warnungen und Dashboards zu erstellen. Ein Beispiel für die Erfassung bewerteter Ergebnisse mithilfe der Azure Monitor-Erfassungsclientbibliothek finden Sie unter Erfassen von Anomalien in einer benutzerdefinierten Tabelle in Ihrem Log Analytics-Arbeitsbereich.

Nächste Schritte

Weitere Informationen: