Osvědčené postupy pro monitorování Kubernetes pomocí služby Azure Monitor

Tento článek obsahuje osvědčené postupy pro monitorování stavu a výkonu služeb Azure Kubernetes Service (AKS) a clusterů Kubernetes s podporou Služby Azure Arc. Pokyny vycházejí z pěti pilířů efektivity architektury popsané v architektuře Azure Well-Architected Framework.

Spolehlivost

V cloudu bereme na vědomí, že k selháním dochází. Místo snahy kompletně zabránit selháním je cílem minimalizace dopadu selhání jedné komponenty. Pomocí následujících informací nejlépe využijete Azure Monitor k zajištění spolehlivosti clusterů Kubernetes a monitorovacího prostředí.

Kontrolní seznam návrhu

  • Povolte výstřižky metrik Prometheus pro váš cluster.
  • Povolte Přehledy kontejnerů pro shromažďování protokolů a dat o výkonu z vašeho clusteru.
  • Vytvořte nastavení diagnostiky pro shromažďování protokolů řídicí roviny pro clustery AKS.
  • Povolte doporučená upozornění prometheus.
  • Zajistěte dostupnost pracovního prostoru služby Log Analytics podporujícího přehledy kontejnerů.

Doporučení pro konfiguraci

Doporučení Výhoda
Povolte výstřižky metrik Prometheus pro váš cluster. Pokud ještě nemáte prostředí Prometheus , povolte v clusteru službu Azure Monitor spravované služby pro Prometheus . K analýze shromážděných dat Prometheus použijte Azure Managed Grafana . Informace o přizpůsobení výstřižků metrik Prometheus ve spravované službě Azure Monitor pro Prometheus vám umožní shromažďovat další metriky nad rámec výchozí konfigurace.
Povolte Přehledy kontejnerů pro shromažďování protokolů a dat o výkonu z vašeho clusteru. Container Insights shromažďuje protokoly stdout/stderr, metriky výkonu a události Kubernetes z každého uzlu v clusteru. Poskytuje řídicí panely a sestavy pro analýzu těchto dat, včetně dostupnosti uzlů a dalších komponent. Využijte Log Analytics k identifikaci chyb dostupnosti v shromážděných protokolech.
Vytvořte nastavení diagnostiky pro shromažďování protokolů řídicí roviny pro clustery AKS. AKS implementuje protokoly řídicích rovin jako protokoly prostředků ve službě Azure Monitor. Vytvořte nastavení diagnostiky pro odesílání těchto protokolů do pracovního prostoru služby Log Analytics, abyste mohli pomocí dotazů protokolu identifikovat chyby a problémy ovlivňující dostupnost.
Povolte doporučená upozornění prometheus. Výstrahy ve službě Azure Monitor vás aktivně upozorňují, když se zjistí problémy. Začněte sadou doporučených pravidel upozornění Prometheus, která detekují nejběžnější problémy s dostupností a výkonem vašeho clusteru. Potenciálně můžete přidat upozornění prohledávání protokolů pomocí dat shromážděných službou Container Insights.
Zajistěte dostupnost pracovního prostoru služby Log Analytics podporujícího přehledy kontejnerů. Přehledy kontejnerů závisí na pracovním prostoru služby Log Analytics. Pokud chcete zajistit spolehlivost pracovního prostoru, podívejte se na osvědčené postupy pro protokoly služby Azure Monitor.

Zabezpečení

Zabezpečení je nejdůležitějším aspektem jakékoli architektury. Azure Monitor poskytuje funkce, které využívají princip nejnižších oprávnění i hloubkové ochrany. Pomocí následujících informací můžete monitorovat clustery Kubernetes a zajistit, aby ke shromážděným datům přistupovali jenom autorizovaní uživatelé.

Kontrolní seznam návrhu

  • Pro připojení ke službě Container Insights použijte ověřování spravovaných identit pro váš cluster.
  • Zvažte použití privátního propojení Azure pro cluster pro připojení k pracovnímu prostoru služby Azure Monitor pomocí privátního koncového bodu.
  • Analýza provozu slouží k monitorování síťového provozu do a z clusteru.
  • Povolte pozorovatelnost sítě.
  • Zajistěte zabezpečení pracovního prostoru služby Log Analytics podporujícího přehledy kontejnerů.

