Korjoogteynta Kubernetes Kutlada: Dulmar iyo Hordhac Prometheus

Tixgeli fikradda kormeerka Kubernetes, baro aaladda Prometheus, oo ka hadal feejignaanta.

Mawduuca la socodka waa mid aad u badan, laguma kala diri karo hal maqaal. Ujeedada qoraalkani waa in la bixiyo dulmar ku saabsan qalabka, fikradaha iyo hababka.

Maaddada maqaalku waa tuujin ka timid muxaadaro furan ee dugsiga "Slurm". Haddii aad rabto inaad qaadato kooras buuxa - saxiix koorsada Kaabayaasha la socodka iyo gaynta ee Kubernetes.

Korjoogteynta Kubernetes Kutlada: Dulmar iyo Hordhac Prometheus

Waxa lagala socdo kutlada Kubernetes

Korjoogteynta Kubernetes Kutlada: Dulmar iyo Hordhac Prometheus

adeegayaal jireed. Haddii kutlada Kubernetes la geeyo adeegayaasheeda, waxaad u baahan tahay inaad la socoto caafimaadkooda. Zabbix waxay qabanaysaa hawshan; haddii aad la shaqeyso isaga, markaa uma baahnid inaad diido, ma jiri doonto khilaafyo. Waa Zabbix ka la socota xaaladda server-yadayada.

Aan u gudubno la socodka heerka kooxda.

Qaybaha Diyaaradda Xakamaynta: API, Jadwalka iyo kuwa kale. Ugu yaraan, waxaad u baahan tahay inaad hubiso in API ee server-yada ama etcd ay ka weyn yihiin 0. Etcd waxay soo celin kartaa cabbirro badan: disks-yada uu ku wareegayo, caafimaadka kooxdeeda iwm, iyo kuwa kale.

Docker waxay soo muuqatay wakhti dheer ka hor qof walbana si fiican ayuu u ogyahay dhibaatooyinkiisa: weelal badan ayaa keena baraf iyo dhibaatooyin kale. Sidaa darteed, Docker laftiisa, nidaam ahaan, waa in sidoo kale la xakameeyaa, ugu yaraan helitaanka.

DNS Haddii DNS uu ku dhaco kutlada, markaa dhammaan adeegga Discovery wuu dami doonaa ka dib, wicitaannada ka soo baxa pods ilaa pods ayaa joojin doona shaqada. Dhaqankayga, ma jiraan dhibaatooyin noocaas ah, laakiin tani macnaheedu maaha in gobolka DNS uusan u baahnayn in la kormeero. Codsiga daahitaanka iyo cabbirrada kale qaarkood ayaa lagala socon karaa CoreDNS.

Soo galitaanka Waa lagama maarmaan in la xakameeyo helitaanka soo-galootiga (oo ay ku jiraan Kormeeraha Gudbinta) sida meelaha laga soo galo mashruuca.

Qaybaha ugu muhiimsan ee kooxdu waa la burburiyay - hadda aynu hoos ugu dhaadhacno heerka abstractions.

Waxay u ekaan kartaa in codsiyadu ay ku socdaan boodhyo, taas oo macnaheedu yahay inay u baahan yihiin in la xakameeyo, laakiin dhab ahaantii maahan. Pods waa ephemeral: maanta waxay ku shaqeeyaan hal server, berrito mid kale; maanta 10 ka mid ah ayaa jira, berrina 2. Sidaa darteed, cidina ma ilaaliso tubooyinka. Gudaha qaab dhismeedka microservice, waxaa aad muhiim u ah in la xakameeyo helitaanka codsiga guud ahaan. Gaar ahaan, hubi helitaanka meelaha dhamaadka adeega: wax ma shaqeeyaan? Haddii codsiga la heli karo, ka dibna waxa dhacaya gadaashiisa, imisa nuqul ayaa hadda jira - kuwani waa su'aalaha amarka labaad. Looma baahna in lala socdo xaaladaha gaarka ah.

