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

Pomocí sešitů, grafů výkonu a stavu v Přehledech kontejnerů můžete monitorovat úlohy clusterů Kubernetes hostovaných ve službě Azure Kubernetes Service (AKS), Azure Stack nebo jiném prostředí.

Tento článek vám pomůže porozumět dvěma perspektivám a tomu, jak vám Azure Monitor pomůže rychle vyhodnotit, prozkoumat a vyřešit zjištěné problémy.

Workbooks

Sešity kombinují text, dotazy na protokoly, metriky a parametry do bohatých interaktivních sestav, které můžete použít k analýze výkonu clusteru. Popis sešitů dostupných pro přehledy kontejnerů a jejich přístup najdete v tématu Sešity v přehledech kontejnerů.

Zobrazení s více clustery ze služby Azure Monitor

Azure Monitor poskytuje zobrazení s více clustery, které zobrazuje stav všech monitorovaných clusterů Kubernetes nasazených napříč skupinami prostředků ve vašich předplatných. Zobrazuje také clustery zjištěné ve všech prostředích, která řešení nemonitoruje. V tomto zobrazení můžete okamžitě porozumět stavu clusteru a pak přejít na stránku výkonu uzlu a kontroleru nebo přejít k grafům výkonu clusteru. U clusterů AKS, které byly zjištěny a identifikovány jako nesledované, můžete povolit monitorování ze zobrazení.

Pokud chcete získat přístup k zobrazení s více clustery, vyberte v levém podokně na webu Azure Portal možnost Sledovat . V části Přehledy vyberte Kontejnery.

Screenshot that shows an Azure Monitor multi-cluster dashboard example.

Výsledky zobrazené v mřížce můžete nastavit tak, aby zobrazovaly clustery, které jsou:

  • Azure: Clustery AKS a AKS Engine hostované ve službě Azure Kubernetes Service.
  • Azure Stack (Preview):Clustery modulu AKS hostované ve službě Azure Stack.
  • Mimo Azure (Preview): Clustery Kubernetes hostované místně.
  • Vše: Zobrazení všech clusterů Kubernetes hostovaných v Azure, Azure Stacku a místních prostředích, která jsou nasazená do přehledů kontejnerů.

Pokud chcete zobrazit clustery z konkrétního prostředí, vyberte ho v levém horním rohu prostředí .

Screenshot that shows an Environment selector example.

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

  • Kolik clusterů je v kritickém nebo špatném stavu a kolik je v pořádku nebo kolik nehlásí (označuje se jako neznámý stav).
  • Jestli jsou všechna nasazení azure Kubernetes Engine (AKS Engine) v pořádku.
  • Kolik uzlů a podů uživatelů a systémů se nasadí na cluster.

Mezi zahrnuté stavy patří:

  • V pořádku: Pro virtuální počítač se nezjistí žádné problémy a funguje podle potřeby.
  • Kritické: Zjistí se jeden nebo více kritických problémů, které musí být vyřešeny k obnovení normálního provozního stavu podle očekávání.
  • Upozornění: Zjistí se jeden nebo více problémů, které je potřeba vyřešit nebo se může stát kritickým stavem.
  • Neznámé: Pokud služba nemohla vytvořit připojení k uzlu nebo podu, stav se změní na neznámý stav.
  • Nenalezena: Pracovní prostor, skupina prostředků nebo předplatné, které obsahuje pracovní prostor pro toto řešení, se odstranilo.
  • 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ě.
  • Špatně nakonfigurované: V zadaném pracovním prostoru nebyly správně nakonfigurované přehledy kontejnerů.
  • Žádná data: Data se do pracovního prostoru nenahlásila za posledních 30 minut.

Stav vypočítá celkový stav clusteru jako nejhorší ze tří stavů s jednou výjimkou. Pokud je některý ze tří stavů Neznámý, zobrazí se celkový stav clusteru Neznámý.

Následující tabulka obsahuje rozpis výpočtu, který řídí stav monitorovaného clusteru v zobrazení s více clustery.

