Monitorování výkonu clusteru Kubernetes s využitím Container Insights

Díky službě Container Insights můžete pomocí diagramů výkonu a stavu monitorovat úlohy Kubernetes clusterů hostovaných ve službě Azure Kubernetes Service (AKS), Azure Stack nebo jiné prostředí ze dvou perspektiv. Můžete monitorovat přímo z clusteru nebo můžete zobrazit všechny clustery v rámci předplatného Azure Monitor. Zobrazení Azure Container Instances je také možné při monitorování konkrétního clusteru AKS.

Tento článek vám pomůže pochopit dvě perspektivy a jak Azure Monitor vám pomůže rychle posoudit, prozkoumat a vyřešit zjištěné problémy.

Informace o tom, jak povolit službu Container Insights, najdete v tématu zprovoznění služby Container Insights.

Azure Monitor poskytuje zobrazení více clusterů, které zobrazuje stav všech monitorovaných clusterů Kubernetes se systémem Linux a Windows Server 2019 nasazených ve skupinách prostředků ve vašich předplatných. Zobrazuje clustery zjištěné ve všech prostředích, která nejsou monitorovaná řešením. Stav clusteru můžete okamžitě pochopit a z tohoto místa můžete přejít k podrobnostem na stránce s výkonem uzlů a kontroléru nebo přejít k zobrazení grafů výkonu pro cluster. U clusterů AKS, které byly zjištěny a identifikovány jako nemonitorované, můžete kdykoli povolit monitorování.

hlavní rozdíly v monitorování clusteru Windows serveru s využitím služby Container insights v porovnání s clusterem se systémem Linux jsou popsány zde v článku přehled.

Přihlášení k webu Azure Portal

Přihlaste se k webu Azure Portal.

Zobrazení více clusterů z Azure Monitor

Pokud chcete zobrazit stav všech nasazených Kubernetes clusterů, vyberte monitor v levém podokně Azure Portal. v části Přehledy vyberte kontejnery.

Příklad řídicího panelu pro více clusterů Azure Monitor

Můžete určit rozsah výsledků prezentovaných v mřížce a zobrazit tak clustery, které jsou:

  • Clustery Azure – AKS a AKS-Engine hostované ve službě Azure Kubernetes
  • Azure Stack (Preview) – AKS-Engine clustery hostované v Azure Stack
  • Mimo Azure (Preview) – Kubernetes clustery jsou hostované místně.
  • Vše – zobrazení všech clusterů Kubernetes hostovaných v Azure, Azure Stack a místních prostředích, která jsou zaregistrovaná do služby Container Insights

Pokud chcete zobrazit clustery z konkrétního prostředí, vyberte ji v části prostředí v levém horním rohu stránky.

Příklad selektoru v prostředí

Na kartě monitorované clustery se dozvíte následující:

  • Počet clusterů v kritickém nebo nesprávném stavu, v jakém jsou v pořádku nebo nikoli hlášení (označované jako neznámý stav).
  • Zda jsou všechna nasazení modulu Azure Kubernetes Engine (AKS-Engine) v dobrém stavu.
  • Kolik uzlů a systémových prostředí je nasazeno na cluster.
  • Kolik místa na disku je k dispozici a pokud dojde k potížím s kapacitou.

K dispozici jsou tyto stavy:

  • V pořádku: pro virtuální počítač se nezjistily žádné problémy a funguje podle potřeby.
  • Kritické: zjistili jsme jeden nebo několik kritických problémů, které je potřeba vyřešit tak, aby se normální provozní stav obnovil podle očekávání.
  • Upozornění: zjistili jsme jeden nebo víc problémů, které je potřeba vyřešit, nebo se může stát, že by se mohlo stát kritickým stavem.
  • Neznámé: Pokud se službě nepovedlo připojit k uzlu nebo pod, stav se změní na neznámý stav.
  • Nenalezeno: pracovní prostor, skupinu prostředků nebo předplatné obsahující pracovní prostor pro toto řešení bylo odstraněno.
  • Neautorizováno: uživatel nemá požadovaná oprávnění ke čtení dat v pracovním prostoru.
  • Chyba: při pokusu o čtení dat z pracovního prostoru došlo k chybě.
  • Nesprávně nakonfigurované: v zadaném pracovním prostoru se nepovedlo správně nakonfigurovat kontejner Insights.
  • Žádná data: za posledních 30 minut se v pracovním prostoru nenahlásila žádná data.

