Kurz: Řešení potíží s aplikací služby App Service pomocí agenta Azure SRE

SRE (Site Reliability Engineering) se zaměřuje na vytváření spolehlivých a škálovatelných systémů prostřednictvím automatizace a proaktivní správy. Azure SRE Agent přináší tyto principy do cloudového prostředí tím, že poskytuje funkce monitorování, řešení potíží a nápravy využívající AI.

SRE Agent automatizuje běžné provozní úlohy a poskytuje přehledy s odůvodněním, které vám pomůžou udržet spolehlivost aplikací a zároveň snížit ruční zásah. Agent SRE je k dispozici jako chatovací robot, takže můžete klást otázky a poskytovat příkazy přirozeného jazyka pro údržbu aplikací a služeb. Pokud chcete zajistit přesnost a kontrolu, vyžaduje vaše schválení jakákoli akce, kterou váš zástupce přijme.

Ukázková aplikace v tomto kurzu ukazuje detekci chyb simulací selhání HTTP 500 řízeným způsobem. Tyto scénáře můžete bezpečně otestovat pomocí slotů nasazení služby Azure App Service, abyste mohli souběžně spouštět různé konfigurace aplikací.

Simulaci chyb povolíte nastavením INJECT_ERROR aplikace na 1. Když je toto nastavení povolené, aplikace způsobí chybu HTTP 500 poté, co několikrát stisknete tlačítko. Pak se můžete podívat, jak agent SRE reaguje na selhání aplikace.

V tomto kurzu se naučíte:

  • Vytvořte aplikaci App Service pomocí webu Azure Portal.
  • Nasazení ukázkové aplikace z GitHubu
  • Nakonfigurujte aplikaci pomocí spouštěcího příkazu a povolte protokolování.
  • Vytvořte slot nasazení pro simulaci selhání.
  • Nastavte agenta pro monitorování aplikace.
  • Vyvolejte selhání tak, že prohodíte na nefunkční slot.
  • Pomocí chatu řízeného AI můžete diagnostikovat a vyřešit problém vrácením výměny zpět.

Požadavky

Pokud chcete vytvořit agenta, musíte agentu udělit správná oprávnění, nakonfigurovat správná nastavení a udělit přístup k správným prostředkům:

  • Účet Azure: Potřebujete účet Azure s aktivním předplatným. Pokud ho ještě nemáte, můžete si zdarma vytvořit účet.

  • Kontext zabezpečení: Ujistěte se, že váš uživatelský účet má Microsoft.Authorization/roleAssignments/write oprávnění jako správce řízení přístupu na základě role nebo správce uživatelských přístupů.

  • Nastavení brány firewall: Přidejte *.azuresre.ai do seznamu povolených v nastavení brány firewall. Některé síťové profily můžou ve výchozím nastavení blokovat přístup k *.azuresre.ai doméně.

1. Vytvoření aplikace App Service

Začněte vytvořením webové aplikace, kterou může agent SRE monitorovat:

  1. Přihlaste se do Azure Portalu.

  2. Na panelu hledání vyhledejte App Services a pak ho ve výsledcích vyberte.

  3. Vyberte + Vytvořit>webovou aplikaci.

  4. Na kartě Základy zadejte následující podrobnosti.

    Podrobnosti projektu získáte zadáním těchto hodnot:

    Nastavení Hodnota
    Subscription Vaše předplatné Azure
    Skupina zdrojů Vytvořit nový>my-app-service-group

    V případě podrobností o instanci zadejte tyto hodnoty:

    Nastavení Hodnota
    název my-sre-app
    Publikovat Kód
    Zásobník modulu runtime .NET 9 (STS)
    Operační systém Windows
    Oblast Oblast blízko vás
  5. Vyberte kartu Nasazení .

  6. V části Nastavení ověřování povolte základní ověřování.

    Poznámka:

    Základní autentizace se použije později pro jednorázovou instalaci z GitHubu. Zakažte základní ověřování v produkčním prostředí.

  7. Vyberte Zkontrolovat a vytvořit a pak vyberte Vytvořit při průchodu ověřením.

    Po dokončení nasazení se zobrazí zpráva o dokončení nasazení .

2. Nasazení ukázkové aplikace

Teď, když je vaše aplikace App Service vytvořená, nasaďte ukázkovou aplikaci z GitHubu:

  1. Na webu Azure Portal přejděte na nově vytvořenou aplikaci App Service tak, že vyberete Přejít k prostředku.

  2. V nabídce vlevo v části Nasazení vyberte Deployment Center.

  3. Na kartě Nastavení nakonfigurujte tyto hodnoty:

    Vlastnictví Hodnota
    Zdroj Externí Git
    Skladiště https://github.com/Azure-Samples/app-service-dotnet-agent-tutorial
    Větev hlavní
  4. Pokud chcete použít nastavení nasazení, vyberte Uložit .

