Kubernetes

Server metrik Kubernetes

Server metrik Kubernetes
Se systémem tak velkým a komplikovaným jako Kubernetes může být monitorování často problematické.Monitorování je vždy ošemetná věc, protože na jedné straně nechcete přijít o kritické chyby a selhání, na druhé straně se nechcete topit v oceánu triviálních chyb, které se nespouštějí kvůli vaší aplikaci ani ovlivnění stejně.

Díky vlastnímu zásobníku plánovačů a řadičů se Kubernetes může zotavit z menších poruch, selhání uzlů nebo havárií aplikací z jejich podů. Pokud však dojde k mnoha haváriím, nemusí to mít nic společného s infrastrukturou, ale se vším, co se týká vaší aplikace, a které se Kubernetes může pokusit znovu a znovu spustit, ale protože je chyba na vině, chyba přetrvává a může dokonce zůstat nepovšimnutá.

Typ chyby, které si většinou nevšimnete, jsou ty, u kterých aplikace nepadají, ale končí nad využitím systémových prostředků a poškozením klastrů na celém výkonu. Jedná se o obzvláště ošklivé případy a server Kubernetes Metrics Server může být užitečným nástrojem pro jejich sledování.

Projekt je oficiálně součástí projektu Kubernetes, ale ve většině distribucí s certifikací Kubernetes není předem povolen. Má dvě důležité části, které stojí za to diskutovat o API metrik a samotném serveru metrik. Ale nejdřív to zřídíme do našeho klastru Kubernetes (K8).

Experimentální nastavení Kubernetes

Od července 2018 přicházejí Docker pro Mac a Windows s certifikací Kubernetes s certifikací samotné K8. Je to stejně snadné jako instalace K8 na distribuci Linuxu. Můžete přejít na Nastavení Dockeru a pokud je instance Dockeru aktuální, najdete v nabídce kartu Kubernetes. Stačí povolit Kubernetes namísto Docker Swarm a budete mít připravený a spuštěný jeden uzel clusteru pro experimenty.

Dále potřebujeme nějakou jednoduchou sadu aplikací připravených a spuštěných pro náš případ použití. Vytvořte složku nazvanou Nasazení a uvnitř vytvořme nasazení nginx.yaml soubory, které by nasadily bezstavové Nginx lusky.

apiVersion: apps / v1 # pro verze před 1.9.0 použijte aplikace / v1beta2
druh: Nasazení
metadata:
name: nginx-deployment
spec:
volič:
matchLabels:
aplikace: nginx
replicas: 2 # says deployment to run 2 pods matching the template
šablona:
metadata:
štítky:
aplikace: nginx
spec:
kontejnery:
- název: nginx
obrázek: nginx: 1.7.9
porty:
- containerPort: 80

Uložte soubor a ve stejném adresáři, kde je tento soubor, spusťte příkaz:

$ kubectl create -f nginx-deployment.yaml

Možná budeme muset počkat několik minut, než necháme Kubernetes stáhnout obrázky kontejnerů, zřídit kontejnery a udělat trochu různé účetnictví. Jakmile je to hotové, můžete vidět seznam lusků jako:

$ kubectl získat lusky

Jak vidíte, máme dvě instance podu, jako .soubor yaml předepsal.

Nyní, když máme co sledovat, musíme povolit Metrics Server. Nejprve zkontrolujte verzi Kubernetes, kterou používáte. Pokud je verze 1.8 nebo vyšší, pak bychom spustili jiné nasazení a pokud je 1.7 pak se uchýlíme zpět k tomu starému:

$ kubectl verze

Můžete získat oficiální obrázek a začít klonováním tohoto repozitáře GitHub a poté v kořenovém adresáři úložiště spustit kubectl create -f s příslušným .yaml v závislosti na verzi K8, kterou používáte.

$ git clone https: // github.com / kubernetes-inkubátor / metriky-server.sakra
 
$ cd metriky-server
# Pokud používáte Kubernetes verze 1.8 nebo vyšší
$ kubectl create -f deploy / 1.8 + /
# Pokud je verze 1.7 tedy
$ kubectl create -f deploy / 1.7 /

Dejte kubernetes chvíli na stažení obrázků a roztočení serveru metrik. Může to trvat několik minut. Jakmile to provedete, jste nyní připraveni spustit server metrik. Základní příkaz je inspirován z horní příkaz, který se často spouští k monitorování systému Linux. Má ale dvě varianty, jednu pro kontrolu využití zdrojů na počítači uzly a za druhé měřit spotřebovaný zdroj nasazeným lusky a. Tyto dva podrobnosti zobrazíte takto:

$ kubectl horní uzel
$ kubectl horní pod

Můžete vidět, kolik modulů váš systém zdaňuje, pokud jde o paměť nebo čas procesoru, a pomocí rozhraní API pro metriky můžete také nastavit výstrahy.

Odkud to půjde?

Vznikající případy použití ze serveru metrik budou v budoucnosti Kubernetes zásadní. Tento projekt je stále ve verzi 0.2.x, jakmile dospěje a integruje se do tradiční architektury Kubernetes, bude shromažďovat důležitá data pro plánovače, což mu pomůže efektivně přidělit lusky uzlům mnohem efektivnějším způsobem.

Podobně Horizontální pod automatický škálovač bude mít z projektu velkou výhodu a pomůže vám zvětšit nebo zmenšit, aby aplikace optimálně využívaly aplikace.

Reference

  1. Nasazení Nginx
  2. Server metrik Kubernetes
  3. Design Docs for the Metrics API can find here and similar you can find information about the Metrics Server here.
Hry OpenTTD vs Simutrans
OpenTTD vs Simutrans
Vytvoření vlastní simulace dopravy může být zábavné, uvolňující a mimořádně lákavé. Proto se musíte ujistit, že vyzkoušíte co nejvíce her, abyste našl...
Hry Výukový program OpenTTD
Výukový program OpenTTD
OpenTTD je jednou z nejpopulárnějších her pro obchodní simulaci. V této hře musíte vytvořit skvělé dopravní podnikání. Začnete však na začátku kolem r...
Hry SuperTuxKart pro Linux
SuperTuxKart pro Linux
SuperTuxKart je skvělý titul navržený tak, aby vám ve vašem systému Linux přinesl zážitek Mario Kart zdarma. Je to docela náročné a zábavné hrát, je n...