Služba Health (stav) počítá celkový stav clusteru jako nejhorší ze tří stavů s jednou výjimkou. Pokud některý ze tří stavů není znám, celkový stav clusteru zobrazuje Neznámý.

Následující tabulka uvádí rozpis výpočtu, který řídí stav pro monitorovaný cluster v zobrazení více clusterů.

Monitorovaný cluster Status Dostupnost
Uživatel pod
V pořádku 100 %
Upozornění 90 – 99%
Kritické <90%
Neznámý Pokud není uvedeno za posledních 30 minut
Systém pod
V pořádku 100 %
Upozornění
Kritické <100%
Neznámý Pokud není uvedeno za posledních 30 minut
Node
V pořádku >85%
Upozornění 60 – 84%
Kritické <60%
Neznámý Pokud není uvedeno za posledních 30 minut

V seznamu clusterů můžete přejít na stránku clusteru tak, že vyberete název clusteru. Pak přejdete na stránku výkon uzlů , a to tak, že vyberete souhrn uzlů ve sloupci uzly tohoto konkrétního clusteru. Případně můžete přejít k podrobnostem na stránce s výkonem řadičů , a to výběrem souhrnu sloupce uživatelské lusky nebo Systémová lusky .

Zobrazení výkonu přímo z clusteru

přístup k kontejneru insights je dostupný přímo z clusteru AKS, a to tak, že v > levém podokně vyberete cluster Přehledy, nebo když jste v zobrazení více clusterů vybrali cluster. Informace o clusteru jsou rozdělené do čtyř perspektiv:

  • Cluster
  • Uzly
  • Kontrolery
  • Kontejnery

Poznámka

Prostředí popsané ve zbývající části tohoto článku platí i pro zobrazení výkonu a stavu clusterů Kubernetes hostovaných v Azure Stack nebo jiném prostředí, když je vybraný ze zobrazení více clusterů.

Otevře se výchozí stránka a zobrazí se čtyři grafy výkonu řádků, které zobrazují klíčové metriky výkonu vašeho clusteru.

Příklady grafů výkonu na kartě cluster

Grafy výkonu zobrazují čtyři metriky výkonu:

  • **  Využití % procesoru uzlem**: agregovaná perspektiva využití procesoru pro celý cluster. Pokud chcete filtrovat výsledky pro časový rozsah, vyberte v selektoru percentilu nad grafem hodnotu AVG, min, 50, devadesát, 95. nebo Max . Filtry lze použít buď jednotlivě, nebo v kombinaci.
  • **  Využití % paměti uzlu**: agregovaná perspektiva využití paměti pro celý cluster. Pokud chcete filtrovat výsledky pro časový rozsah, vyberte v selektoru percentilu nad grafem hodnotu AVG, min, 50, devadesát, 95. nebo Max . Filtry lze použít buď jednotlivě, nebo v kombinaci.
  • Počet uzlů: počet uzlů a stav z Kubernetes. Stavy clusterů, které jsou reprezentovány, jsou celkem, připravené a nejsou připravené. Je možné je filtrovat individuálně nebo kombinovat v selektoru nad grafem.
  • Počet aktivních pod: počet pod a stav z Kubernetes. Stavy, které jsou reprezentovány, jsou celkem, čeká, spuštěno, neznámý, úspěch nebo selhání. Je možné je filtrovat individuálně nebo kombinovat v selektoru nad grafem.

Pomocí kláves se šipkami vlevo a vpravo můžete cyklicky procházet jednotlivé datové body v grafu. Pomocí kláves se šipkami nahoru a dolů můžete cyklicky procházet čáry percentilu. Výběrem ikony připnutí v pravém horním rohu libovolného z grafů připněte vybraný graf na poslední řídicí panel Azure, který jste si prohlíželi. Na řídicím panelu můžete změnit velikost a umístění grafu. Výběr grafu z řídicího panelu vás přesměruje na Container Insights a načte správný rozsah a zobrazení.

