Monitorování pro DevOps

Co nevidíte, nemůžete měřit. Co nemůžete měřit, nemůžete zlepšit. Tento klasický axiom správy platí i v cloudu. Tradiční monitorování aplikací a infrastruktury je založené na tom, jestli je aplikace spuštěná nebo ne, nebo jakou dobu odezvy poskytuje. Cloudové monitorování ale nabízí mnohem více příležitostí, které byste měli využít, abyste uživatelům nabídli co nejlepší prostředí.

Monitorování aplikace

Application Přehledy je služba Azure, která umožňuje nejen ověřit, že vaše aplikace funguje správně, ale usnadňuje řešení potíží s aplikacemi a lze ji použít pro vlastní obchodní telemetrii, která vám pomůže zjistit, jestli se vaše aplikace používá zamýšleným způsobem.

Ujistěte se, že využíváte všechny bohaté informace, které Přehledy zadat o vaší aplikaci. Tento seznam není vyčerpávající, ale tady najdete některé informace o viditelnosti, které vám Přehledy může poskytnout:

  • Application Přehledy nabízí výchozí řídicí panel se informovaný odhad nejdůležitějších metrik, které vás budou zajímat. Pak ho můžete upravit a přizpůsobit svým potřebám.
  • Díky správnému instrumentování aplikace vám Přehledy statistiku výkonu z pohledu klienta i serveru.
  • Mapa aplikace vám ukáže závislosti aplikací v jiných službách, jako jsou rozhraní API back-endu nebo databáze, a umožní vám vizuálně určit, kde se nachází problémy s výkonem.
  • Inteligentní zjišťování vás upozorní, když dojde k anomálii ve vzorech výkonu nebo využití.
  • Analýza využití vám může poskytnout telemetrii toho, které funkce vaší aplikace se nejčastěji používají nebo jestli se používají všechny funkce vaší aplikace. Tato funkce je užitečná zejména po změnách funkčnosti aplikace, abyste ověřili, jestli byly tyto změny úspěšné.
  • Poznámky k verzi jsou vizuální indikátory v grafech Přehledy aplikací nových sestavení a dalších událostí, takže můžete vizuálně korelovat změny výkonu aplikace s verzemi kódu, abyste mohli rychle určit problémy s výkonem.
  • Diagnostika transakcí mezi komponentami umožňuje sledovat neúspěšné transakce a najít bod v architektuře, kde došlo k chybě.
  • Snapshot Debugger automaticky shromáždit snímek živé aplikace v případě výjimky, abyste ji v pozdější fázi analyzovali.

Pokud chcete použít Application Přehledy máte dvě možnosti: můžete použít monitorování bez kódu, kdy připojení aplikace k Application Přehledy nevyžaduje žádné změny kódu nebo monitorování založené na kódu, kde instrumentujete kód tak, aby odesílal telemetrická data do Application Přehledy pomocí sady Software Development Kit pro programovací jazyk podle vašeho výběru.

K monitorování aplikace v Azure můžete použít i jiné nástroje pro správu výkonu aplikací, jako je Například NewRelic nebo AppDynamics, ale Application Přehledy vám poskytne nejbezpečnější a integrovanější prostředí.

Monitorování platformy

Aplikační Přehledy je ve skutečnosti jednou z komponent služby Azure Monitor, která poskytuje bohaté metriky a protokoly pro ověření stavu kompletního prostředí Azure. Bez ohledu na to, jestli je vaše aplikace spuštěná v Virtual Machines, App Services nebo Kubernetes, vám Azure Monitor pomůže sledovat stav vaší infrastruktury a okamžitě reagovat, pokud dojde k problémům.

Nezapomeňte nejen monitorovat výpočetní prvky podporující kód aplikace, ale také datovou platformu: databáze, účty úložiště nebo datová jezera by se měly pečlivě monitorovat, protože nízký výkon datové vrstvy aplikace může mít vážné důsledky.

Přehledy o kontejnerech

Pokud vaše aplikace běží Azure Kubernetes Service, Azure Monitor umožňuje snadno monitorovat stav clusteru, uzlů a podů. Služba Container Přehledy s jednoduchou konfigurací pro clustery AKS poskytuje rychlé, vizuální a užitečné informace: od zatížení procesoru a paměti uzlů až po protokoly jednotlivých podů Kubernetes.

Kromě toho pro operátory, kteří preferují použití open source monitorovacího nástroje Kubernetes Prometheus, ale stále se jim líbí snadné používání služby Azure Monitor Container Přehledy, mohou se obě řešení integrovat mezi sebou.

Model sa sidecar přidává samostatný kontejner s zodpovědnostmi, které vyžaduje hlavní kontejner. Běžným případem použití je spouštění nástrojů protokolování a agentů monitorování.

Monitorování sítě

Bez ohledu na provedení nebo programovací jazyk, na který je vaše aplikace založená, může síť připojující váš kód k uživatelům vytvořit nebo narušit prostředí, které vaše aplikace poskytuje. V důsledku toho může být monitorování sítě a řešení souvisejících potíží pro provozní tým zásadní. Komponenta nástroje Azure Monitor, která spravuje síťové komponenty, se nazývá Network Watcher, kolekce nástrojů pro monitorování sítě a řešení potíží. Mezi tyto nástroje patří:

  • Analýza provozu vám poskytne přehled o provozu ve virtuálních sítích a také procento pocházející ze škodlivých IP adres s využitím databází Microsoft Threat Intelligence. Tento nástroj vám ukáže také systémy ve virtuálních sítích, které generují většinu provozu, abyste mohli vizuálně identifikovat kritické body před tím, než se vygenerují do problémů.
  • Network Performance Manager může generovat syntetické přenosy pro měření výkonu síťových připojení přes více propojení, což vám dává perspektivu na vývoj připojení WAN a internetu v průběhu času a nabízí cenné informace o monitorování okruhů Microsoft ExpressRoute.
  • Diagnostika SÍTĚ VPN vám může pomoct site-to-site VPN připojením aplikací k místním uživatelům.
  • Monitorování připojení umožňuje měřit dostupnost sítě mezi sadami koncových bodů.