3. Ověření ukázkové aplikace

Po nasazení ověřte, že ukázková aplikace běží podle očekávání:

  1. V levé nabídce aplikace App Service vyberte Přehled.

  2. Výběrem možnosti Procházet otevřete aplikaci na nové kartě prohlížeče. (Načtení může trvat minutu.)

  3. Aplikace zobrazí velký čítač a dvě tlačítka.

    Snímek obrazovky s ukázkou .NET v primárním slotu

    Pokud chcete sledovat zvýšení čítače, několikrát vyberte tlačítko Přírůstkové zvýšení.

4. Nastavení slotu nasazení pro simulaci selhání

Pokud chcete simulovat scénář selhání aplikace, přidejte sekundární slot nasazení:

  1. V levé nabídce aplikace App Service v části Nasazení vyberte Sloty nasazení.

  2. Vyberte Přidat pozici.

  3. Zadejte následující hodnoty:

    Vlastnictví Hodnota Poznámky
    název rozbitý V tomto slotu se aktivuje scénář chyby.
    Klonovat nastavení z my-sre-app Tato vlastnost kopíruje konfiguraci z hlavní aplikace.
  4. Posuňte se do dolní části podokna a vyberte Přidat. Vytvoření slotu může trvat minutu.

Nasazení ukázkové aplikace do slotu

  1. Po vytvoření slotu vyberte slot poškozený v seznamu.

  2. V nabídce vlevo v části Nasazení vyberte Deployment Center.

  3. Na kartě Nastavení nakonfigurujte tyto hodnoty:

    Vlastnictví Hodnota
    Zdroj Externí Git
    Skladiště https://github.com/Azure-Samples/app-service-dotnet-agent-tutorial
    Větev hlavní
  4. Pokud chcete použít nastavení nasazení, vyberte Uložit .

Přidání nastavení aplikace pro povolení simulace chyb

Pokud chcete řídit simulaci chyb, nakonfigurujte nastavení aplikace, které aplikace kontroluje za běhu:

  1. V levé nabídce aplikace App Service v části Nastavení vyberte Proměnné prostředí.

  2. Nahoře se ujistěte, že je vybraný správný slot (například poškozený).

  3. Na kartě Nastavení aplikace vyberte + Přidat.

  4. Zadejte následující hodnoty:

    Vlastnictví Hodnota Poznámky
    název INJECT_ERROR Musí být přesně INJECT_ERROR (všechna velká písmena, bez mezer)
    Hodnota 1 Povolí simulaci chyb v aplikaci.
  5. Ujistěte se, že není zaškrtnuté políčko Nastavení slotu nasazení.

  6. Chcete-li přidat nastavení, vyberte Použít .

  7. V dolní části stránky Proměnné prostředí vyberte Použít , aby se změny použily.

  8. Po zobrazení výzvy vyberte Potvrdit a potvrďte a restartujte aplikaci ve vybraném slotu.

5. Vytvoření agenta

Teď vytvořte agenta pro monitorování aplikace App Service:

  1. Pokud chcete získat přístup k agentovi SRE na webu Azure Portal, postupujte podle odkazu uvedeného v e-mailu o onboardingu.

  2. Vyberte + Vytvořit.

  3. V podokně Vytvořit agenta zadejte tyto hodnoty:

    Vlastnictví Hodnota Poznámky
    Subscription Vaše předplatné Azure
    Skupina zdrojů my-sre-agent-group Nová skupina pro agenta
    název my-sre-agent
    Oblast USA – východ 2
  4. Zvolte Vybrat skupiny prostředků.

  5. V podokně Vybrané skupiny prostředků, které chcete monitorovat , zaškrtněte políčko vedle skupiny my-app-service-group.

  6. Vyberte Uložit.

  7. Zpět v podokně Vytvořit agenta vyberte Vytvořit. Dokončení procesu vytvoření agenta trvá několik minut.

6. Chatujte s vaším agentem

Jakmile je agent nasazený a připojený k vaší skupině prostředků, můžete s ním pracovat pomocí přirozeného jazyka pro monitorování a řešení potíží s aplikací:

  1. Na webu Azure Portal vyhledejte a vyberte agenta Azure SRE.

  2. V seznamu agentů vyberte my-app-service-sre-agent.

  3. Vyberte Chat s agentem.

  4. Do pole chatu zadejte následující příkaz:

    List my App Service apps
    
  5. Agent odpoví seznamem aplikací App Service nasazených ve skupině prostředků my-app-service-group .

