Doporučení pro reakci na problémy s výkonem za provozu

Platí pro toto doporučení kontrolního seznamu efektivity výkonu azure Well-Architected Framework:

PE:11 Reagujte na problémy s živým výkonem. Naplánujte, jak řešit problémy s výkonem začleněním jasných komunikačních a odpovědností. Když dojde k problematické situaci, využijte to, co se naučíte, k identifikaci preventivních opatření a jejich začlenění do úlohy. Implementujte metody pro rychlejší návrat k normálnímu provozu v podobných situacích.

Tato příručka popisuje osvědčené postupy pro reakci na problémy s výkonem za provozu. Problémy s výkonem v reálném čase se týkají problémů a kritických bodů v reálném čase, které můžou bránit optimálnímu fungování úlohy. Rychlé řešení těchto problémů nejen usnadňuje okamžité zjištění a nápravu potíží s výkonem, ale také zajišťuje, aby úloha konzistentně splňovala své srovnávací testy výkonu. Jejich řešení může vést ke komplikacím, včetně zpomalení, chybových ukončení a nereagování systému a zhoršení uživatelského prostředí. Můžou také uživatelům zabránit v efektivním provádění jejich úkolů a následně pošpinit pověst organizace.

Definice

Období Definice
Korelace dat Sladění protokolů, metrik a událostí z různých částí úloh za účelem určení základních příčin
Analýza původní příčiny Proces pro identifikaci základních faktorů, které jsou zodpovědné za problém.
Samoopravování Schopnost automaticky opravovat problémy bez lidského zásahu.
Sebeobrana Implementace v rámci úlohy, aby se zabránilo potenciálním problémům a selháním.

Klíčové strategie návrhu

Když narazíte na problém s živým výkonem, musíte být připravení se správnými daty a plánem, který na problém reaguje. Tento plán by měl obsahovat jasné komunikační linie a povinnosti. Primárním cílem je implementovat řešení, která usnadňují rychlý návrat k běžnému provozu a poskytují přehledy z incidentu. Integrace preventivních opatření do pracovního postupu je klíčovou strategií. Cílem je buď zabránit tomu, aby se stejný problém opakovat, nebo zmenšit jeho vliv na výkon, pokud se mu nedá zabránit.

Příprava na problémy

Ideální reakce na problémy s výkonem živého webu je přesná a rychlá. Přesnost a rychlost nápravy výkonu vyžadují přípravu. Aby bylo možné efektivně reagovat na problémy s výkonem za provozu, je důležité monitorovat klíčové metriky výkonu, identifikovat původní příčinu problémů a implementovat vhodná řešení nebo optimalizace. K provedení těchto kroků může být potřeba analyzovat protokoly úloh, provést testování výkonu, optimalizovat kód nebo konfigurace a škálovat prostředky. Následující příklady popisují několik kritických oblastí přípravy:

  • Mít přesné diagramy architektury. Diagramy architektury by měly obsahovat všechny komponenty a měly by ukazovat jejich interakci. Vizuální znázornění může pomoct identifikovat kritické body a jednotlivé body selhání, které můžou vést ke snížení výkonu nebo nedostupnosti. V ideálním případě tyto problémy zachytíte a odeberete dříve, než způsobí problémy, ale aktuální diagram vám může pomoct určit problémy v okamžikech vysokého napětí.

  • Zkontrolujte přístup k datům. Data a protokoly z procesů monitorování jsou důležité pro reakci na problémy s výkonem v reálném čase a provádění analýz původních příčin. Je ale důležité zachovat integritu a důvěrnost dat. Reakce na problémy s výkonem živého webu často vyžaduje přístup k podkladovým datům, která nemusí být normálně přístupná. Potřebujete zajistit, aby pracovníci měli přístup k datům, která potřebují, když dojde k problémům. Měli byste ale udělit jenom časově omezený přístup s nejnižšími oprávněními a tento přístup byste měli omezit na oprávněné pracovníky.

  • Nastavte automatická upozornění. Výstrahy vám můžou pomoct identifikovat a vyřešit problémy hned po jejich výskytu. Upozornění by měla generovat oznámení, když se výkon úloh odchyluje od standardních hodnot výkonu. V průběhu času byste měli upravit konfigurace upozornění, abyste se vyhnuli generování příliš mnoha nebo příliš málo oznámení. Řešení monitorování, která používáte, musí shromáždit dostatek dat ke generování výstrah. Tyto výstrahy by měly být v souladu s cíli výkonu a stanovenými směrnými hodnotami. Měli byste se vyhnout generování upozornění na problémy, které jsou relevantní pro vaše cíle. Mezi příklady upozornění patří snížení využití procesoru, paměti, doby odezvy a výkonu databáze.

