Freigeben über


Tutorial: Behandeln von Problemen mit einer App Service-App mithilfe von Azure SRE Agent (Vorschau)

Hinweis

Der Azure SRE Agent ist angekommen. Mit dem SRE-Agent stimmen Sie den produktspezifischen ergänzenden Nutzungsbedingungen für Microsoft Azures zu.

Die Sitezuverlässigkeits-Entwicklung (Site Reliability Engineering, SRE) konzentriert sich auf die Erstellung zuverlässiger, skalierbarer Systeme durch Automatisierung und proaktives Management. Azure SRE Agent bringt diese Prinzipien in Ihre Cloudumgebung, indem KI-basierte Überwachungs-, Problembehandlungs- und Wartungsfunktionen bereitgestellt werden.

SRE Agent automatisiert Routineaufgaben und bietet fundierte Einblicke, die Ihnen helfen, die Zuverlässigkeit der Anwendung aufrechtzuerhalten und gleichzeitig manuelle Eingriffe zu reduzieren. SRE Agent ist als Chatbot verfügbar, sodass Sie Fragen stellen und Befehle in natürlicher Sprache eingeben können, um Ihre Anwendungen und Dienste zu verwalten. Um die Genauigkeit und Kontrolle zu gewährleisten, erfordert jede Aktion, die ein Agent in Ihrem Auftrag ausführt, Ihre Genehmigung.

Die Beispiel-App in diesem Lernprogramm veranschaulicht die Fehlererkennung, indem HTTP 500-Fehler kontrolliert simuliert werden. Sie können diese Szenarien sicher testen, indem Sie Azure App Service-Bereitstellungsslots verwenden, um verschiedene App-Konfigurationen nebeneinander auszuführen.

Sie aktivieren die Fehlersimulation, indem Sie die App-Einstellung INJECT_ERROR auf 1 festlegen. Wenn diese Einstellung aktiviert ist, löst die App einen HTTP 500-Fehler aus, nachdem Sie die Schaltfläche ein paar Mal ausgewählt haben. Anschließend können Sie sehen, wie SRE Agent auf Anwendungsfehler reagiert.

In diesem Tutorial erfahren Sie:

  • Erstellen Sie eine App Service-App mithilfe des Azure-Portals.
  • Stellen Sie eine Beispiel-App von GitHub bereit.
  • Konfigurieren Sie die App mit einem Startbefehl, und aktivieren Sie die Protokollierung.
  • Erstellen Sie einen Bereitstellungsplatz, um Fehler zu simulieren.
  • Richten Sie einen Agent ein, um die App zu überwachen.
  • Lösen Sie einen Fehler aus, indem den fehlerhaften Steckplatz benutzen.
  • Verwenden Sie einen KI-gesteuerten Chat, um das Problem zu diagnostizieren und zu beheben, indem Sie den Tausch zurücksetzen.

Voraussetzungen

Um einen Agent zu erstellen, müssen Sie Ihrem Agent die richtigen Berechtigungen erteilen, die richtigen Einstellungen konfigurieren und Zugriff auf die richtigen Ressourcen gewähren:

  • Azure-Konto: Sie benötigen ein Azure-Konto mit einem aktiven Abonnement. Falls Sie noch über keins verfügen, können Sie ein kostenloses Konto erstellen.

  • Sicherheitskontext: Stellen Sie sicher, dass Ihr Benutzerkonto über die Microsoft.Authorization/roleAssignments/write Berechtigungen als Rollenbasierter Zugriffssteuerungsadministrator oder Benutzerzugriffsadministrator verfügt.

  • Firewalleinstellungen: Fügen Sie *.azuresre.ai zu Ihrer Erlaubnisliste in den Firewalleinstellungen hinzu. Einige Netzwerkprofile blockieren möglicherweise standardmäßig den Zugriff auf *.azuresre.ai die Domäne.

1. Erstellen einer App Service-App

