A’ cumail sùil air Buidheann Kubernetes: Sealladh farsaing agus Ro-ràdh do Prometheus

Bheir sinn sùil air bun-bheachd sgrùdadh Kubernetes, eòlas fhaighinn air inneal Prometheus, agus bruidhinn mu bhith a’ toirt rabhadh.

Tha cuspair sgrùdaidh mòr; chan urrainnear a chòmhdach ann an aon artaigil. Is e adhbhar an teacsa seo sealladh farsaing a thoirt seachad air na h-innealan, bun-bheachdan, agus dòighean-obrach.

Tha stuth an artaigil na bhriseadh bho òraid fhosgailte na sgoile "Slurm". Ma tha thu airson làn thrèanadh fhaighinn, clàraich airson cùrsa air Bun-structar sgrùdaidh agus logaidh ann an Kubernetes.

A’ cumail sùil air Buidheann Kubernetes: Sealladh farsaing agus Ro-ràdh do Prometheus

Na tha air a sgrùdadh ann am buidheann Kubernetes

A’ cumail sùil air Buidheann Kubernetes: Sealladh farsaing agus Ro-ràdh do Prometheus

Frithealaichean corporra. Ma thèid cruinneachadh Kubernetes a chleachdadh air na frithealaichean aige fhèin, feumaidh tu sùil a chumail air an slàinte. Bidh Zabbix a’ làimhseachadh na h-obrach seo; ma bhios tu ag obair còmhla ris, chan eil feum air diùltadh, cha bhi còmhstri ann. Is e Zabbix a bhios a’ cumail sùil air staid ar frithealaichean.

Gluaisidh sinn air adhart gu sgrùdadh aig ìre brabhsair.

Co-phàirtean plèana smachd: API, Clàr-ama agus feadhainn eile. Aig a 'char as lugha, feumaidh tu sùil a chumail gu bheil API an fhrithealaiche no msaa nas àirde na 0. Faodaidh msaa mòran mheatairean a thoirt seachad: air na diosgan air a bheil e a' snìomh, air slàinte a 'bhuidheann etcd, agus feadhainn eile.

Docker nochd o chionn fhada agus tha a h-uile duine gu math mothachail air na duilgheadasan aige: tha mòran shoithichean ag adhbhrachadh reothadh agus duilgheadasan eile. Mar sin, bu chòir sùil a chumail air Docker fhèin, mar shiostam, cuideachd, co-dhiù a thaobh ruigsinneachd.

dns. Ma dh’ fhailicheas DNS ann am buidheann, bidh an t-seirbheis Discovery gu lèir a’ fàiligeadh cuideachd, agus stadaidh fiosan bho pods gu pods ag obair. Anns a 'chleachdadh agam, cha robh duilgheadasan mar sin ann, ach chan eil seo a' ciallachadh nach eil feum air sùil a chumail air inbhe DNS. Faodar sùil a chumail air latency iarrtas agus cuid de mheatairean eile air CoreDNS.

A-steach. Feumar smachd a chumail air na tha ri fhaighinn de ingress (a’ gabhail a-steach Rianadair Ingress) mar àiteachan inntrigidh don phròiseact.

Chaidh na prìomh phàirtean den bhraisle a chuir às a chèile - a-nis rachamaid nas ìsle, gu ìre tarraingean.

Bhiodh e coltach gu bheil tagraidhean a’ ruith ann am pods, a tha a’ ciallachadh gum feumar smachd a chumail orra, ach ann an da-rìribh chan eil iad. Tha pods neo-sheasmhach: an-diugh bidh iad ag obair air aon fhrithealaiche, a-màireach air fear eile; An-diugh tha 10 dhiubh ann, a-màireach 2. Sin as coireach nach eil duine a’ cumail sùil air na pods. Ann an ailtireachd microservice, tha e nas cudromaiche smachd a chumail air na tha ri fhaighinn den tagradh gu h-iomlan. Gu sònraichte, thoir sùil air na tha ri fhaighinn de phuingean crìochnachaidh seirbheis: a bheil dad ag obair? Ma tha an tagradh ri fhaighinn, an uairsin dè a tha a’ tachairt air a chùlaibh, cia mheud mac-samhail a th’ ann a-nis - is iad sin ceistean dàrna òrdugh. Chan eil feum air sùil a chumail air suidheachaidhean fa leth.