Container Insights také podporuje Azure Monitor metrik,kde můžete vytvářet vlastní grafy grafů, korelovat a zkoumat trendy a připnout je na řídicí panely. V průzkumníku metrik můžete také použít kritéria, která jste nastavili, k vizualizaci metrik jako základu pravidla upozornění na základě metriky.

Zobrazení metrik kontejneru v Průzkumníku metrik

V průzkumníku metrik můžete zobrazit metriky agregovaného využití uzlů a podů z Container Insights. Následující tabulka shrnuje podrobnosti, které vám pomůžou pochopit, jak pomocí grafů metrik vizualizovat metriky kontejnerů.

Obor názvů Metric Popis
insights.container/nodes
cpuUsageMillicores Agregované měření využití procesoru v clusteru Je to jádro procesoru rozdělené na 1 000 jednotek (mili = 1 000). Používá se k určení využití jader v kontejneru, kde mnoho aplikací může používat jedno jádro.
cpuUsagePercentage Agregované průměrné využití procesoru měřené v procentech v rámci clusteru.
memoryRssBytes Paměť RSS kontejneru používaná v bajtech.
memoryRssPercentage Využití paměti RSS kontejneru v procentech.
memoryWorkingSetBytes Využitá paměť pracovní sady kontejnerů
memoryWorkingSetPercentage Paměť pracovní sady kontejneru využitá v procentech.
počet uzlů Počet uzlů z Kubernetes.
insights.container/pods
PodCount Počet podů z Kubernetes.

Metriku můžete rozdělit, abyste ji mohli zobrazit podle dimenze, a vizualizovat, jak se jednotlivé segmenty mezi sebou porovnávají. U uzlu můžete graf segmentovat podle dimenze hostitele. Z podu ho můžete segmentovat podle následujících dimenzí:

  • Controller
  • Obor názvů Kubernetes
  • Uzel
  • Fáze

Analýza uzlů, kontrolerů a stavu kontejnerů

Když přepnete na karty Uzly, Kontrolery a Kontejnery, na pravé straně stránky se automaticky zobrazí podokno vlastností. Zobrazuje vlastnosti vybrané položky, které zahrnují popisky, které jste definovali pro uspořádání objektů Kubernetes. Při výběru uzlu s Linuxem se v části Kapacita místního disku zobrazuje také dostupné místo na disku a procento využití pro každý disk prezentované uzlu. Výběrem >> odkazu v podokně podokno zobrazíte nebo skryjete.

Při rozbalování objektů v hierarchii se podokno vlastností aktualizuje na základě vybraného objektu. V podokně můžete také zobrazit protokoly kontejnerů Kubernetes (stdout/stderror), události a metriky podů výběrem odkazu Zobrazit živá data (Preview) v horní části podokna. Další informace o konfiguraci potřebné k udělení a řízení přístupu k zobrazení těchto dat najdete v tématu Nastavení živých dat (Preview). Během revize prostředků clusteru můžete tato data z kontejneru zobrazit v reálném čase. Další informace o této funkci najdete v tématu Zobrazení protokolů, událostí a metrik podů Kubernetes v reálném čase. Pokud chcete zobrazit data protokolu Kubernetes uložená v pracovním prostoru na základě předdefinovaných prohledávání protokolů, vyberte Zobrazit protokoly kontejneru z rozevíracího seznamu Zobrazení v analýzách. Další informace o tomto tématu najdete v tématu Jak dotazovat protokoly z Container Insights.

Pomocí možnosti + Přidat filtr v horní části stránky můžete filtrovat výsledky zobrazení podle služby, uzlu, oboru názvů nebo fondu uzlů. Po výběru rozsahu filtru vyberte jednu z hodnot zobrazených v poli Vybrat hodnoty. Po nakonfigurování se filtr použije globálně při zobrazení jakékoli perspektivy clusteru AKS. Vzorec podporuje pouze znaménko rovná se. K dalšímu zúžení výsledků můžete přidat další filtry nad první filtry. Pokud například zadáte filtr podle uzlu, můžete pro druhý filtr vybrat pouze možnost Služba nebo Obor názvů.

Zadání filtru na jedné kartě se bude dál uplatňovat, když vyberete jinou. Odstraní se po výběru symbolu x vedle zadaného filtru.