Erstellen Sie zunächst eine Web-App, die SRE Agent überwachen kann:

  1. Melden Sie sich beim Azure-Portal an.

  2. Suchen Sie auf der Suchleiste nach App Services, und wählen Sie den Eintrag dann in den Ergebnissen aus.

  3. Wählen Sie +Erstellen>Web-App aus.

  4. Geben Sie auf der Registerkarte Grundlagen die folgenden Details an.

    Geben Sie für Projektdetails die folgenden Werte ein:

    Konfiguration Wert
    Subscription Ihr Azure-Abonnement
    Ressourcengruppe Neu erstellen>my-app-service-group

    Geben Sie unter Instanzendetails die folgenden Werte ein:

    Konfiguration Wert
    Name my-sre-app
    Veröffentlichen Code
    Runtime-Stack .NET 9 (STS)
    Betriebssystem Fenster
    Region Eine Region in Ihrer Nähe
  5. Wählen Sie die Registerkarte "Bereitstellung " aus.

  6. Aktivieren Sie unter "Authentifizierungseinstellungen" die Standardauthentifizierung.

    Hinweis

    Die einfache Authentifizierung wird später für eine einmalige Bereitstellung über GitHub verwendet. Deaktivieren Sie die Standardauthentifizierung in der Produktion.

  7. Wählen Sie Überprüfen und erstellen und nach erfolgreicher Prüfung Erstellen aus.

    Nach Abschluss der Bereitstellung wird die Meldung Ihre Bereitstellung wurde abgeschlossen angezeigt.

2. Bereitstellen der Beispiel-App

Nachdem Ihre App Service-App erstellt wurde, stellen Sie die Beispielanwendung aus GitHub bereit:

  1. Wechseln Sie im Azure-Portal zu Ihrer neu erstellten App Service-App, indem Sie Zu Ressource wechseln auswählen.

  2. Wählen Sie im linken Menü im Abschnitt Bereitstellung die Option Bereitstellungscenter aus.

  3. Konfigurieren Sie auf der Registerkarte Einstellungen die folgenden Werte:

    Eigentum Wert
    Quelle Externes Git
    Repository https://github.com/Azure-Samples/app-service-dotnet-agent-tutorial
    Abteilung main
  4. Wählen Sie "Speichern " aus, um die Bereitstellungseinstellungen anzuwenden.

3. Überprüfen der Beispiel-App

Vergewissern Sie sich nach der Bereitstellung, dass die Beispiel-App wie erwartet ausgeführt wird:

  1. Wählen Sie im linken Menü Ihrer App Service-App die Option Übersicht aus.

  2. Wählen Sie Durchsuchen aus, um die App in einer neuen Browserregisterkarte zu öffnen. (Das Laden kann eine Minute dauern.)

  3. Die App zeigt einen großen Zähler und zwei Schaltflächen an.

    Screenshot des .NET-Beispiels im primären Slot

    Wählen Sie mehrmals die Schaltfläche " Inkrement " aus, um die Zählererhöhung zu beobachten.

4. Einrichten eines Bereitstellungsplatzes für fehlersimulation

Um ein App-Fehlerszenario zu simulieren, fügen Sie einen sekundären Bereitstellungsslot hinzu:

  1. Wählen Sie im linken Menü Ihrer App Service-App im Abschnitt Bereitstellung die Option Bereitstellungsslots aus.

  2. Wählen Sie "Steckplatz hinzufügen" aus.

  3. Geben Sie die folgenden Werte ein:

    Eigentum Wert Bemerkungen
    Name broken Das Fehlerszenario wird in diesem Bereich ausgelöst.
    Einstellungen klonen von my-sre-app Diese Eigenschaft kopiert die Konfiguration aus der Haupt-App.
  4. Scrollen Sie zum unteren Rand des Bereichs, und wählen Sie Hinzufügen aus. Die Slot-Erstellung kann eine Minute in Anspruch nehmen.

Stellen Sie die Beispiel-App im Slot bereit

  1. Nachdem der Slot erstellt wurde, wählen Sie den Slot broken in der Liste aus.

  2. Wählen Sie im linken Menü im Abschnitt Bereitstellung die Option Bereitstellungscenter aus.

  3. Konfigurieren Sie auf der Registerkarte Einstellungen die folgenden Werte:

    Eigentum Wert
    Quelle Externes Git
    Repository https://github.com/Azure-Samples/app-service-dotnet-agent-tutorial
    Abteilung main
  4. Wählen Sie "Speichern " aus, um die Bereitstellungseinstellungen anzuwenden.

Hinzufügen einer App-Einstellung zum Aktivieren der Fehlersimulation