Aig an ìre mu dheireadh, feumaidh tu sùil a chumail air gnìomhachd an tagraidh fhèin, gabh tomhasan gnìomhachais: an àireamh de òrdughan, giùlan luchd-cleachdaidh, msaa.

Prometheus

Is e an siostam as fheàrr airson sùil a chumail air braisle Prometheus. Chan eil fios agam air inneal sam bith as urrainn coimeas a dhèanamh ri Prometheus a thaobh càileachd agus furasta a chleachdadh. Tha e sgoinneil airson bun-structar lùthmhor, agus mar sin nuair a chanas daoine "cumail sùil air Kubernetes" bidh iad mar as trice a’ ciallachadh Prometheus.

Tha roghainn no dhà ann airson tòiseachadh le Prometheus: a’ cleachdadh Helm, faodaidh tu Prometheus no Gnìomhaiche Prometheus àbhaisteach a chuir a-steach.

  1. Prometheus gu cunbhalach. Tha a h-uile dad gu math leis, ach feumaidh tu an ConfigMap a rèiteachadh - gu bunaiteach, sgrìobh faidhlichean rèiteachaidh teacsa, mar a rinn sinn roimhe, ron ailtireachd microservice.
  2. Tha Gnìomhaiche Prometheus beagan nas fharsainge, beagan nas iom-fhillte na loidsig a-staigh, ach tha e nas fhasa a bhith ag obair leis: tha nithean air leth ann, tha geàrr-chunntasan air an cur ris a’ bhuidheann, agus mar sin tha iad tòrr nas freagarraiche airson smachd a chumail air agus an rèiteachadh.

Gus an toradh a thuigsinn, tha mi a’ moladh stàladh Prometheus cunbhalach an-toiseach. Feumaidh tu a h-uile càil a rèiteachadh tron ​​​​config, ach bidh seo buannachdail: tuigidh tu dè a bhuineas dha dè agus ciamar a tha e air a rèiteachadh. Ann an Gnìomhaiche Prometheus, bidh thu ag èirigh sa bhad gu tarraing nas àirde, ged ma thogras tu, faodaidh tu cuideachd sgrùdadh a dhèanamh air an doimhneachd.

Tha Prometheus air a dheagh fhilleadh a-steach le Kubernetes: faodaidh e faighinn gu agus eadar-obrachadh leis an API Server.

Tha fèill mhòr air Prometheus agus tha e a’ faighinn taic bho ghrunn thagraidhean agus chànanan prògramaidh. Tha feum air taic oir tha an cruth meatrach aige fhèin aig Prometheus, agus airson a ghluasad feumaidh tu leabharlann taobh a-staigh an tagraidh no às-mhalairt deiseil. Agus tha tòrr de luchd-às-mhalairt mar sin ann. Mar eisimpleir, tha PostgreSQL Exporter ann: bidh e a’ toirt dàta bho PostgreSQL agus ga thionndadh gu cruth Prometheus gus an urrainn dha Prometheus obrachadh leis.

Prometheus ailtireachd

A’ cumail sùil air Buidheann Kubernetes: Sealladh farsaing agus Ro-ràdh do Prometheus

Prometheus am frithealaiche a — is e so earrann an t-seirbhisich, eanchainn Prometheus. Seo far a bheil tomhasan air an stòradh agus air an giullachd.