Heerka ugu dambeeya, waxaad u baahan tahay inaad xakamayso hawlgalka codsiga laftiisa, qaado cabbirada ganacsiga: tirada amarrada, dabeecadda isticmaalaha, iyo wixii la mid ah.

Prometheus

Habka ugu fiican ee lagula socon karo kooxdu waa Prometheus. Ma garanayo qalab kasta oo ku habboon Prometheus xagga tayada iyo fududaynta isticmaalka. Way ku fiican tahay kaabayaasha dabacsan, marka marka ay yidhaahdaan "la socodka Kubernetes", waxay caadi ahaan ula jeedaan Prometheus.

Waxaa jira dhowr fursadood oo lagu bilaabo Prometheus: adoo isticmaalaya Helm, waxaad ku rakibi kartaa Prometheus ama Prometheus Operator.

  1. Prometheus joogto ah. Wax walba waa ku fiican yihiin isaga, laakiin waxaad u baahan tahay inaad dejiso ConfigMap - dhab ahaantii, qor faylalka qaabeynta qoraalka ku saleysan, sidii aan horay u sameynay, ka hor dhismaha microservice-ka.
  2. Hawl-wadeenka Prometheus waa wax yar oo fidsan, waxoogaa ka sii adag marka la eego caqli-gal gudaha ah, laakiin way fududahay in lala shaqeeyo: waxaa jira walxo kala duwan, abstractions ayaa lagu daraa kooxda, sidaas darteed waxay aad ugu habboon yihiin in la xakameeyo oo la habeeyo.

Si aad u fahamto alaabta, waxaan ku talinayaa in la rakibo Prometheus caadiga ah marka hore. Waa inaad wax walba ku hagaajisaa qaabaynta, laakiin tani waxay noqon doontaa faa'iido: waxaad ogaan doontaa waxa iska leh waxa iyo sida loo habeeyey. Hawlwadeenka Prometheus, waxaad isla markiiba u kacdaa meel sare oo la taaban karo, inkasta oo aad sidoo kale geli karto qoto dheer haddii aad rabto.

Prometheus wuxuu si fiican ula mid yahay Kubernetes: wuxuu geli karaa oo la falgali karaa Server-ka API.

Prometheus waa caan, taas oo ah sababta tiro badan oo codsiyo iyo luuqado barnaamij ah ay u taageeraan. Taageero ayaa loo baahan yahay, maadaama Prometheus uu leeyahay qaab mitir oo u gaar ah, iyo si loo wareejiyo, waxaad u baahan tahay maktabad gudaha codsiga ama dhoofiye diyaar ah. Waxaana jira kuwo dhoofiya oo tiro yar. Tusaale ahaan, waxaa jira PostgreSQL Exporter: waxay ka qaadaa xogta PostgreSQL waxayna u beddeshaa qaabka Prometheus si Prometheus uu ula shaqeeyo.

Nashqada Prometheus

Korjoogteynta Kubernetes Kutlada: Dulmar iyo Hordhac Prometheus

Prometheus Server waa dhamaadka dambe, maskaxda ee Prometheus. Metrics halkan ayaa lagu kaydiyaa oo laga baaraandegaa

Halbeegyada waxa lagu kaydiyaa kaydka wakhtiga taxanaha wakhtiga (TSDB). TSDB maaha xog ururin gaar ah, laakiin waa xidhmo ku jira luqadda Go ee ku dhex jirta Prometheus. Qiyaas ahaan, wax walbaa waxay ku jiraan hal binary.

Ha ku kaydin xogta TSDB muddo dheer

Kaabayaasha Prometheus kuma habboona kaydinta cabbirada muddada-dheer. Muddada haynta caadiga ah waa 15 maalmood. Waxaad ka gudbi kartaa xadkan, laakiin maskaxda ku hay: xogta badan ee aad ku kaydiso TSDB iyo muddada dheer ee aad sameyso, ayaa badanaysa kheyraadka ay isticmaali doonto. Kaydinta xogta taariikhiga ah ee Prometheus waxaa loo tixgeliyaa dhaqan xumo.