Monitorovaný cluster Stav Dostupnost
Uživatelský pod V pořádku
Upozorňující
Kritické
Neznámý
100 %
90 - 99%
<90%
Nezaznamenaná za posledních 30 minut
Pod systému V pořádku
Upozorňující
Kritické
Neznámý
100 %

100 %
Nezaznamenaná za posledních 30 minut
Node V pořádku
Upozorňující
Kritické
Neznámý
>85%
60 - 84%
<60%
Nezaznamenaná za posledních 30 minut

V seznamu clusterů můžete přejít na stránku Cluster tak, že vyberete název clusteru. Potom přejděte na stránku Výkon uzlů výběrem souhrnu uzlů ve sloupci Uzly pro daný konkrétní cluster. Nebo můžete přejít na stránku výkonu kontrolerů tak, že vyberete souhrn podů Uživatelů nebo systémových podů .

Zobrazení výkonu přímo z clusteru

Přístup ke službě Container Insights je k dispozici přímo z clusteru AKS tak, že v levém podokně vyberete Přehledy> Cluster nebo když vyberete cluster ze zobrazení s více clustery. Informace o clusteru jsou uspořádané do čtyř perspektiv:

  • Cluster
  • Uzly
  • Kontrolery
  • Kontejnery

Poznámka:

Prostředí popsaná ve zbývající části tohoto článku platí také pro zobrazení výkonu a stavu clusterů Kubernetes hostovaných ve službě Azure Stack nebo jiném prostředí, pokud je vybráno z více clusterového zobrazení.

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

Screenshot that shows example performance charts on the Cluster tab.

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

  • Využití procesoru uzlu %: Agregovaná perspektiva využití procesoru pro celý cluster. Pokud chcete filtrovat výsledky pro časový rozsah, vyberte v selektoru percentilů nad grafem Průměr, Minimum, 50, 90, 95. nebo Max. Filtry lze použít jednotlivě nebo zkombinovat.
  • Využití paměti uzlu %: Agregovaný pohled na využití paměti pro celý cluster. Pokud chcete filtrovat výsledky pro časový rozsah, vyberte v selektoru percentilů nad grafem Průměr, Minimum, 50, 90, 95. nebo Max. Filtry lze použít jednotlivě nebo zkombinovat.
  • Počet uzlů: Počet a stav uzlu z Kubernetes Stavy uzlů clusteru jsou celkové, připravené a nepřipravené. Je možné je filtrovat jednotlivě nebo zkombinovat ve selektoru nad grafem.
  • Počet aktivních podů: Počet a stav podů z Kubernetes Stavy podů reprezentované jsou celkem, čekající, spuštěné, neznámé, úspěšné nebo neúspěšné. Je možné je filtrovat jednotlivě nebo zkombinovat ve selektoru nad grafem.

K procházení jednotlivých datových bodů v grafu použijte klávesy Šipka vlevo a Šipka vpravo. Pomocí kláves Šipka nahoru a Šipka dolů můžete cyklicky procházet čarami percentilu. Výběrem ikony připnutí v pravém horním rohu některého z grafů připnete vybraný graf na poslední zobrazený řídicí panel Azure. Na řídicím panelu můžete změnit velikost grafu a změnit jeho umístění. Výběr grafu z řídicího panelu vás přesměruje na přehledy kontejneru a načte správný obor a zobrazení.

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

Zobrazení metrik kontejneru v Průzkumníku metrik

V Průzkumníku metrik můžete zobrazit agregované metriky využití uzlů a podů z přehledů kontejneru. Následující tabulka shrnuje podrobnosti, které vám pomůžou pochopit, jak pomocí grafů metrik vizualizovat metriky kontejneru.

Obor názvů Metrický 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 = 1000). 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 clusteru
memoryRssBytes Paměť RSS kontejneru používaná v bajtech
memoryRssPercentage Kontejnerová paměť RSS použitá v procentech.
memoryWorkingSetBytes Využitá paměť pracovní sady kontejnerů
memoryWorkingSetPercentage Paměť pracovní sady kontejnerů použitá v procentech
nodesCount 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 různé segmenty vzájemně porovnávají. U uzlu můžete graf segmentovat podle dimenze hostitele . Z podu ho můžete segmentovat podle následujících dimenzí:

  • Ovladač
  • Obor názvů Kubernetes
  • Uzel
  • Fáze