Doporučení pro konfiguraci

Doporučení Výhoda
Pro připojení ke službě Container Insights použijte ověřování spravovaných identit pro váš cluster. Ověřování spravované identity je výchozím nastavením pro nové clustery. Pokud používáte starší ověřování, měli byste migrovat na spravovanou identitu , abyste odebrali místní ověřování založené na certifikátech.
Zvažte použití privátního propojení Azure pro cluster pro připojení k pracovnímu prostoru služby Azure Monitor pomocí privátního koncového bodu. Spravovaná služba Azure pro Prometheus ukládá data do pracovního prostoru služby Azure Monitor, který ve výchozím nastavení používá veřejný koncový bod. Připojení iony k veřejným koncovým bodům jsou zabezpečené pomocí kompletního šifrování. Pokud potřebujete privátní koncový bod, můžete pomocí privátního propojení Azure umožnit clusteru připojit se k pracovnímu prostoru prostřednictvím autorizovaných privátních sítí. Privátní propojení se dá použít také k vynucení příjmu dat pracovního prostoru přes ExpressRoute nebo VPN.

Podrobnosti o konfiguraci clusteru pro privátní propojení najdete v části Private Link pro příjem dat pro spravovaný pracovní prostor Prometheus a Azure Monitor. Podrobnosti o dotazování na data pomocí privátního propojení najdete v tématu Použití privátních koncových bodů pro spravovaný pracovní prostor Prometheus a Azure Monitoru.
Analýza provozu slouží k monitorování síťového provozu do a z clusteru. Analýzy provozu analyzují protokoly toku NSG služby Azure Network Watcher, aby poskytovaly přehled o toku provozu ve vašem cloudu Azure. Tento nástroj vám umožní zajistit, aby pro váš cluster nedošlo k exfiltraci dat, a zjistit, jestli jsou vystavené nějaké nepotřebné veřejné IP adresy.
Povolte pozorovatelnost sítě. Doplněk pozorovatelnosti sítě pro AKS poskytuje pozorovatelnost napříč několika vrstvami v zásobníku sítí Kubernetes. monitorování a sledování přístupu mezi službami v clusteru (provoz east-west).
Zajistěte zabezpečení pracovního prostoru služby Log Analytics podporujícího přehledy kontejnerů. Přehledy kontejnerů závisí na pracovním prostoru služby Log Analytics. Informace o zabezpečení pracovního prostoru najdete v doporučených postupech pro protokoly služby Azure Monitor.

Optimalizace nákladů

Optimalizace nákladů se týká způsobů, jak snížit zbytečné výdaje a zlepšit efektivitu provozu. Můžete výrazně snížit náklady na Azure Monitor tím, že pochopíte různé možnosti konfigurace a příležitosti ke snížení množství dat, která shromažďuje. Podívejte se na informace o nákladech a využití služby Azure Monitor, abyste pochopili různé způsoby poplatků za Azure Monitor a způsob zobrazení měsíční faktury.

Poznámka:

Viz Optimalizace nákladů ve službě Azure Monitor , kde najdete doporučení pro optimalizaci nákladů ve všech funkcích služby Azure Monitor.

Kontrolní seznam návrhu

  • Nepovolujte shromažďování přehledů kontejnerů metrik Prometheus.
  • Nakonfigurujte shromažďování agentů tak, aby upravovali shromažďování dat v Container Insights.
  • Upravte nastavení pro shromažďování dat metrik podle Container Insights.
  • Pokud nepoužíváte prostředí Přehledy kontejnerů na webu Azure Portal, zakažte shromažďování dat metrik.
  • Pokud se na tabulku protokolů kontejneru pravidelně dotazujete nebo ji používáte pro výstrahy, nakonfigurujte ji jako základní protokoly.
  • Omezte shromažďování protokolů prostředků, které nepotřebujete.
  • Pro protokoly prostředků AKS použijte protokolování specifické pro prostředky AKS a nakonfigurujte tabulky jako základní protokoly.
  • S využitím OpenCost můžete shromažďovat podrobnosti o nákladech na Kubernetes.