Přepněte na kartu Uzly a hierarchie řádků se řídí objektový modelem Kubernetes, který začíná uzlem v clusteru. Rozbalte uzel a zobrazte jeden nebo více podů spuštěných na uzlu. Pokud je do podu seskupených více než jeden kontejner, zobrazí se jako poslední řádek v hierarchii. Můžete také zobrazit, kolik úloh nesouvisecích s pody běží na hostiteli, pokud má hostitel tlak na procesor nebo paměť.

Příklad hierarchie uzlů Kubernetes v zobrazení výkonu

Windows Kontejnery serveru s operačním systémem Windows Server 2019 se zobrazí za všemi uzly založenými na Linuxu v seznamu. Když rozbalíte uzel Windows Server, můžete zobrazit jeden nebo více podů a kontejnerů, které běží na uzlu. Po výběru uzlu se v podokně vlastností zobrazí informace o verzi.

Příklad hierarchie uzlů s Windows uzly serveru

Azure Container Instances virtuální uzly, na které běží operační systém Linux, se zobrazí za posledním uzlem clusteru AKS v seznamu. Když rozbalíte Container Instances virtuální uzel, můžete zobrazit jeden nebo více Container Instances podů a kontejnerů, které běží na uzlu. Metriky se neshromažďovaly a hlásí pro uzly, pouze pro pody.

Příklad hierarchie uzlu s Container Instances seznamem

Z rozbaleného uzlu můžete přejít k podrobnostem z podu nebo kontejneru, který běží na uzlu, ke kontroleru a zobrazit data o výkonu filtrovaná pro tento kontroler. Vyberte hodnotu ve sloupci Kontroler pro konkrétní uzel.

Snímek obrazovky znázorňuje přechod k podrobnostem z uzlu do kontroleru v zobrazení výkonu

V horní části stránky vyberte kontrolery nebo kontejnery a zkontrolujte stav a využití prostředků pro tyto objekty. Pokud chcete zkontrolovat využití paměti, v rozevíracím seznamu Metrika vyberte Paměť RSS nebo Pracovní sada paměti. RSS pro paměť se podporuje jenom pro Kubernetes verze 1.8 a novější. V opačném případě zobrazíte hodnoty pro   % Min jako NaN   %, což je hodnota číselného datového typu, která představuje nedefinované nebo nezastupitelné hodnoty.

Zobrazení výkonu uzlů kontejneru

Pracovní sada paměti zobrazuje zahrnutou místní i virtuální paměť (mezipaměť) a je celkovým součtem toho, co aplikace používá. Paměť RSS zobrazuje pouze hlavní paměť (což není nic jiného než místní paměť, jinými slovy). Tato metrika ukazuje skutečnou kapacitu dostupné paměti. Jaký je rozdíl mezi místní pamětí a virtuální pamětí?

  • Aktuální paměť nebo hlavní paměť je skutečné množství paměti počítače dostupné pro uzly clusteru.

  • Virtuální paměť je vyhrazené místo na pevném disku (mezipaměť), které operační systém používá k prohození dat z paměti na disk, když je zapotřebí, a pak je načítá zpět do paměti.

Ve výchozím nastavení jsou data o výkonu založená na posledních šesti hodinách, ale okno můžete změnit pomocí možnosti TimeRange v levém horním rohu. Výsledky v rámci časového rozsahu můžete filtrovat také výběrem možností Min(Min), Avg(Průměr), 50th (50.), 90. (90.), 95. (95.) a Max (Max) v selektoru percentilu.

Výběr percentilu pro filtrování dat

Když najedete myší na pruhový graf pod sloupcem Trend, zobrazí se na každém panelu využití procesoru nebo paměti v závislosti na tom, která metrika je vybraná, během ukázkového období 15 minut. Po výběru trendového grafu pomocí klávesnice můžete cyklicky procházet jednotlivé pruhy pomocí kláves Alt+Page up nebo Alt+Page down. Zobrazí se stejné podrobnosti jako při najetí myší na pruh.

Trend příklad přechodu myší na pruhový graf

V dalším příkladu je pro první uzel v seznamu aks-nodepool1- hodnota kontejnerů 9. Tato hodnota je souhrn celkového počtu nasazených kontejnerů.

Příklad souhrnu kontejnerů na uzel

Tyto informace vám můžou pomoct rychle zjistit, jestli máte mezi uzly v clusteru správnou rovnováhu kontejnerů.