Analýza uzlů, kontrolerů a stavu kontejneru

Když přepnete na karty Uzly, Kontrolery a Kontejnery , podokno vlastností se automaticky zobrazí na pravé straně stránky. Zobrazuje vlastnosti vybrané položky, včetně popisků, 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 zobrazí také dostupné místo na disku a procento použité pro každý disk prezentovaný v uzlu. >> Výběrem odkazu v podokně zobrazíte nebo skryjete podokno.

Při rozbalení objektů v hierarchii se podokno vlastností aktualizuje na základě vybraného objektu. V podokně můžete také zobrazit protokoly kontejneru Kubernetes (stdout/stderror), události a metriky podů výběrem karty Živé události v horní části podokna. Další informace o konfiguraci potřebné k udělení a řízení přístupu k zobrazení těchto dat naleznete v tématu Nastavení živých dat.

Při kontrole 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á ve vašem pracovním prostoru na základě předdefinovaných prohledávání protokolů, vyberte Zobrazit protokoly kontejnerů z rozevíracího seznamu Zobrazit v rozevíracím seznamu Analýza . Další informace najdete v tématu Dotazování protokolů z Přehledů kontejnerů.

Pomocí možnosti + Přidat filtr v horní části stránky vyfiltrujte výsledky zobrazení podle služby, uzlu, oboru názvů nebo fondu uzlů. Po výběru oboru filtru vyberte jednu z hodnot zobrazených v poli Vybrat hodnoty . Jakmile je filtr nakonfigurovaný, použije se globálně při zobrazení libovolné perspektivy clusteru AKS. Vzorec podporuje pouze rovnítko. Na první z nich můžete přidat další filtry, abyste výsledky dále zúžili. Pokud například zadáte filtr podle uzlu, můžete pro druhý filtr vybrat pouze službu nebo obor názvů .

Zadání filtru na jedné kartě se bude dál používat, když vyberete jiný. Po výběru symbolu x vedle zadaného filtru se odstraní.

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

Screenshot that shows an example of the Kubernetes Node hierarchy in the performance view.

Kontejnery Windows Serveru, na kterých běží operační systém Windows Server 2019, se zobrazí po všech linuxových uzlech v seznamu. Když rozbalíte uzel Windows Serveru, 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.

Screenshot that shows an example Node hierarchy with Windows Server nodes listed.

Virtuální uzly služby Azure Container Instances, které spouštějí operační systém Linux, se zobrazí po posledním uzlu clusteru AKS v seznamu. Když rozbalíte virtuální uzel služby Container Instances, můžete zobrazit jeden nebo více podů a kontejnerů Container Instances, které běží na uzlu. Metriky se neshromažďují a oznamují pro uzly, pouze pro pody.

Screenshot that shows an example Node hierarchy with Container Instances listed.

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

Screenshot that shows the drill-down from node to controller in the performance view.

Výběrem kontrolerů nebo kontejnerů v horní části stránky zkontrolujte stav a využití prostředků pro tyto objekty. Pokud chcete zkontrolovat využití paměti, vyberte v rozevíracím seznamu Metrika pracovní sadu Paměť RSS nebo Paměť. Technologie RSS paměti se podporuje jenom pro Kubernetes verze 1.8 a novější. V opačném případě zobrazíte hodnoty min % jako NaN %, což je číselná hodnota datového typu, která představuje nedefinovanou nebo nerepresovatelnou hodnotu.

Screenshot that shows a Container nodes performance view.

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

  • Rezidentní paměť neboli 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ěť) používané operačním systémem k prohození dat z paměti na disk v případě nedostatku paměti a následné načtení zpět do paměti v případě potřeby.

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 můžete také filtrovat v rámci časového rozsahu tak, že v selektoru percentilu vyberete Min, Avg, 50th, 90th, 95th a Max.

Screenshot that shows a percentile selection for data filtering.

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

Screenshot that shows a Trend bar chart hover-over example.

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