Tha na meatrach air an stòradh anns an stòr-dàta sreath ùine (TSDB). Chan e stòr-dàta air leth a th’ ann an TSDB, ach pasgan Go a tha air a thogail a-steach do Prometheus. Gu ìre mhòr, tha a h-uile dad ann an aon binary.

Na stòraich dàta ann an TSDB airson ùine fhada

Chan eil bun-structar Prometheus freagarrach airson stòradh fad-ùine air meatrach. Is e an ùine stòraidh àbhaisteach 15 latha. Faodaidh tu a dhol thairis air a’ chrìoch seo, ach cumaibh cuimhne: mar as motha an dàta a bhios tu a’ stòradh ann an TSDB agus mar as fhaide a nì thu e, is ann as motha de ghoireasan a bhios e ag ithe. Thathas den bheachd gur e droch chleachdadh a th’ ann a bhith a’ stòradh dàta eachdraidheil ann am Prometheus.

Ma tha trafaic mhòr agad, tha an àireamh de mheatairean anns na ceudan mhìltean gach diog, tha e nas fheàrr an stòradh aca a chuingealachadh le àite diosc no ùine. Mar as trice, bidh TSDB a’ stòradh “dàta teth”, meatrach gu litearra airson beagan uairean a thìde. Airson stòradh san fhad-ùine, tha stòradh taobh a-muigh air a chleachdadh anns na stòran-dàta sin a tha dha-rìribh freagarrach airson seo, mar eisimpleir InfluxDB, ClickHouse, agus mar sin air adhart. Chunnaic mi barrachd lèirmheasan math mu ClickHouse.

Bidh Prometheus Server ag obair a rèir a’ mhodail tarraing: tha e fèin a' dol air son tomhaisean do na crìochaibh a thug sinne dha. Thuirt iad: “Rach gu frithealaiche API,” agus bidh e a ’dol ann a h-uile nmh àireamh de dhiog agus a’ toirt na meatrach.

Airson nithean le beatha ghoirid (obair no obair cron) a dh’ fhaodadh nochdadh eadar amannan sgrìobadh, tha pàirt Pushgateway ann. Tha meatrach bho stuthan geàrr-ùine air a phutadh a-steach ann: dh’ èirich an obair, chuir e crìoch air a ’ghnìomh, chuir e na meatrach gu Pushgateway agus chaidh a chrìochnachadh. Às deidh beagan ùine, thèid Prometheus aig an astar aige fhèin agus bheir e na meatrach sin bho Pushgateway.

Gus fiosan a rèiteachadh ann am Prometheus tha pàirt air leth ann - Manaidsear rabhaidh. Agus na riaghailtean rabhaidh. Mar eisimpleir, feumaidh tu rabhadh a chruthachadh mas e API an fhrithealaiche 0. Nuair a thèid an tachartas a bhrosnachadh, thèid an rabhadh a chuir chun mhanaidsear rabhaidh airson tuilleadh a chuir. Tha suidheachaidhean slighe gu math sùbailte aig a’ mhanaidsear rabhaidh: faodar aon bhuidheann de rabhaidhean a chuir gu cabadaich teileagram an rianaire, fear eile gu cabadaich an luchd-leasachaidh, agus an treas cuid gu còmhradh luchd-obrach bun-structair. Faodar fiosan a chuir gu Slack, Telegram, post-d agus seanalan eile.

Agus mu dheireadh, innsidh mi dhut mu fheart marbhtach Prometheus - faighinn a-mach. Nuair a bhios tu ag obair le Prometheus, chan fheum thu seòlaidhean sònraichte de nithean a shònrachadh airson sùil a chumail orra; tha e gu leòr an seòrsa aca a shònrachadh. Is e sin, chan eil feum air sgrìobhadh “Seo an seòladh IP, seo am port - monitor”, an àite sin feumaidh tu faighinn a-mach dè na prionnsapalan a lorgar na nithean sin (targaidean - amasan). Bidh Prometheus fhèin, a rèir dè na stuthan a tha gnìomhach an-dràsta, a 'tarraing suas an fheadhainn a tha riatanach agus gan cur ri sgrùdadh.