Haddii aad haysato gaadiid aad u badan, tirada mitirku waa boqollaal kun oo ilbiriqsikiiba, markaa way fiicantahay in la xaddido kaydintooda meel disk ama xilli. Caadi ahaan, "xogta kulul" waxaa lagu kaydiyaa TSDB, cabbirada dhowr saacadood gudahood. Kaydinta dheer, kaydinta dibadda ayaa loo isticmaalaa kaydadkaas kuwaas oo runtii tan ku habboon, tusaale ahaan, InfluxDB, ClickHouse, iyo wixii la mid ah. Waxaan arkay faallooyin badan oo wanaagsan oo ku saabsan ClickHouse.

Prometheus Server wuxuu ku shaqeeyaa qaabka qaado: wuxuu u socdaa mitirka qodobbadaas aan siinay isaga. Waxay yiraahdeen: "u tag API Server", oo halkaasuu tagaa tiradii n-th ee sekan kasta oo wuxuu qaataa cabbirka.

Shayga leh cimri gaaban (shaqo ama shaqo cron) oo soo bixi kara inta u dhaxaysa xilliyada xoqidda, waxaa jira qayb Pushgateway ah. Halbeegyada walxaha muddada-gaaban ayaa lagu dhex riixaa: shaqadu kor ayay u kacday, samaysay ficil, cabbiro loo diray Pushgateway oo la dhammaystiray. Muddo ka dib, Prometheus wuxuu ku soo degi doonaa xawligiisa oo wuxuu ka soo qaadi doonaa cabbiradan Pushgateway.

Si loo habeeyo ogeysiisyada gudaha Prometheus waxaa jira qayb gaar ah - Maamulaha digniinta. Iyo xeerarka digniinta. Tusaale ahaan, waxaad u baahan tahay inaad abuurto digniin haddii API-ga serverku yahay 0. Marka ay dhacdo dhacdo, digniinta waxaa loo gudbiyaa maamulaha digniinta si loogu sii diro. Maamulaha digniinta waxa uu leeyahay habayn habayn dabacsanaan leh: hal koox oo digniino ah ayaa loo diri karaa wada sheekaysiga telegramka ee maamulka, mid kalena wada sheekaysiga horumariyayaasha, iyo sadex meelood meel wada sheekaysiga shaqaalaha kaabayaasha. Ogeysiisyada waxaa loo diri karaa Slack, Telegram, iimaylka, iyo kanaalada kale.

Ugu dambeyntiina, waxaan kuu sheegi doonaa wax ku saabsan muuqaalka dilaaga Prometheus - La qabsashada. Markaad la shaqeyneyso Prometheus, uma baahnid inaad qeexdo cinwaanno gaar ah oo walxaha la socodka ah, waa ku filan inaad dejiso nooca. Taasi waa, uma baahnid inaad qorto "halkan waa cinwaanka IP-ga, halkan waa dekedda - kormeeraha", halkii, waxaad u baahan tahay inaad go'aamiso mabaadi'da lagu helo walxahan (bartilmaameedyada - gool). Prometheus lafteeda, iyada oo ku xidhan walxaha hadda firfircoon, waxay soo jiidaan kuwa lagama maarmaanka ah waxayna ku daraan la socodka.

Habkani wuxuu si fiican ugu habboon yahay qaab-dhismeedka Kubernetes, halkaas oo wax waliba sidoo kale sabbeeyaan: maanta waxaa jira 10 server, berrito 3. Si aan loo cayimin cinwaanka IP-ga ee server-ka mar kasta, waxay qoreen hal mar sida loo helo - iyo Discovering ayaa sameyn doona. .