Screenshot that shows a rollup of containers-per-node example.

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

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

Sloupec Popis
Name Název hostitele
Stav Zobrazení stavu uzlu Kubernetes
Minimum %, Průměr %, 50. %, 90. %, 95. %, Maximální % Průměrné procento uzlu na základě percentilu během vybrané doby trvání
Min, Průměr, 50th, 90th, 95th, Max Skutečná hodnota průměrných uzlů na základě percentilu během vybrané doby trvání. Průměrná hodnota se měří z limitu procesoru nebo paměti nastaveného pro uzel. U podů a kontejnerů je to průměrná hodnota hlášená hostitelem.
Kontejnery Početkontejnerůch
Doba od spuštění Představuje čas od spuštění uzlu nebo restartování.
Ovladač Pouze pro kontejnery a pody. Zobrazuje, ve kterém řadiči se nachází. Ne všechny pody jsou v kontroleru, takže některé můžou zobrazit N/A.
Minimum trendu %, průměr %, 50. %, 90. %, 95. %, maximální % Trend pruhového grafu představuje průměrné procento metrik percentilu kontroleru.

Po rozbalení uzlu s názvem Jiný proces si můžete všimnout úlohy. Představuje nekonte kontejnerizované procesy, které běží na vašem uzlu, a zahrnuje:

  • Samospravované nebo spravované procesy Kubernetes, které nejsou kontejnerizované.
  • Procesy za běhu kontejneru
  • Kubelet.
  • Systémové procesy spuštěné na vašem uzlu.
  • Jiné úlohy, které nejsou Kubernetes spuštěné na hardwaru uzlu nebo na virtuálním počítači.

Počítá se podle celkového využití z využití CAdvisoru - z kontejnerizovaného procesu.

V selektoru vyberte Kontrolery.

Screenshot that shows selecting Controllers.]

Tady můžete zobrazit stav výkonu kontrolerů a řadičů virtuálních uzlů služby Container Instances nebo podů virtuálních uzlů, které nejsou připojené k řadiči.

Screenshot that shows a \<Name> controllers performance view.

Hierarchie řádků začíná kontrolerem. Při rozbalení kontroleru zobrazíte jeden nebo více podů. Rozbalte pod a poslední řádek zobrazí kontejner seskupený do podu. Z rozšířeného kontroleru můžete přejít k podrobnostem uzlu, na kterém běží, a zobrazit data o výkonu filtrovaná pro daný uzel. Pody Container Instances, které nejsou připojené k řadiči, jsou uvedené jako poslední v seznamu.

Screenshot that shows an example Controllers hierarchy with Container Instances pods listed.

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

Screenshot that shows an example drill-down from controller to node in the performance view.

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

Sloupec Popis
Name Název kontroleru.
Stav Souhrnný stav kontejnerů po dokončení spuštění se stavem OK, Terminated, Failed, Failed, Stopped nebo Paused. Pokud je kontejner spuštěný, ale stav buď nebyl správně zobrazen, nebo nebyl agentem vyzvednut a nereagoval na více než 30 minut, stav je Neznámý. Další podrobnosti o ikoně stavu najdete v následující tabulce.
Minimum %, Průměr %, 50. %, 90. %, 95. %, Maximální % Souhrnný průměr průměrného procenta každé entity pro vybranou metriku a percentil.
Min, Průměr, 50th, 90th, 95th, Max Souhrn průměrného výkonu procesoru v milicore nebo paměti kontejneru pro vybraný percentil Průměrná hodnota se měří z limitu procesoru nebo paměti nastaveného pro pod.
Kontejnery Celkový počet kontejnerů pro kontroler nebo pod.
Restartuje Souhrn počtu restartování z kontejnerů
Doba od spuštění Představuje čas od spuštění kontejneru.
Uzel Pouze pro kontejnery a pody. Zobrazuje, ve kterém řadiči se nachází.
Minimum trendu %, průměr %, 50. %, 90. %, 95. %, maximální % Trend pruhového grafu představuje průměrnou percentilovou metriku kontroleru.

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