Um die Fehlersimulation zu steuern, konfigurieren Sie eine App-Einstellung, die Ihre App zur Laufzeit überprüft:

  1. Wählen Sie im linken Menü Ihrer App Service-App im Abschnitt Einstellungen die Option Umgebungsvariablen aus.

  2. Stellen Sie oben sicher, dass der richtige Slot ausgewählt ist (z. B. broken).

  3. Wählen Sie auf der Registerkarte App-Einstellungen die Option + Hinzufügen aus.

  4. Geben Sie die folgenden Werte ein:

    Eigentum Wert Bemerkungen
    Name INJECT_ERROR Muss genau INJECT_ERROR sein (nur Großbuchstaben, keine Leerzeichen)
    Wert 1 Aktiviert die Fehlersimulation in der App.
  5. Stellen Sie sicher, dass das Feld Bereitstellungssloteinstellungnicht aktiviert ist.

  6. Wählen Sie Anwenden aus, um die Einstellung hinzuzufügen.

  7. Wählen Sie unten auf der Seite Umgebungsvariablen die Option Anwenden aus, um die Änderungen anzuwenden.

  8. Wenn Sie dazu aufgefordert werden, wählen Sie Bestätigen aus, um die App im ausgewählten Slot zu bestätigen und neu zu starten.

5. Erstellen eines Agents

Erstellen Sie nun einen Agent, um Ihre App Service-App zu überwachen:

  1. Folgen Sie dem Link in Ihrer Onboarding-E-Mail, um im Azure-Portal auf SRE Agent zuzugreifen.

  2. Wählen Sie + Erstellen aus.

  3. Geben Sie im Bereich Agent erstellen die folgenden Werte ein:

    Eigentum Wert Bemerkungen
    Subscription Ihr Azure-Abonnement
    Ressourcengruppe my-sre-agent-group Neue Gruppe für den Agent.
    Name my-sre-agent
    Region USA (Ost) 2
  4. Wählen Sie Ressourcengruppen auswählen aus.

  5. Aktivieren Sie im Bereich Ausgewählte Ressourcengruppen zum Überwachen das Kontrollkästchen neben my-app-service-group.

  6. Wählen Sie Speichern aus.

  7. Wählen Sie im Bereich Agent erstellen die Option Erstellen aus. Der Agent-Erstellungsprozess dauert ein paar Minuten, bis er abgeschlossen ist.

6. Chatten Sie mit Ihrem Agenten

Nachdem Ihr Agent bereitgestellt und mit Ihrer Ressourcengruppe verbunden ist, können Sie damit interagieren, indem Sie natürliche Sprache verwenden, um Ihre App zu überwachen und Fehler zu beheben:

  1. Suchen Sie im Azure-Portal nach Azure SRE-Agent, und wählen Sie sie aus.

  2. Wählen Sie in der Liste der Agents my-app-service-sre-agent aus.

  3. Wählen Sie "Chat mit Agent" aus.

  4. Geben Sie im Chatfeld den folgenden Befehl ein:

    List my App Service apps
    
  5. Der Agent antwortet mit einer Liste der App Service-Apps, die in der Ressourcengruppe my-app-service-group bereitgestellt wurden.

Nachdem der Agent Ihre App sehen kann, können Sie einen Fehler simulieren und sich vom Agent bei der Fehlerbehebung helfen lassen.

7. Unterbrechen der App

Simulieren Sie ein Fehlerszenario, indem Sie den Bereitstellungsslot „broken“ austauschen:

  1. Wählen Sie im linken Menü Ihrer App Service-App im Abschnitt Bereitstellung die Option Bereitstellungsslots aus.

  2. Klicken Sie auf Tauschen.

  3. Konfigurieren Sie im Bereich Tauschen die folgenden Werte:

    Eigentum Wert Bemerkungen
    Quelle my-sre-app-broken Steckplatz mit der fehlerhaften Version
    Ziel my-sre-app Der Produktionsplatz
  4. Scrollen Sie nach unten, und wählen Sie Tausch starten aus. Der Tauschvorgang kann eine Minute dauern.

  5. Navigieren Sie nach Abschluss des Tauschs zur URL der App.

    Screenshot des .NET-Beispiels im fehlerhaften Slot

  6. Wählen Sie die Schaltfläche Inkrement sechs Mal aus.

  7. Die App sollte fehlschlagen und einen HTTP 500-Fehler zurückgeben.

  8. Aktualisieren Sie die Seite (durch Drücken von BEFEHL+R oder F5) mehrmals, um mehr HTTP 500-Fehler zu generieren. Diese Fehler helfen SRE Agent, das Problem zu erkennen und zu diagnostizieren.