Další zdroje informací

Data vytváří nejen komponenty vaší aplikace, ale existuje mnoho dalších signálů, které je potřeba sledovat, aby bylo možné efektivně provozovat cloudové prostředí:

  • Protokol aktivit: Toto je protokolový audit, který umožňuje zobrazit všechny změny, které prošly rozhraními API Azure. Může být velmi důležité porozumět náhlým změnám výkonu nebo problémům, které mohly být způsobené chybné konfigurací platformy Azure.
  • Azure Service Health: Výpadky někdy neskončené změnami konfigurace, ale výpadky samotné platformy Azure. Informace o jakémkoli problému souvisejícím s Azure, který ovlivňuje vaši aplikaci, najdete v Azure Service Health protokolů.
  • Azure Advisor: Tady najdete doporučení, jak optimalizovat platformu Azure, abyste snížili náklady, zlepšili svůj postoj k zabezpečení nebo zvýšili dostupnost vašeho prostředí.
  • Azure Security Center: Tento pilíř se nezaměřuje na jeho úplnost: Azure Security Center vám může pomoct pochopit, jestli jsou vaše prostředky Azure nakonfigurované podle osvědčených postupů zabezpečení.

Monitorování externích závislostí

Stejně důležité jako monitorování aplikací a infrastruktury Azure je důležité také monitorování externích závislostí. Ujistěte se, že máte řešení, která vám povedou získat přehled o stavu a dostupnosti externích závislostí, jako jsou služby třetích stran, úložiště balíčků a další související aplikace.

Azure Monitor může mít roli při monitorování externích závislostí. Azure Monitor ingestovat data z několika vlastních zdrojů dat, což poskytuje rozšiřitelnost toho, co je možné monitorovat. Využití vlastních zdrojů dat pro externí závislosti vám poskytuje možnosti Azure Monitor virtuální libovolné služby, koncového bodu nebo softwarového řešení.

Další informace o ingestování dat z vlastních zdrojů najdete v následujících článcích.

Osvědčené postupy monitorování

Korelace událostí

Jednou z klíčových výhod Azure Monitor, že se jedná o monitorovací nástroj pro celou platformu Azure. Jak jsme si ukázali v předchozích částech, Azure Monitor obsahuje metriky a protokoly související s kódem vaší aplikace, platformu, na které běží, datové komponenty a také síť, která aplikaci připojuje ke svým uživatelům. Díky tomu můžou operátoři vzájemně porovnávat metriky různých komponent aplikace a hledat závislosti, které by jinak mohly být skryté.

Řídicí panely v Azure nabízejí skvělý způsob, jak vyzývaly bohaté informace obsažené Azure Monitor ostatním uživatelům. Nezapomeňte vytvořit sdílené řídicí panely, abyste různým skupinám, které se podílejí na provozu vaší aplikace, včetně vývojářů a operátorů, vystavovat relevantní informace. Pokud jsou vyžadovány složitější vizualizace, Azure Monitor data exportovat do Power BI pro pokročilou analýzu dat.

Oznámení

Ať už jde o monitorování aplikací, sítí nebo platforem, neměli byste očekávat, že se operátoři budou neustále dívat na řídicí panely. Místo toho by se výstrahy měly používat k odesílání proaktivních oznámení příslušným jednotlivcům, kteří na ně budou reagovat. Skupiny akcí v Azure Monitor lze použít k oznamování více příjemcům, aktivaci automatizovaných akcí nebo dokonce k automatickému otevření lístků v nástrojích pro správu IT služeb, jako je ServiceNow.

Automatizace výstrah je velmi důležitá kvůli vysoce společné povaze DevOps a vlastní rychlosti potřebné pro efektivní správu incidentů. Na začátku tohoto roku přišla zpráva z DevOps.com s oznámením, že 80 % IT týmů je e-mailem upozorňo na kritické incidenty. E-mail je efektivní formou komunikace, ale neměl by to být nejběžnější způsob oznámení pro kritický problém. Pokud ale můžete definovat akce, které se mají provést při přijímání určitých výstrah (například škálování nahoru nebo dolů), systém se automaticky opravil.

Další úlohy monitorování

Kromě Azure Monitor budete chtít mít přehled o určitých událostech, abyste měli jistotu, že vaše aplikace běží bez problémů:

  • Zkontrolujte limity předplatného Azure pro vaše prostředky a ujistěte se, že se k prostředkům nepřibýte příliš.
  • Principy podpora Azure plánů Přečtěte si nejčastější podpora Azure k informacím. Seznamte se se svým týmem s podpora Azure.
  • Nezapomeňte monitorovat data vypršení platnosti digitálních certifikátů nebo ještě lépe nakonfigurovat automatické obnovení digitálních certifikátů pomocí Azure Key Vault.

Souhrn

Ke správě prostředků Azure můžete použít jakoukoli monitorovací platformu. Nabídka Microsoftu první strany je Azure Monitor komplexní řešení pro metriky a protokoly z infrastruktury do kódu aplikace, včetně možnosti aktivovat výstrahy a automatizované akce a také vizualizaci dat.

Další kroky