Vytvoření plánu třídění

Vytvoření plánu třídění zahrnuje vytvoření strukturovaného přístupu k identifikaci, eskalaci, analýze, stanovení priorit a komunikaci problémů s výkonem živého webu. Plán třídění je strategie pro reakci na problémy s výkonem za provozu. Zajišťuje rychlé a efektivní řešení přerušení výkonu s jasnými rolemi a postupy. Většina problémů s výkonem si nezaslouží protokoly zotavení po havárii, ale můžou ovlivnit funkčnost úloh natolik, aby vyžadovaly plánování třídění. Dobře zdokumentovaný plán třídění zajistí, že všichni členové týmu budou sladěni a budou moct jednat rychle a minimalizovat dopad na uživatele a úlohy. Plán třídění by měl obsahovat následující komponenty:

  • Identifikace a monitorování: Implementujte systém pro identifikaci a monitorování problémů s výkonem v reálném čase. Měli byste mít seznam kontaktních informací lidí, kteří jsou schopni se rozhodnout nebo eskalovat problémy na vyšší úrovně. Plán by měl také identifikovat role a odpovědnosti. Musí zdokumentovat, které účty získají přístup k chráněným informacím a jak dlouho.

  • Proces eskalace: Definujte jasný proces eskalace, abyste zajistili, že problémy s výkonem budou včas eskalovány příslušným týmům nebo jednotlivcům. Definice procesu by měla obsahovat kontaktní informace a pokyny pro eskalaci problémů.

  • Analýza původní příčiny: Vytvořte proces pro provedení analýzy původní příčiny, abyste identifikovali základní příčinu jednotlivých problémů s výkonem. Tento proces by měl zahrnovat analýzu protokolů a metrik výkonu a provádění diagnostických testů, které by měly určit zdroj jednotlivých problémů.

  • Stanovení priorit: Vytvořte architekturu pro stanovení priorit, která určí závažnost problémů s výkonem a určí jejich prioritu na základě jejich dopadu na úlohy a uživatele.

  • Komunikace: Vytvořte komunikační plán, který bude informovat zúčastněné strany o stavu problémů s výkonem a o průběhu jejich řešení. Zvažte pravidelné aktualizace, zprávy o stavu a jasné komunikační kanály.

  • Dokumentace: Zdokumentujte plán třídění, včetně všech jeho kroků, procesů a osvědčených postupů. Tato dokumentace by měla být snadno přístupná členům týmu, kteří se podílejí na řešení problémů s výkonem.

Vývoj metod pro identifikaci a řešení problémů

Řešení problémů s výkonem za provozu zahrnuje identifikaci a řešení všech faktorů, které můžou způsobit snížení výkonu nebo neefektivnost v živé úloze. Data, která shromažďujete během monitorování, jsou při vyšetřování a řešení incidentů souvisejících s výkonem neocenitelná. Tato data poskytují historický záznam metrik výkonu. Pokud máte k dispozici data monitorování, můžete analyzovat původní příčiny a identifikovat přispívající faktory. K pochopení a opravě jednotlivých problémů s výkonem byste měli použít všechna relevantní data monitorování.

Použití analýzy původní příčiny

Analýza původní příčiny vyžaduje testování hypotéz. Po kontrole dat monitorování byste měli uvést potenciální příčiny problému s výkonem a otestovat je. Pokud chcete provést analýzu původní příčiny problému s výkonem za provozu, můžete postupovat takto:

  1. Shromážděte informace. Shromážděte co nejvíce informací o problému s výkonem. Mezi příklady patří chybové zprávy, protokoly, metriky výkonu a další relevantní data.

  2. Definujte problém. Jasně definujte problém tím, že identifikujete příznaky a dopad, který má problém na úlohu nebo uživatele.

  3. Prozkoumejte potenciální příčiny. Zpřesnit rozsah analýzy tím, že identifikujete konkrétní komponentu nebo oblast úlohy, ve které dochází k problému s výkonem. Na základě shromážděných informací identifikujte potenciální příčiny problému s výkonem. Tento proces může zahrnovat analýzu kódu, nastavení konfigurace, infrastruktury nebo externích závislostí.

  4. Korelace dat Ponořte se hlouběji do shromážděných dat a identifikujte vzory, anomálie nebo korelace, které by mohly přispět k problému s výkonem. Korelace dat je klíčem k identifikaci problémů s výkonem a příčin. Může zahrnovat kontrolu protokolů, analýzu metrik výkonu a provádění testů.

  5. Test hypotéz. Formulujte hypotézy na základě potenciálních příčin, které identifikujete. Proveďte testy k ověření nebo vyvrácení hypotéz. Pokud chcete zjistit, jestli můžete chybu replikovat, měli byste použít testovací prostředí.

  6. Implementujte řešení. Jakmile identifikujete původní příčinu, vyvíjejte a implementujte řešení, která problém s výkonem vyřeší.

  7. Monitorování a ověření. Po implementaci řešení nepřetržitě monitorujte úlohy, abyste měli jistotu, že se problém s výkonem vyřeší. Ověřte efektivitu řešení monitorováním metrik výkonu a zpětné vazby uživatelů.