Tha an dòigh-obrach seo a’ freagairt gu math ri structar Kubernetes, far a bheil a h-uile càil cuideachd a’ seòladh: an-diugh tha 10 frithealaichean ann, a-màireach 3. Gus nach innis sinn seòladh IP an fhrithealaiche a h-uile turas, sgrìobh sinn aon uair mar a lorgar e - agus nì Discovering e.

Canar cànan Prometheus ris PromQL. A’ cleachdadh a’ chànain seo, gheibh thu luachan meatrach sònraichte agus an uairsin an cruth-atharrachadh agus àireamhachadh anailis a thogail stèidhichte orra.

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)

Prometheus eadar-aghaidh lìn a

Tha eadar-aghaidh lìn fhèin aig Prometheus, caran beag. Freagarrach a-mhàin airson debugging no taisbeanadh.

A’ cumail sùil air Buidheann Kubernetes: Sealladh farsaing agus Ro-ràdh do Prometheus

Faodaidh tu ceist a sgrìobhadh ann am PromQL anns an loidhne Expression.

Anns an tab Alerts tha riaghailtean rabhaidh, agus tha trì inbhean aca:

  1. neo-ghnìomhach - mura h-eil an rabhadh gnìomhach an-dràsta, is e sin, tha a h-uile dad ceart gu leòr, agus cha do dh'obraich e;
  2. ri feitheamh - seo ma chaidh an rabhadh a chuir air adhart, ach nach deach an cur air adhart fhathast. Tha an dàil air a shuidheachadh gus dìoladh a dhèanamh airson brùthadh lìonraidh: ma tha an t-seirbheis ainmichte air a dhol suas taobh a-staigh mionaid, chan eil feum air an inneal-rabhaidh a sheirm fhathast;
  3. is e losgadh an treas inbhe, nuair a bhios an rabhadh a’ lasadh suas agus a’ cur teachdaireachdan.

Anns a’ chlàr Inbhe gheibh thu cothrom air fiosrachadh mu dè a th’ ann am Prometheus. Tha gluasad ann cuideachd gu na h-amasan air an do bhruidhinn sinn gu h-àrd.

A’ cumail sùil air Buidheann Kubernetes: Sealladh farsaing agus Ro-ràdh do Prometheus

Airson sealladh farsaing nas mionaidiche air an eadar-aghaidh Prometheus, faic ann an òraid Slurm air sùil a chumail air buidheann Kubernetes.

Amalachadh le Grafana

Ann an eadar-aghaidh lìn Prometheus chan fhaigh thu grafaichean brèagha agus so-thuigsinn às an urrainn dhut co-dhùnaidhean a dhèanamh mu staid a’ bhraisle. Gus an togail, tha Prometheus a 'ceangal ri Grafana. Seo na clàran-amais a gheibh sinn.

A’ cumail sùil air Buidheann Kubernetes: Sealladh farsaing agus Ro-ràdh do Prometheus

Chan eil e duilich idir a bhith a’ stèidheachadh amalachadh Prometheus agus Grafana; gheibhear stiùireadh anns na sgrìobhainnean: TAIC GRAFANA DO PROMETHEUS, uill, crìochnaichidh mi le seo.

Anns na h-artaigilean a leanas leanaidh sinn air adhart leis a ’chuspair sgrùdaidh: bruidhnidh sinn mu bhith a’ cruinneachadh agus a ’sgrùdadh logaichean a’ cleachdadh Grafana Loki agus innealan eile.

Ùghdar: Marcel Ibraev, rianadair Kubernetes dearbhte, innleadair gnìomhach sa chompanaidh Drochaid a Deas, neach-labhairt agus leasaiche cùrsa Slurm.

Source: www.habr.com