Luuqada Prometheus waxaa loo yaqaan PromQL. Adigoo isticmaalaya luqaddan, waxaad heli kartaa qiyamka cabbirro gaar ah ka dibna u beddelo iyaga, waxaad dhisi kartaa xisaabinta gorfaynta iyaga oo ku salaysan.

https://prometheus.io/docs/prometheus/latest/querying/basics/

ΠŸΡ€ΠΎΡΡ‚ΠΎΠΉ запрос

    container_memory_usage_bytes

ΠœΠ°Ρ‚Π΅ΠΌΠ°Ρ‚ΠΈΡ‡Π΅ΡΠΊΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ

    container_memory_usage_bytes / 1024 / 1024

ВстроСнныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ

    sum(container_memory_usage_bytes) / 1024 / 1024

Π£Ρ‚ΠΎΡ‡Π½Π΅Π½ΠΈΠ΅ запроса

    100 - avg by (instance) (rate(node_cpu_seconds_total{mode="idle"}[5m]) * 100)

Shabakadda Prometheus

Prometheus waxa uu leeyahay shabakad shabakadeed oo u gaar ah, cadaalad yar. Kaliya waxay ku habboon tahay qaladka ama muujinta.

Korjoogteynta Kubernetes Kutlada: Dulmar iyo Hordhac Prometheus

Xariiqda muujinta, waxaad su'aal ku qori kartaa luqadda PromQL.

Shabakadda Digniintu waxa ay ka kooban tahay xeerar digniin ah, waxayna leeyihiin saddex xaaladood:

  1. firfircoonayn - haddii digniintu aysan hadda firfircoonayn, taas oo ah, wax walba waa ku fiican yihiin, mana aysan shaqayn;
  2. sugitaanka - tani waa haddii digniintu shaqaynayso, laakiin diritaanka weli ma gudbin. Daahitaanka ayaa lagu wadaa inuu magdhabo indho-beelka shabakada: haddii adeegga la cayimay uu kacay hal daqiiqo gudaheed, markaa alaarmiga waa inaan weli la dhawaaqin;
  3. xabbaddu waa heerka saddexaad marka digniintu iftiimiso oo ay dirto fariimaha.

In the Status menu waxaad ka heli doontaa helitaanka macluumaadka ku saabsan waxa Prometheus yahay. Waxa kale oo jira in loo gudbayo bartilmaameedyada (bartilmaameedka), oo aan kor uga soo hadalnay.

Korjoogteynta Kubernetes Kutlada: Dulmar iyo Hordhac Prometheus

Si aad u hesho dulmar faahfaahsan oo dheeraad ah oo ku saabsan interface Prometheus, eeg Muxaadarada Slurm ee ku saabsan la socodka kooxda Kubernetes.

La qabsiga Grafana

Isku xirka shabakada Prometheus, ma heli doontid garaafyo qurux badan oo la fahmi karo kuwaas oo aad ka soo saari karto gabagabada xaaladda kooxda. Si loo dhiso iyaga, Prometheus waxaa lagu dhex daray Grafana. Waxaan helnaa muraayadaha noocaan ah.

Korjoogteynta Kubernetes Kutlada: Dulmar iyo Hordhac Prometheus

Dejinta is dhexgalka Prometheus iyo Grafana ma aha mid adag, waxaad ka heli kartaa tilmaamo dukumeentiyada: GRAFANA TAAGEERADA PRETHEUSHagaag, waan ku soo afjari doonaa kan.

Maqaallada soo socda, waxaanu sii wadi doonaa mawduuca la socodka: waxaanu ka hadli doonaa ururinta iyo falanqaynta logyada isticmaalaya Grafana Loki iyo qalab kale.

Qore: Marcel Ibraev, maamulaha Kubernetes oo shahaado haysta, injineer ku shaqeeya shirkadda Southbridge, af-hayeenka iyo kobciye koorsada Slurm.

Source: www.habr.com

Add a comment