App reparieren

Nachdem die App Fehler aufweist, verwenden Sie SRE Agent, um das Problem zu diagnostizieren und zu beheben:

  1. Suchen Sie im Azure-Portal nach Azure SRE-Agent, und wählen Sie sie aus.

  2. Wählen Sie in der Liste der Agents my-app-service-sre-agent aus.

  3. Wählen Sie "Chat mit Agent" aus.

  4. Geben Sie im Chatfeld den folgenden Befehl ein:

    What's wrong with my-sre-app?
    
  5. Der Agent beginnt mit der Analyse der App-Integrität. Diagnosemeldungen im Zusammenhang mit Verfügbarkeit, CPU- und Speicherauslastung und dem aktuellen Steckplatztausch sollten angezeigt werden.

    Jede Sitzung kann variieren, aber eine Meldung, die dem folgenden Beispiel ähnelt, sollte angezeigt werden:

    Ich werde jetzt eine Entschärfung für my-sre-app durchführen, indem ich die Slots wieder austausche, um die Anwendung in einen fehlerfreien Zustand wiederherzustellen. Beachten Sie, dass das Tausch von Steckplätzen möglicherweise nicht immer sofort den Zustand wiederherstellen kann. Ich werde Sie über den Fortschritt auf dem Laufenden halten.

  6. Nach einer Pause fordert der Agent Sie auf, das Rollback zu genehmigen:

    Durchführen eines Rollbacks für Slottausch zum Wiederherstellen der Anwendungsverfügbarkeit für my-sre-app

    [Genehmigen][Ablehnen]

  7. Wählen Sie "Genehmigen" aus, um das Rollback zu initiieren.

  8. Nach Abschluss des Rollbacks bestätigt der Agent:

    Der Slottausch für my-sre-app wurde erfolgreich abgeschlossen (Zeitstempel). Der Produktionsplatz wurde wiederhergestellt. Ich werde jetzt mit den Schritten nach der Entschärfung fortfahren:

    Ich werde Sie um die richtige GitHub-Repository-URL bitten, um ein Problem für die Swap-bezogenen Ausfallzeiten zu lösen.Ich werde die App überwachen und in 5 Minuten ein Verfügbarkeitsupdate bereitstellen.

    Geben Sie die GitHub-Repository-URL an, wo das Problem ausgelöst werden soll.

9. Überprüfen Sie die Problembehebung

Nachdem SRE Agent den Steckplatztausch zurückgesetzt hat, vergewissern Sie sich, dass Ihre App ordnungsgemäß funktioniert:

  1. Öffnen Sie Ihre App Service-App in einem Browser, indem Sie auf der Seite Übersicht die Option Durchsuchen auswählen.

  2. Beachten Sie, dass der Text ERROR INJECTION ENABLED nicht mehr angezeigt wird. Dies bestätigt, dass die App in den ursprünglichen Zustand zurückgesetzt wurde.

  3. Wählen Sie die Schaltfläche Inkrement sechs Mal aus, um sicherzustellen, dass keine Fehler angezeigt werden.

Bereinigen von Ressourcen

Wenn Sie die in diesem Tutorial erstellte App und den Agent nicht mehr benötigen, können Sie die zugehörigen Ressourcengruppen löschen, um Gebühren zu vermeiden.

Sie haben in diesem Tutorial die folgenden Ressourcengruppen erstellt:

  • my-app-service-group (App Service-Ressourcengruppe)
  • my-sre-agent-group (SRE Agent-Ressourcengruppe)

Führen Sie die folgenden Schritte für jede Ressourcengruppe aus:

  1. Navigieren Sie im Azure-Portal zu Ressourcengruppen.

  2. Wählen Sie die Ressourcengruppe aus, die Sie löschen möchten.

  3. Wählen Sie auf der Registerkarte Übersicht die Option Ressourcengruppe löschen aus.

  4. Geben Sie im Bestätigungsdialogfeld den Namen der Ressourcengruppe ein.

  5. Klicken Sie auf Löschen. Der Löschvorgang dauert einige Minuten.