Doporučení pro konfiguraci

Doporučení Výhoda
Nepovolujte shromažďování metrik Prometheus prometheus v pracovním prostoru služby Log Analytics, pokud jste povolili výstřižky metrik pomocí nástroje Prometheus. Kromě výstřižků metrik Prometheus z vašeho clusteru pomocí spravované služby Azure Monitor pro Prometheus můžete nakonfigurovat přehledy kontejnerů tak, aby shromáždily metriky Prometheus v pracovním prostoru služby Log Analytics. To je redundantní s daty ve spravovaném systému Prometheus a výsledkem budou další náklady.
Nakonfigurujte agenta pro úpravu shromažďování dat v Container Insights. Analyzujte data shromážděná službou Container Insights, jak je popsáno v tématu Řízení příjmu dat, abyste snížili náklady a upravili konfiguraci tak, aby se zastavilo shromažďování dat, která nepotřebujete.
Upravte nastavení pro shromažďování dat metrik podle Container Insights. Podrobnosti o úpravě četnosti shromažďování dat metrik a oborů názvů shromažďovaných službou Container Insights najdete v tématu Povolení nastavení optimalizace nákladů.
Pokud nepoužíváte prostředí Přehledy kontejnerů na webu Azure Portal, zakažte shromažďování dat metrik. Container Insights shromažďuje mnoho stejných hodnot metrik jako Managed Prometheus. Shromažďování těchto metrik můžete zakázat tak, že nakonfigurujete přehledy kontejnerů tak, aby shromažďoval pouze protokoly a události , jak je popsáno v tématu Povolení nastavení optimalizace nákladů v Přehledech kontejnerů. Tato konfigurace zakáže prostředí Přehledy kontejnerů na webu Azure Portal, ale pomocí Grafany můžete vizualizovat metriky Prometheus a Log Analytics k analýze dat protokolů shromážděných službou Container Insights.
Pokud se na tabulku protokolů kontejneru pravidelně dotazujete nebo ji používáte pro výstrahy, nakonfigurujte ji jako základní protokoly. Převeďte schéma Container Insights na ContainerLogV2 , které je kompatibilní se základními protokoly, a může přinést významné úspory nákladů, jak je popsáno v tématu Řízení příjmu dat za účelem snížení nákladů.
Omezte shromažďování protokolů prostředků, které nepotřebujete. Protokoly řídicí roviny pro clustery AKS se implementují jako protokoly prostředků ve službě Azure Monitor. Vytvořte nastavení diagnostiky pro odeslání těchto dat do pracovního prostoru služby Log Analytics. Informace o tom, které kategorie byste měli shromáždit, najdete v tématu Shromažďování protokolů řídicí roviny pro clustery AKS.
Pro protokoly prostředků AKS použijte protokolování specifické pro prostředky AKS a nakonfigurujte tabulky jako základní protokoly. AKS podporuje pro protokoly prostředků buď režim diagnostiky Azure, nebo režim specifický pro prostředky. Zadejte protokoly prostředků, abyste povolili možnost nakonfigurovat tabulky pro základní protokoly, které poskytují nižší poplatky za příjem dat za protokoly, které se dotazují jenom příležitostně a nepoužívají se k upozorňování.
S využitím OpenCost můžete shromažďovat podrobnosti o nákladech na Kubernetes. OpenCost je opensourcový projekt neutrálního CNCF sandboxu, který vám pomůže porozumět nákladům na Kubernetes a podpořit vaši schopnost získat přehled o nákladech na AKS. Exportuje podrobná data nákladů kromě cen Azure specifických pro zákazníky do úložiště Azure, aby správci clusteru pomohli analyzovat a kategorizovat náklady.

Provozní dokonalost

Efektivita provozu se týká provozních procesů, které vyžadují zachování spolehlivého provozu služby v produkčním prostředí. Následující informace vám použijí k minimalizaci provozních požadavků na monitorování clusterů Kubernetes.

Kontrolní seznam návrhu

  • Projděte si pokyny pro monitorování všech vrstev prostředí Kubernetes.
  • Pomocí Kubernetes s podporou Azure Arc můžete monitorovat clustery mimo Azure.
  • Používejte spravované služby Azure pro nativní cloudové nástroje.
  • Integrujte clustery AKS do stávajících monitorovacích nástrojů.
  • Pomocí zásad Azure povolte shromažďování dat z clusteru Kubernetes.

