Strategie architektury pro reagování na problémy s výkonem za provozu

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

PE:11 Reagujte na problémy s výkonem za provozu. Naplánujte, jak řešit problémy s výkonem tím, že začleníte jasné řádky komunikace a zodpovědností. Pokud dojde k problematické situaci, použijte to, co se naučíte identifikovat preventivní opatření a začlenit je do vaší úlohy. Implementujte metody pro návrat k normálním operacím rychleji, když dojde k podobným situacím.

Tato příručka popisuje osvědčené postupy pro reagování na problémy s výkonem za provozu. Problémy s výkonem za provozu 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. Řešení těchto problémů okamžitě usnadňuje nejen okamžité zjišťování a opravy výkonu, ale také zajišťuje, aby úloha konzistentně splňovala své srovnávací testy výkonu. Když je nebudete řešit, může to vést k komplikacím, včetně zpomalení, chybových ukončení a nereagování systému a snížení uživatelského prostředí. Mohou také uživatelům zabránit v efektivním dokončení svých úkolů a naopak poškodí pověst organizace.

Definice

Term Definition
Korelace dat Sladění protokolů, metrik a událostí z různých částí úlohy za účelem určení základních příčin
Analýza původní příčiny Proces identifikace základních faktorů, které jsou zodpovědné za problém.
Samoopravení Schopnost automaticky opravit problémy bez zásahu člověka.
Samoobslužná prevence Implementace v rámci úlohy, aby se zabránilo potenciálním problémům a selháním

Pokud narazíte na problém s živým výkonem, musíte být připraveni se správnými daty a plánem reagovat na problém. Tento plán by měl zahrnovat jasné řádky komunikace a odpovědností. Primárním cílem je implementovat řešení, která usnadňují rychlý návrat k pravidelným operacím 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 opětovnému vzniku stejného problému, nebo zmenšit jeho účinky na výkon, pokud tomu není možné.

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. Abyste mohli provést tyto kroky, budete možná muset analyzovat protokoly úloh, provádět 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áte přesné diagramy architektury. Diagramy architektury by měly zahrnovat všechny komponenty a ukázat, jak komunikují. Vizuální reprezentace může pomoct identifikovat kritické body a kritické 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 předtím, než způsobí problémy, ale když máte diagram up-to- datum, může vám pomoct určit problémy ve vysoce stresových momentech.

  • 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á. Musíte zajistit, aby pracovníci měli přístup k datům, která potřebují v případě problémů. Měli byste ale udělit pouze časově omezený přístup s nejnižšími oprávněními a měli byste tento přístup omezit na oprávněné pracovníky.

  • Nastavte automatická upozornění. Výstrahy vám můžou pomoct identifikovat a řešit problémy hned, jak k nim dojde. Výstrahy by měly generovat oznámení, když se výkon úloh liší 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š velkého nebo příliš málo oznámení. Řešení monitorování, která používáte, je potřeba shromáždit dostatek dat k vygenerování výstrah. Tato upozornění by měla odpovídat cílům výkonu a zavedeným směrným plánům. 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ýkon 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 reagování na problémy s výkonem za provozu. Zajišťuje, aby se přerušení výkonu řešilo okamžitě a efektivně, a to 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 dostatečně, aby vyžadovaly plánování třídění. Dobře zdokumentovaný plán třídění zajišťuje, že všichni členové týmu budou sladění a můžou rychle jednat 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ří můžou dělat rozhodnutí nebo eskalovat problémy na vyšší úrovni. Plán by měl také identifikovat role a zodpovědnosti. Potřebuje zdokumentovat, které účty získají přístup k chráněným informacím a jak dlouho.

  • Proces eskalace: Definujte jasný proces eskalace, aby se zajistilo, že problémy s výkonem se eskalují příslušným týmům nebo jednotlivcům včas. 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 každého problému s výkonem. Tento proces by měl zahrnovat analýzu protokolů a metrik výkonu a provádění diagnostických testů pro určení zdroje jednotlivých problémů.

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

  • Komunikace: Vytvořte komunikační plán, který umožní účastníkům informovat o stavu problémů s výkonem a 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ří jsou zapojeni do reakce na problémy 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 neekicienci v živé úloze. Data, která shromažďujete během monitorování, jsou neocenitelná při vyšetřování a řešení incidentů souvisejících s výkonem. 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 všechna další relevantní data.

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

  3. Prozkoumejte potenciální příčiny. Zpřesnění rozsahu analýzy identifikací konkrétní komponenty nebo oblasti ú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. Otestujte hypotézy. Formulujte hypotézy na základě potenciálních příčin, které identifikujete. Proveďte testy a ověřte nebo refutujte hypotézy. Měli byste použít testovací prostředí, abyste zjistili, jestli můžete chybu replikovat.

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

  7. Monitorování a ověřování Po implementaci řešení nepřetržitě monitorujte úlohu a ujistěte se, ž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 dokumentace analýzy, může 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 a nákladům na úlohy znamenat významnou práci.

Riziko: Pokud provádíte 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 dodavatele

Podpora dodavatelů může být zásadním krokem při řešení aktuálních problémů s výkonem. Dodavatelé mají odborné znalosti, nástroje, zdroje a zkušenosti, které pomáhají řešit problémy se svými 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, aby někteří členové týmu spolupracovali s podporou dodavatelů, zatímco jiní budou dál řešit třídění a opravovat problémy s výkonem. Týmy podpory dodavatelů můžou také navrhnout, jak zabránit a automatizovat odpovědi na podobné události.

Potřebujete mít k dispozici kontaktní údaje pro pracovníky. Dodavatelé můžou také potřebovat přístup k datům, aby se efektivně zapojili do řešení problémů. Abyste mohli přistupovat k datům monitorování, musíte mít vytvořený plán pro ověřování a autorizaci externích účtů nebo účtů hostů.

Seznamte se se se zjištěními

Po opravě 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, nejen identifikovat problémy. Nejlepší způsob, jak se naučit, je prostřednictvím dokumentace. Zdokumentujte každý problém a vysvětlete, jak ho opravit. Pokud dodavatel pomohl, spolupracujte s dodavatelem a vylepšete dokumentaci, vytrénujte svůj tým a odpovídajícím způsobem upravte úlohy.

Dokumentace by měla indikovat, jak zabránit dalšímu vzniku jednotlivých problémů. Jedním ze způsobů, jak se vyhnout opakovaným problémům, je zavést automatizaci pro reakci na běžné problémy. Automatizace by měla do úlohy přidávat samoopravené a samoobsluhodné vlastnosti. 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, výstrahy 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 v 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 protokolů, 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í.