Project Flash: Verwenden von Azure Resource Graph zum Überwachen der Verfügbarkeit von Azure-VMs

Azure Resource Graph ist eine Lösung, die von Flash angeboten wird. Flash ist der interne Name für ein Projekt, das für die Erstellung eines robusten, zuverlässigen und schnellen Mechanismus für Kunden zur Überwachung der VM-Integrität dient.

In diesem Artikel wird die Verwendung von Azure Resource Graph zur Überwachung der Verfügbarkeit von Azure-VMs behandelt. Eine allgemeine Übersicht über Flash-Lösungen finden Sie in der Übersicht über Flash.

Für Dokumentation spezifisch für die anderen Lösungen von Flash, wählen Sie aus den folgenden Artikeln aus:

Azure Resource Graph – HealthResources

Dieses Feature ist derzeit allgemein verfügbar. Es ist nützlich für die Durchführung groß umfangreicher Untersuchungen. Durch die Verwendung der Kusto-Abfragesprache (KQL) bietet es eine äußerst benutzerfreundliche Benutzeroberfläche für das Abrufen von Informationen. Sie kann auch als zentraler Hub für Ressourceninformationen dienen und ermöglicht einen einfachen Abruf von historischen Daten.

Zusätzlich zu den bereits fließenden VM-Verfügbarkeitsstatus haben wir VM-Verfügbarkeitsanmerkungen in Azure Resource Graph (ARG) veröffentlicht, um eine detaillierte Fehlerzuordnung und Downtimeanalyse zu ermöglichen. Außerdem haben wir einen Mechanismus zur 14-tägigen Nachverfolgung von Änderungen aktiviert, um historische Änderungen der VM-Verfügbarkeit für schnelles Debuggen zu überwachen. Mit diesen neuen Ergänzungen freuen wir uns, die allgemeine Verfügbarkeit von VM-Verfügbarkeitsinformationen im HealthResources-Dataset in ARG ankündigen zu können! Mit diesem Angebot haben Benutzer folgende Möglichkeiten:

  • Effizientes Abfragen der letzten Momentaufnahme der VM-Verfügbarkeit in allen Azure-Abonnements gleichzeitig und mit geringen Wartezeiten für eine regelmäßige und flottenweite Überwachung
  • Genaues Bewerten der Auswirkungen auf flottenweite Geschäfts-SLAs und schnelles Auslösen entscheidender Entschärfungsmaßnahmen als Reaktion auf Unterbrechungen und Fehlertypsignaturen
  • Einrichtung benutzerdefinierter Dashboards zur Überwachung des umfassenden Zustands von Anwendungen durch die Verknüpfung von VM-Verfügbarkeitsinformationen mit den in ARG vorhandenen Ressourcenmetadaten
  • Nachverfolgen relevanter Änderungen in der VM-Verfügbarkeit in einem rollierenden 14-Tage-Fenster mithilfe des Mechanismus zur Änderungsnachverfolgung für die Durchführung detaillierter Untersuchungen

Beispielabfragen

Erste Schritte

Benutzer können ARG über PowerShell, die REST-API, die Azure CLI oder sogar das Azure-Portal abfragen. In den folgenden Schritten wird beschrieben, wie über das Azure-Portal auf Daten zugegriffen werden kann.

  1. Sobald Sie im Azure-Portal sind, navigieren Sie zum Resource Graph-Explorer.

    Screenshot of the Azure Resource Graph Explorer landing page on the Azure portal.

  2. Wählen Sie die Registerkarte „Tabelle“ aus, und klicken Sie (einmal) auf die Tabelle „HealthResources“, um die letzte Momentaufnahme der VM-Verfügbarkeitsinformationen (Verfügbarkeitsstatus und Integritätsanmerkungen) abzurufen.

    Screenshot of an Azure Resource Graph Explorer Window depicting the latest VM availability states and VM availability annotations in the Health Resources table.

In der HealthResources-Tabelle werden zwei Arten von Ereignissen aufgefüllt:

Snapshot of the type of events in the Health Resources table, as shown in Resource Graph Explorer on the Azure portal.

  • resourcehealth/availabilitystatuses

Dieses Ereignis gibt den aktuellen Verfügbarkeitsstatus eines virtuellen Computers basierend auf den Integritätsprüfungen an, die von der zugrunde liegenden Azure-Plattform durchgeführt werden. Derzeit geben wir folgende Verfügbarkeitsstatus für VMs aus:

  • Verfügbar: Der virtuelle Computer wird wie erwartet ausgeführt.
  • Nicht verfügbar: Es wurden Unterbrechungen der normalen Funktion der VM erkannt, sodass Anwendungen nicht wie erwartet ausgeführt werden können.
  • Unbekannt: Die Plattform kann die Integrität des virtuellen Computers nicht genau erkennen. Die Benutzer können in der Regel in ein paar Minuten nachschauen, ob der Status aktualisiert wurde.

Informationen zum Abrufen des aktuellen VM-Verfügbarkeitsstatus finden Sie im Eigenschaftenfeld, das die folgenden Details enthält:

Beispiel

{
 "targetResourceType": "Microsoft.Compute/virtualMachines",
 "previousAvailabilityState": "Available",
 "targetResourceId": "/subscriptions//resourceGroups//providers/Microsoft.Compute/virtualMachines/",
 "occurredTime": "2022-10-11T11:13:59.9570000Z",
 "availabilityState": "Unavailable"
 }

Eigenschaftenbeschreibung

Eigenschaft Beschreibung Entsprechende Ressourcenintegritätskategorie (Resource Health Category, RHC)
targetResourceType Typ der Ressource, für die Integritätsdaten fließen resourceType
targetResourceId Ressourcen-ID Ressourcen-ID
occurredTime Zeitstempel, wenn die Plattform den aktuellen Verfügbarkeitsstatus ausgibt eventTimestamp
previousAvailabilityState Vorheriger Verfügbarkeitsstatus der VM previousHealthStatus
availabilityState Aktueller Verfügbarkeitsstatus der VM currentHealthStatus

Eine Liste mit einfachen Abfragen zur weiteren Untersuchung dieser Daten finden Sie im Abschnitt „HealthResources“ der Beispielabfragedokumentation.

  • resourcehealth/resourceannotations (NEU HINZUGEFÜGT)

Dieses Ereignis kontextualisiert alle Änderungen an der VM-Verfügbarkeit, indem die erforderlichen Fehlerattribute aufgeführt werden, damit Unterbrechungen nach Bedarf leichter zu untersuchen und zu minimieren sind. Hier finden Sie die vollständige Liste der VM-Verfügbarkeitsanmerkungen, die von der Plattform ausgegeben werden. Diese Anmerkungen können im Allgemeinen in drei Buckets unterteilt werden:

  • Anmerkungen zur Downtime: Diese Anmerkungen werden ausgegeben, wenn die Plattform erkennt, dass die VM-Verfügbarkeit in „Nicht verfügbar“ übergeht. (Beispielsweise bei unerwarteten Hostabstürzen, Reparaturvorgängen mit Neustart.)
  • Informationsanmerkungen: Diese Anmerkungen werden während Aktivitäten der Steuerungsebene ohne Auswirkungen auf die VM-Verfügbarkeit ausgegeben. (Beispielsweise VM-Zuteilung/Beenden/Löschen/Starten.) In der Regel ist keine zusätzliche Kundenaktion als Reaktion erforderlich.
  • Anmerkungen zur Herunterstufung: Diese Anmerkungen werden ausgegeben, wenn die VM-Verfügbarkeit als gefährdet erkannt wird. (Beispielsweise wenn Fehlervorhersagemodelle eine beeinträchtigte Hardwarekomponente vorhersagen, die dazu führen kann, dass die VM zu einem bestimmten Zeitpunkt neu gestartet wird.) Wir empfehlen dringend, die erneute Bereitstellung bis zu dem in der Anmerkungsnachricht angegebenen Termin durchzuführen, um unerwartete Datenverluste oder Ausfallzeiten zu vermeiden. Möglicherweise erhalten Sie bei einem der folgenden Szenarien eine Warnung in Resource Health oder im Aktivitätsprotokoll der Azure-VM-Skalierungsgruppe:

Zur Abfrage der zugehörigen VM-Verfügbarkeitsanmerkungen für eine Ressource, falls vorhanden, sehen Sie sich das Eigenschaftenfeld an, das die folgenden Details enthält:

Beispiel

{
 "targetResourceType": "Microsoft.Compute/virtualMachines", "targetResourceId": "/subscriptions//resourceGroups//providers/Microsoft.Compute/virtualMachines/",
 "annotationName": "VirtualMachineHostRebootedForRepair",
 "occurredTime": "2022-09-25T20:21:37.5280000Z",
 "category": "Unplanned",
 "summary": "We're sorry, your virtual machine isn't available because an unexpected failure on the host server. Azure has begun the auto-recovery process and is currently rebooting the host server. No further action is required from you at this time. The virtual machine will be back online after the reboot completes.",
 "context": "Platform Initiated",
 "reason": "Unexpected host failure"
 }

Eigenschaftenbeschreibung

Eigenschaft Beschreibung Entsprechende RHC
targetResourceType Typ der Ressource, für die Integritätsdaten fließen resourceType
targetResourceId Ressourcen-ID Ressourcen-ID
occurredTime Zeitstempel, wenn der neueste Verfügbarkeitsstatus von der Plattform ausgegeben wird eventTimestamp
annotationName Der Name der ausgegebenen Anmerkung eventName
reason Kurze Übersicht über die vom Kunden beobachtete Auswirkung auf die Verfügbarkeit title
category Gibt an, ob die Plattformaktivität, die die Anmerkung ausgelöst hat, entweder eine geplante Wartung oder eine ungeplante Reparatur war. Dieses Feld gilt nicht für kunden-/VM-initiierte Ereignisse. Mögliche Werte: Geplant, Ungeplant, Nicht zutreffend, Null category
context Gibt an, ob die Aktivität, die die Anmerkung ausgelöst hat, auf einen autorisierten Benutzer oder Prozess (vom Kunden initiiert), auf die Azure-Plattform (von der Plattform initiiert) oder auf eine Aktivität im Gastbetriebssystem zurückzuführen ist, die Auswirkungen auf die Verfügbarkeit hat (von der VM initiiert). Mögliche Werte: Von der Plattform initiiert, Benutzerinitiiert, VM-initiiert, Nicht zutreffend, Null context
Zusammenfassung Anweisung, die die Ursache für die Anmerkungsausgabe erläutert, zusammen mit Korrekturschritten, die von Benutzern ausgeführt werden können Zusammenfassung

Eine Liste mit einfachen Abfragen zur weiteren Untersuchung dieser Daten finden Sie im Abschnitt „HealthResources“ der Beispielabfragedokumentation.

Wir haben mehrere Verbesserungen für die Anmerkungsmetadaten geplant, die im HealthResources-Dataset angezeigt werden. Diese Anreicherungen ermöglichen Benutzern den Zugriff auf umfangreichere Fehlerattribute, um eine Reaktion auf eine Störung entscheidend vorzubereiten. Parallel dazu möchten wir die Dauer des historischen Rückblicks auf mindestens 30 Tage verlängern, damit Benutzer frühere Änderungen der VM-Verfügbarkeit umfassend nachverfolgen können.

Nächste Schritte

Um mehr über die angebotenen Lösungen zu erfahren, fahren Sie mit dem entsprechenden Lösungsartikel fort:

Eine allgemeine Übersicht über das Überwachen von Azure-VMs finden Sie unter Überwachen von Azure-VMs und Überwachen von Azure VM-Referenzen.