Informace, které se zobrazí při zobrazení karty Uzly, jsou popsány v následující tabulce.

Sloupec Popis
Název Název hostitele
Status Kubernetes zobrazení stavu uzlu.
Minimální   %, prům .%   , 50   %, 90   %, 95.   %, max. % Průměrné procento uzlů na základě percentilu během vybrané doby trvání.
Min, AVG, 50, 90, 95., Max Průměrná hodnota uzlů na základě hodnoty percentilu v době zvolené doby trvání. Průměrná hodnota se měří od nastaveného limitu CPU/paměti pro uzel. V případě lusků a kontejnerů je to průměrná hodnota uvedená v hostiteli.
Kontejnery Počet kontejnerů.
Doba provozu Představuje čas, kdy byl uzel spuštěn nebo byl restartován.
Controller Pouze pro kontejnery a lusky. Zobrazuje, ve kterém řadiči se nachází. Ne všechny lusky jsou v kontroleru, takže se může zobrazit N/a.
Trend Minimální   %, prům .%   , 50   %, 90   %, 95.   %, max. % Trend pruhového grafu představuje procento metriky průměrného percentilu řadiče.

Po rozbalení uzlu s názvem jiný proces si můžete všimnout zatížení. Představuje nekontejnerové procesy, které běží na vašem uzlu, a zahrnuje:

  • Samostatné spravované nebo spravované procesy Kubernetes bez kontejnerů

  • Běhové procesy kontejneru

  • Kubelet

  • Systémové procesy spuštěné v uzlu

  • Jiné úlohy bez Kubernetes spuštěné v hardwaru nebo na virtuálním počítači s uzlem

Počítá se podle: celkové využití z CAdvisor - využití z kontejneru procesu.

V selektoru vyberte možnost řadiče.

Vybrat zobrazení řadičů

Tady můžete zobrazit stav výkonu pro řadiče a Container Instances řadiče virtuálních uzlů nebo nepřipojené k řadiči virtuální uzel.

<Zobrazení výkonu názvů> řadičů

Hierarchie řádků začíná na řadiči. Když rozbalíte kontroler, zobrazíte jednu nebo více lusků. Rozbalte uzel pod a poslední řádek zobrazí kontejner seskupený do pole pod. Z rozbaleného kontroleru můžete přejít k podrobnostem uzlu, na kterém je spuštěný, aby se zobrazila data výkonu filtrovaná pro tento uzel. Container Instances lusky nepřipojené k řadiči se v seznamu zobrazí jako poslední.

Příklad hierarchie řadičů s uvedením Container Instances lusky

Vyberte hodnotu ve sloupci uzel pro konkrétní kontroler.

Příklad přechodu k podrobnostem z kontroleru na uzel v zobrazení výkonu

Informace, které se zobrazí při zobrazení řadičů, jsou popsány v následující tabulce.

Sloupec Popis
Název Název kontroleru.
Status Stav souhrnu kontejnerů po dokončení jeho spuštění se stavem, jako je například OK, ukončeno, Chyba, Zastaveno nebo pozastaveno. Pokud je kontejner spuštěný, ale stav buď nebyl správně zobrazen nebo nebyl vyzvednut agentem a nereagoval na více než 30 minut, je stav Neznámý. Další podrobnosti o ikoně stavu jsou uvedeny v následující tabulce.
Minimální   %, prům .%   , 50   %, 90   %, 95.   %, max. % Souhrnný průměr průměrného procenta každé entity pro vybranou metriku a percentil
Min, AVG, 50, 90, 95., Max Souhrn průměrného výkonu procesoru v millicore nebo paměti v kontejneru pro vybraný percentil. Průměrná hodnota se měří od limitu CPU nebo paměti nastaveného pro objekt pod.
Kontejnery Celkový počet kontejnerů pro řadič nebo pod.
Opětovné Souhrn počtu restartování z kontejnerů.
Doba provozu Představuje čas od spuštění kontejneru.
Uzel Pouze pro kontejnery a lusky. Zobrazuje, ve kterém řadiči se nachází.
Trend Minimální   %, prům .%   , 50   %, 90   %, 95.   %, max. % Trend pruhového grafu představuje metriku průměrné percentilu řadiče.