Teď, když agent uvidí vaši aplikaci, jste připraveni simulovat selhání a nechat agenta pomoct s jeho řešením.

7. Přerušení aplikace

Simulujte scénář selhání přepnutím na nefunkční slot nasazení.

  1. V levé nabídce aplikace App Service v části Nasazení vyberte Sloty nasazení.

  2. Vyberte Vyměnit.

  3. Na podokně Výměna nakonfigurujte následující hodnoty:

    Vlastnictví Hodnota Poznámky
    Zdroj my-sre-app-broken Slot s chybnou verzí
    Cíl my-sre-app Výrobní časový úsek
  4. Přejděte dolů a vyberte Spustit výměnu. Dokončení operace výměny může trvat minutu.

  5. Po dokončení výměny přejděte na adresu URL aplikace.

    Snímek obrazovky s ukázkou .NET v poškozeném slotu

  6. Vyberte tlačítko Přírůstek šestkrát.

  7. Aplikace by měla selhat a vrátit chybu HTTP 500.

  8. Aktualizujte stránku (stisknutím Command+R nebo F5) několikrát, aby se vygenerovaly více chyb HTTP 500. Tyto chyby pomáhají agentovi SRE rozpoznat a diagnostikovat problém.

8. Oprava aplikace

Teď, když u aplikace dochází k selháním, diagnostikujte a vyřešte problém pomocí agenta SRE:

  1. Na webu Azure Portal vyhledejte a vyberte agenta Azure SRE.

  2. V seznamu agentů vyberte my-app-service-sre-agent.

  3. Vyberte Chat s agentem.

  4. Do pole chatu zadejte následující příkaz:

    What's wrong with my-sre-app?
    
  5. Agent začne analyzovat stav aplikace. Měly by se zobrazit diagnostické zprávy související s dostupností, využitím procesoru a paměti a nedávným prohozením slotů.

    Každá relace se může lišit, ale měla by se zobrazit zpráva podobná následujícímu příkladu:

    Nyní budu provádět zmírnění pro aplikaci my-sre-app tím, že vyměním sloty zpět za účelem obnovení aplikace do zdravého stavu. Upozorňujeme, že prohození slotů zpět nemusí vždy okamžitě obnovit zdraví. Budu vás aktualizovat o průběhu.

  6. Po pozastavení vás agent vyzve ke schválení vrácení zpět:

    Vrácení zpět při prohození slotů za účelem obnovení dostupnosti aplikace pro my-sre-app

    [Schválit][Odepřít]

  7. Výběrem možnosti Schválit zahájíte vrácení zpět.

  8. Po dokončení vrácení zpět agent potvrdí:

    Výměna slotů pro my-sre-app byla úspěšně dokončena (časové razítko). Produkční slot byl obnoven. Teď budu pokračovat po krocích pro zmírnění rizik:

    Požádám vás o správnou adresu URL úložiště GitHub, aby vyvolal problém s výpadkem souvisejícím s prohozením.Budu monitorovat aplikaci a poskytovat aktualizaci dostupnosti za 5 minut.

    Zadejte adresu URL úložiště GitHub, kde chcete problém nahlásit.

9. Ověření opravy

Jakmile agent SRE zruší prohození slotů, ověřte, že vaše aplikace funguje správně:

  1. Otevřete aplikaci App Service v prohlížeči tak, že na stránce Přehledvyberete Procházet.

  2. Všimněte si, že se text CHYBA INJEKCE POVOLENA už nezobrazuje, což potvrzuje, že se aplikace vrátila do původního stavu.

  3. Vyberte tlačítko Zvětšit šestkrát, aby se nezobrazily žádné chyby.

Vyčistěte zdroje

Pokud už aplikaci a agenta, které jste vytvořili v tomto kurzu, nepotřebujete, můžete odstranit přidružené skupiny prostředků, abyste se vyhnuli poplatkům.

V tomto kurzu jste vytvořili následující skupiny prostředků:

  • my-app-service-group (skupina prostředků služby App Service)
  • my-sre-agent-group (skupina prostředků SRE Agent)

Pro každou skupinu prostředků použijte následující kroky:

  1. Na webu Azure Portal přejděte do skupin prostředků.

  2. Vyberte skupinu prostředků, kterou chcete odstranit.

  3. Na kartě Přehled vyberte Odstranit skupinu prostředků.

  4. V potvrzovací dialogovém okně zadejte název skupiny prostředků.

  5. Vyberte Odstranit. Odstranění trvá několik minut.

Další krok