Doporučení pro konfiguraci

Doporučení Výhoda
Projděte si pokyny pro monitorování všech vrstev prostředí Kubernetes. Monitorování výkonu clusteru Kubernetes pomocí přehledů kontejnerů zahrnuje pokyny a osvědčené postupy pro monitorování celého prostředí Kubernetes ze sítě, clusteru a aplikačních vrstev.
Pomocí Kubernetes s podporou Azure Arc můžete monitorovat clustery mimo Azure. Kubernetes s podporou Azure Arc umožňuje monitorování clusterů Kubernetes v jiných cloudech pomocí stejných nástrojů jako clustery AKS, včetně přehledů kontejnerů a spravované služby Azure Monitor pro Prometheus.
Používejte spravované služby Azure pro nativní cloudové nástroje. Spravovaná služba Azure Monitor pro Prometheus a Azure managed Grafana podporují všechny funkce cloudových nativních nástrojů Prometheus a Grafana, aniž by bylo nutné provozovat základní infrastrukturu. Tyto nástroje můžete rychle zřídit a nasadit clustery Kubernetes s minimální režií. Tyto služby umožňují přístup k rozsáhlé knihovně pravidel komunity a řídicích panelů pro monitorování prostředí Kubernetes.
Integrujte clustery AKS do stávajících monitorovacích nástrojů. Pokud už máte investice do Prometheus a Grafany, integrujte clustery AKS a spravované služby Azure do stávajícího prostředí s využitím pokynů v monitorování clusterů Kubernetes pomocí služeb Azure a cloudových nativních nástrojů.
Pomocí zásad Azure povolte shromažďování dat z clusteru Kubernetes. Pomocí služby Azure Policy povolte shromažďování dat pro povolení metrik Prometheus, přehledů kontejnerů a nastavení diagnostiky. Tím zajistíte, že se všechny nové clustery automaticky monitorují a vynucují konfiguraci monitorování.

Efektivita výkonu

Efektivita výkonu je schopnost úlohy škálovat se tak, aby efektivním způsobem splňovala požadavky, které na ni kladou uživatelé. Pomocí následujících informací můžete monitorovat výkon clusterů Kubernetes a zajistit, aby byly nakonfigurované pro maximální výkon.

Kontrolní seznam návrhu

  • Povolte shromažďování metrik Prometheus pro váš cluster.
  • Povolte Container Insights ke sledování výkonu clusteru.
  • Povolte doporučená upozornění prometheus.

Doporučení pro konfiguraci

Doporučení Výhoda
Povolte shromažďování metrik Prometheus pro váš cluster. Prometheus je řešení metrik nativní pro cloud z nativní služby Cloud Native Compute Foundation a nejběžnější nástroj používaný ke shromažďování a analýze dat metrik z clusterů Kubernetes. Pokud ještě nemáte prostředí Prometheus , povolte v clusteru službu Azure Monitor spravované služby pro Prometheus . K analýze shromážděných dat Prometheus použijte Azure Managed Grafana .

Informace o přizpůsobení výstřižků metrik Prometheus ve spravované službě Azure Monitor pro Prometheus vám umožní shromažďovat další metriky nad rámec výchozí konfigurace.
Povolte Container Insights ke sledování výkonu clusteru. Když pro cluster Kubernetes povolíte přehledy kontejnerů , můžete pomocí zobrazení a sešitů sledovat výkon komponent clusteru. Tato data se můžou překrývat s daty shromážděnými nástrojem Prometheus. Doporučení týkající se nákladů najdete v části Optimalizace nákladů.
Povolte doporučená upozornění prometheus. Výstrahy ve službě Azure Monitor vás aktivně upozorňují, když se zjistí problémy. Začněte sadou doporučených pravidel upozornění Prometheus, která detekují nejběžnější problémy s dostupností a výkonem vašeho clusteru. Potenciálně můžete přidat upozornění prohledávání protokolů pomocí dat shromážděných službou Container Insights.

Další krok