Icon Stav
Ready running status icon.
Waiting or Paused status icon. Čekání nebo pozastavení
Last reported running status icon. Poslední nahlášené spuštění, ale nereagovalo na více než 30 minut
Successful status icon. Úspěšně zastaveno nebo se nepodařilo zastavit

Ikona stavu zobrazuje počet podle toho, co pod poskytuje. Ukazuje nejhorší dva státy. Když najedete myší na stav, zobrazí se souhrnný stav ze všech podů v kontejneru. Pokud stav není připravený, zobrazí se hodnota stavu (0).

V selektoru vyberte Kontejnery.

Screenshot that shows selecting Containers.

Tady můžete zobrazit stav výkonu kontejnerů AKS a Container Instances.

Screenshot that shows a \<Name> containers performance view.

Z kontejneru můžete přejít k podrobnostem podu nebo uzlu a zobrazit data o výkonu filtrovaná pro daný objekt. Vyberte hodnotu ve sloupci Pod nebo Node pro konkrétní kontejner.

Screenshot that shows an example drill-down from node to containers in the performance view.

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

Sloupec Popis
Name Název kontroleru.
Stav Stav kontejnerů, pokud existuje. Další podrobnosti o ikoně stavu najdete v další tabulce.
Minimum %, Průměr %, 50. %, 90. %, 95. %, Maximální % Souhrn průměrného procenta každé entity pro vybranou metriku a percentil.
Min, Průměr, 50th, 90th, 95th, Max Souhrn průměrného výkonu procesoru v milicore nebo paměti kontejneru pro vybraný percentil. Průměrná hodnota se měří z limitu procesoru nebo paměti nastaveného pro 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 od spuštění Představuje čas od spuštění nebo restartování kontejneru.
Minimum trendu %, průměr %, 50. %, 90. %, 95. %, maximální % Trend pruhového grafu představuje průměrné procento metrik percentilu kontejneru.

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

Icon Stav
Ready running status icon.
Waiting or Paused status icon. Čekání nebo pozastavení
Last reported running status icon. Poslední nahlášené spuštění, ale za více než 30 minut neodpověděli
Terminated status icon. Úspěšně zastaveno nebo se nepodařilo zastavit
Failed status icon. Stav selhání

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

Azure Network Policy Manager obsahuje informativní metriky Prometheus, které můžete použít k monitorování a lepšímu pochopení konfigurací sítě. Poskytuje integrované vizualizace na webu Azure Portal nebo v Grafana Labs. Další informace najdete v tématu Monitorování a vizualizace konfigurací sítě pomocí Azure npm.

Nejčastější dotazy

Tato část obsahuje odpovědi na běžné otázky.

Co představuje "Jiné procesy" v zobrazení Uzel?

Další procesy vám pomůžou jasně pochopit hlavní příčinu vysokého využití prostředků na vašem uzlu. Tyto informace vám pomůžou rozlišovat využití mezi kontejnerizovanými procesy a nekontejnerizovanými procesy.

Jaké jsou tyto další procesy?

Jedná se o nekontejnerizované procesy, které běží na vašem uzlu.

Jak to vypočítáme?

Další procesy = celkové využití z využití CAdvisoru - z kontejnerizovaného procesu

Mezi další procesy patří:

  • Samospravované nebo spravované procesy Kubernetes bezkontejnerizované.
  • Procesy za běhu kontejneru
  • Kubelet.
  • Systémové procesy spuštěné na vašem uzlu.
  • Jiné úlohy, které nejsou Kubernetes spuštěné na hardwaru uzlu nebo na virtuálním počítači.

Další kroky

  • Informace o vytváření upozornění na výkon pomocí služby Container Insights najdete v tématu Vytváření výstrah pro vysoké využití procesoru a paměti pro podporu vašich procesů a provozních procesů a postupů DevOps.
  • Podívejte se na příklady dotazů protokolu a podívejte se na předdefinované dotazy a příklady k vyhodnocení nebo přizpůsobení výstrah, vizualizaci nebo analýze clusterů.
  • Informace o zobrazení stavu clusteru Kubernetes najdete v tématu Monitorování stavu clusteru .