Kompromis: Kroky analýzy původní příčiny, jako je identifikace možných příčin, testování hypotéz a zdokumentování analýzy, můžou být časově náročné. Pokud chcete korelovat problémy s výkonem, musíte také shromažďovat a ukládat data. Požadovaný čas a infrastruktura můžou provozním týmům přidat významnou práci a náklady na úlohu.

Riziko: Pokud provedete analýzu původní příčiny bez správných bezpečnostních mantinel, existuje riziko, že při poskytování přístupu k protokolům a datům zveřejníte citlivé informace.

Zapojení podpory dodavatelů

Podpora dodavatele může být zásadním krokem při řešení probíhajících problémů s výkonem. Dodavatelé mají odborné znalosti, nástroje, zdroje a zkušenosti, které jim pomůžou vyřešit problémy s jejich produkty. Vaše smlouva o podpoře s dodavatelem určuje úroveň podpory, které dodavatel poskytuje.

Často je nejlepší pracovat paralelně s dodavateli. Měli byste vytvořit plán, který umožní, aby někteří členové týmu spolupracovali s podporou dodavatelů, zatímco jiní budou dál provádět třídění a opravovat problémy s výkonem. Týmy podpory dodavatelů můžou také vytvářet návrhy, jak zabránit a automatizovat reakce na podobné události.

Musíte mít k dispozici kontaktní informace pro vaše pracovníky. Dodavatelé mohou také potřebovat přístup k datům, aby se mohli efektivně zapojit do řešení problémů. Potřebujete mít plán pro ověřování a autorizaci externích účtů nebo účtů hostů pro přístup k datům monitorování.

Učte se ze zjištění

Po vyřešení problému s výkonem živého webu je potřeba zkontrolovat, co se stalo. Cílem je učit se z problémů s výkonem, ne jen identifikovat problémy. Nejlepší způsob, jak se učit, je prostřednictvím dokumentace. Zdokumentujte každý problém a vysvětlete, jak ho opravit. Pokud vám pomohl dodavatel, spolupracujte s dodavatelem na vylepšení dokumentace, vytrénujte svůj tým a odpovídajícím způsobem upravte úlohu.

V dokumentaci by mělo být uvedeno, jak zabránit tomu, aby se každý problém znovu vyskytl. Jedním ze způsobů, jak se vyhnout opakujícím se problémům, je zavést automatizaci, která bude reagovat na běžné problémy. Automatizace by měla do úlohy přidat vlastnosti samoopravení a sebeobrany. Společně s automatizací můžete vytvářet upřesňující výstrahy, které vám pomůžou včas reagovat na indikátory problémů s výkonem.

Usnadnění Azure

Vývoj metod pro identifikaci a řešení problémů: Azure nabízí několik nástrojů, které vám pomůžou reagovat na problémy s výkonem za provozu:

  • Azure Monitor je komplexní řešení monitorování, které poskytuje přehled o výkonu a stavu vašich aplikací a infrastruktury. Monitorování nabízí funkce, jako jsou metriky, protokoly, upozornění a řídicí panely, které vám pomůžou monitorovat a diagnostikovat problémy s výkonem.

  • Application Insights je služba pro správu výkonu aplikací (APM), která vývojářům a odborníkům na DevOps pomáhá monitorovat živé aplikace. Automaticky detekuje anomálie výkonu, shromažďuje protokoly a události na úrovni aplikace a poskytuje analytické nástroje pro diagnostiku problémů.

  • Log Analytics je služba, která shromažďuje a analyzuje data protokolů z různých zdrojů, včetně aplikací, virtuálních počítačů a prostředků Azure. Když používáte Log Analytics, můžete dotazovat a analyzovat data protokolu, abyste získali přehled o výkonu a chování vašich aplikací.

Kontrolní seznam efektivity výkonu

Projděte si kompletní sadu doporučení.