Monitoring Kubernetes cluster zviwanikwa

Monitoring Kubernetes cluster zviwanikwa

Ndakagadzira Kube Eagle - mutengesi wePrometheus. Yakazove chinhu chinotonhorera chinobatsira kunzwisisa zviri nani zviwanikwa zvemasumbu madiki uye epakati nepakati. Pakupedzisira, ndakachengeta mazana emadhora nekuti ndakasarudza mhando dzemuchina akakodzera uye ndakagadzirisa zvigadziro zvekushandisa zvekushandisa.

Ndichakuudza nezve mabhenefiti Kube Gondo, asi kutanga ndichatsanangura chakakonzera kupopotedzana uye nei kutarisisa kwemhando yepamusoro kwaidiwa.

Ndakakwanisa zvikwata zvakawanda zve4-50 nodes. Imwe neimwe cluster ine anosvika mazana maviri microservices uye maapplication. Kuti ushandise zvirinani zvehardware iripo, kutumirwa kwakawanda kwakagadziriswa ne burstable RAM uye CPU zviwanikwa. Nenzira iyi, mapodhi anogona kutora zviwanikwa zviripo kana zvichidikanwa, uye panguva imwe chete usakanganisa mamwe maapplication pane ino node. Zvakanaka, hazvina kunaka here?

Uye kunyangwe sumbu racho raidya zvishoma CPU (8%) uye RAM (40%), isu taigara tiine matambudziko nemapods achimisikidzwa pavakaedza kugovera ndangariro yakawanda kupfuura yaiwanikwa pane node. Kare ikako taingova nedhibhodhi rimwe chete rekutarisa Kubernetes zviwanikwa. Sezvizvi:

Monitoring Kubernetes cluster zviwanikwa
Grafana dashboard ine cAdvisor metrics chete

Nepaneru yakadaro, haisi dambudziko kuona node dzinodya yakawanda ndangariro uye CPU. Dambudziko nderekuziva kuti chikonzero chii. Kuchengeta mapodhi munzvimbo, munhu anogona zvechokwadi kuseta zviwanikwa zvakavimbiswa pamapodhi ese (akakumbirwa zviwanikwa zvakaenzana nemuganho). Asi uku hakusi iko kwakangwara kushandisa kwehardware. Iro sumbu raive nemazana akati wandei emagigabytes endangariro, nepo dzimwe node dzaiziya nenzara, nepo dzimwe dzaive ne4-10 GB dzakasara dzakachengetwa.

Zvinoitika kuti Kubernetes scheduler akagovera mabasa asina kuenzana pazviwanikwa zviripo. Iyo Kubernetes scheduler inofunga nezve akasiyana masisitimu: kushamwaridzana, kusvibisa uye kushivirira mitemo, node selectors inogona kudzikamisa nzvimbo dziripo. Asi munyaya yangu pakanga pasina chinhu chakadaro, uye mapodhi akarongwa zvichienderana nezvinhu zvakakumbirwa pane node imwe neimwe.

Iyo node ine iyo yakawanda yemahara zviwanikwa uye inogutsa mamiriro ekukumbira yakasarudzwa kune pod. Takaona kuti zviwanikwa zvakakumbirwa pamanodhi zvaisaenderana nekushandiswa chaiko, uye apa ndipo pakauya Kube Eagle nehunyanzvi hwayo hwekutarisa zviwanikwa.

Ndine anenge ese Kubernetes masumbu anotariswa chete nawo Node exporter ΠΈ Kube State Metrics. Node Exporter inopa nhamba paI / O uye diski, CPU, uye RAM kushandiswa, nepo Kube State Metrics inoratidza Kubernetes chinhu metrics senge zvikumbiro uye CPU uye ndangariro resource miganho.

Isu tinofanirwa kusanganisa mametric ekushandisa nezvikumbiro uye miganhu metrics muGrafana, tobva tawana ruzivo rwese nezve dambudziko. Izvi zvinonzwika zviri nyore, asi maturusi maviri aya anotopa mazita akasiyana, uye mamwe metrics haana kana metadata label zvachose. Kube Eagle inoita zvese pachayo uye pani inotaridzika seizvi:

Monitoring Kubernetes cluster zviwanikwa

Monitoring Kubernetes cluster zviwanikwa
Kube Eagle Dashboard

Isu takakwanisa kugadzirisa matambudziko mazhinji nezviwanikwa uye kuchengetedza michina:

  1. Vamwe vanogadzira vaisaziva kuti mangani zviwanikwa microservices inodiwa (kana kungoti hazvina kunetsa). Pakanga pasina nzira yekuti isu tiwane zvikumbiro zvisizvo zvezviwanikwa - pane izvi isu tinoda kuziva mashandisirwo pamwe nezvikumbiro nemiganhu. Iye zvino ivo vanoona Prometheus metrics, vanotarisisa mashandisiro chaiwo uye gadzirisa zvikumbiro nemiganhu.
  2. JVM zvikumbiro zvinotora RAM yakawanda sezvavanokwanisa kubata. Muunganidzi wemarara anongoburitsa ndangariro kana anopfuura 75% ashandiswa. Uye sezvo masevhisi mazhinji aine ndangariro inoputika, yaigara yakagarwa neJVM. Naizvozvo, ese aya masevhisi eJava aidya zvakanyanya RAM kupfuura zvaitarisirwa.
  3. Mamwe maapplication akakumbira ndangariro yakawandisa, uye Kubernetes scheduler haana kupa idzi node kune mamwe maapplication, kunyangwe hazvo aive akasununguka pane mamwe ma node. Mumwe mugadziri akawedzera netsaona imwe digit muchikumbiro uye akabata chidimbu chikuru che RAM: 20 GB panzvimbo ye 2. Hapana akacherechedza. Chikumbiro chaive ne3 replicas, saka akawanda se3 node akabatwa.
  4. Isu takaunza miganho yezvishandiso, takarongazve mapodhi nezvikumbiro chaizvo, uye takawana yakaringana yekushandiswa kwehardware munzvimbo dzese. Manodhi akati wandei angadai akavharwa zvachose. Uye takazoona kuti isu taive nemichina isiriyo (CPU yakatarisana, kwete yekurangarira). Isu takachinja mhando uye takadzima mamwe akati wandei.

Migumisiro

Nezviwanikwa zvinoputika musumbu, iwe unoshandisa iyo iripo Hardware zvakanyanya, asi iyo Kubernetes scheduler inoronga pods zvichienderana nekukumbira zviwanikwa, uye izvi zvakazara. Kuuraya shiri mbiri nedombo rimwe chete: kudzivirira matambudziko uye kushandisa zviwanikwa zvakakwana, unoda kutarisa kwakanaka. Ichi ndicho chikonzero chichabatsira Kube Gondo (Prometheus mutengesi uye Grafana dashboard).

Source: www.habr.com

Voeg