Ikony v poli Stav označují online stav kontejnerů.

Ikona Status
Ikona stavu spuštění připraveno Spuštěno (připraveno)
Ikona stavu čekání nebo pozastavení Čekání nebo pozastavení
Ikona posledního hlášeného běžícího stavu Poslední zpráva byla spuštěna, ale nereagovala po dobu delší než 30 minut.
Ikona úspěšného stavu Stav se úspěšně zastavil nebo se nepovedlo zastavit.

Ikona stavu zobrazuje počet na základě toho, co poskytuje. Zobrazuje nejhorší dva stavy a při najetí myší na stav zobrazuje souhrnný stav ze všech lusků v kontejneru. Pokud není připravený stav, zobrazí se hodnota stav (0).

V selektoru vyberte kontejnery.

Vybrat zobrazení kontejnerů

Tady si můžete prohlédnout stav výkonu pro Azure Kubernetes a kontejnery Azure Container Instances.

<Zobrazení výkonu názvů> kontejnerů

Z kontejneru můžete přejít k podrobnostem nebo uzlu, abyste zobrazili data o výkonu filtrovaná pro daný objekt. Vyberte hodnotu pod sloupcem pod nebo uzlu pro konkrétní kontejner.

Příklad přechodu k podrobnostem z uzlu na kontejnery v zobrazení výkonu

Informace, které se zobrazí při zobrazení kontejnerů, jsou popsány v následující tabulce.

Sloupec Popis
Název Název kontroleru.
Status Stav kontejnerů, pokud existují. Další podrobnosti o ikoně stavu jsou uvedeny v následující tabulce.
Minimální   %, prům .%   , 50   %, 90   %, 95.   %, max. % Souhrn průměrného procenta jednotlivých entit pro vybranou metriku a percentil.
Min, AVG, 50, 90, 95., Max Souhrn průměrného výkonu procesoru v millicore nebo paměti v kontejneru pro vybraný percentil. Průměrná hodnota se měří od limitu CPU nebo paměti nastaveného pro objekt pod.
Pod Kontejner, ve kterém se pod nachází.
Uzel  Uzel, ve kterém se kontejner nachází.
Restartuje Představuje čas od spuštění kontejneru.
Doba provozu Představuje čas od spuštění nebo restartování kontejneru.
Trend Min   %, Avg   %, 50th   %, 90th   %, 95th   %, Max % Trend pruhového grafu představuje průměrné procento percentilové metriky kontejneru.

Ikony v poli stavu označují online stavy podů, jak je popsáno v následující tabulce.

Ikona Status
Ikona Připraveno ke spuštění stavu Spuštěno (připraveno)
Ikona stavu Čekání nebo Pozastaveno Čeká nebo Pozastaveno
Poslední nahlášená ikona stavu spuštění Poslední nahlášený provoz, ale neodpověděl za více než 30 minut
Ikona Ukončený stav Úspěšné zastavení nebo neúspěšné zastavení
Ikona stavu Selhání Stav selhání

Monitorování a vizualizace konfigurací sítě

Azure Network Policy Manager obsahuje informativní metriky Prometheus, které umožňují monitorovat a lépe porozumět konfiguracím sítě. Poskytuje integrované vizualizace ve cvičeních Azure Portal Grafana Labs. Podrobnosti najdete v tématu Monitorování a vizualizace konfigurací sítě pomocí Azure NPM.

Workbooks

Sešity kombinují text, dotazy protokolu, metriky a parametry do bohatých interaktivních sestav, které umožňují analyzovat výkon clusteru. Popis sešitů dostupných pro Container Insights najdete v tématu Sešity v Container Insights.

Další kroky

  • V tématu Vytváření upozornění na výkon pomocí Služby Container Insights se dozvíte, jak vytvářet upozornění na vysoké využití procesoru a paměti pro podporu vašich DevOps nebo provozních procesů a postupů.

  • Prohlédněte si příklady dotazů na protokol a podívejte se na předdefinované dotazy a příklady, které můžete vyhodnotit nebo přizpůsobit pro výstrahy, vizualizaci nebo analýzu clusterů.

  • Pokud chcete získat informace o zobrazení stavu clusteru Kubernetes, podívejte se na monitorování stavu clusteru.