Suidheachaidhean cleachdadh mogal seirbheis

Suidheachaidhean cleachdadh mogal seirbheis

Thoir an aire. eadar-theangachadh.: Tha ùghdar an artaigil seo (Luc Perkins) na neach-tagraidh leasaiche aig a’ bhuidheann CNCF, a tha na dhachaigh do leithid de phròiseactan Open Source mar Linkerd, SMI (Service Mesh Interface) agus Kuma (co-dhiù, a bheil thu cuideachd air smaoineachadh carson a tha Istio nach eil air an liosta seo? .). A-rithist a’ feuchainn ri tuigse nas fheàrr a thoirt do choimhearsnachd DevOps air an hype fasanta ris an canar “service mogaill”, tha e ag ainmeachadh 16 comasan caractar a bheir fuasglaidhean mar sin seachad.

An-diugh mogal seirbheis - aon de na cuspairean as teotha ann an raon innleadaireachd bathar-bog (agus gu ceart mar sin!). Tha mi a’ smaoineachadh gu bheil an teicneòlas seo gu math gealltanach agus bu mhath leam gabhail ris gu farsaing (nuair a tha e ciallach, gu dearbh). Ach, tha e fhathast air a chuairteachadh le aura de dhìomhaireachd don mhòr-chuid de dhaoine. Aig an aon àm, eadhon an fheadhainn a ainmeil leis, gu tric tha e duilich na buannachdan a th’ ann innse agus dè dìreach a th’ ann (a’ toirt a-steach do chuid fhèin gu fìrinneach). San artaigil seo feuchaidh mi ris an t-suidheachadh a cheartachadh le bhith a’ liostadh diofar cleachdadh chùisean "mogalan seirbheis"*.

* Thoir an aire transl .: an seo agus nas fhaide air adhart san artaigil dìreach thèid an eadar-theangachadh seo (“mogal seirbheis”) a chleachdadh airson mogal seirbheis teirm ùr.

Ach an toiseach tha mi airson beagan bheachdan a thoirt seachad:

  • Cha robh mi a-riamh ag obair le mogalan seirbheis no gan cleachdadh taobh a-muigh phròiseactan a thòisich airson m’ fhoghlam fhĂŹn. Air an lĂ imh eile, b’ mise an tè a sgrĂŹobh dòrlach de sgrĂŹobhainnean airson mogal seirbheis a-staigh Twitter ann an 2015 (cha deach eadhon “mogal seirbheis” ainmeachadh air ais an uairsin) agus a ghabh pĂ irt ann an leasachadh na lĂ raich-lĂŹn agus na sgrĂŹobhainnean airson. Linkerd, mar sin tha sin a’ ciallachadh rudeigin.
  • Tha an liosta agam tuairmseach agus neo-choileanta. Is dòcha gu bheil cĂšisean cleachdaidh ann nach eil fios agam, agus tha coltas ann gun èirich roghainnean Ăšra thar Ăšine mar a bhios an teicneòlas a’ leasachadh agus mar a bhios fèill mhòr air.
  • Aig an aon Ă m, chan eil a h-uile buileachadh mogal seirbheis a th’ ann mar-thĂ  a’ toirt taic do gach cĂšis cleachdaidh clĂ raichte. Mar sin, bu chòir na h-aithrisean agam mar “faodaidh mogal seirbheis…” a bhith air an leughadh mar “fa leth, agus is dòcha gum faod a h-uile gnĂŹomh mogal seirbheis mòr-chòrdte…”.
  • Chan eil òrdugh nan eisimpleirean a’ dèanamh diofar sam bith.

Liosta ghoirid:

  • lorg seirbheis;
  • crioptachadh;
  • dearbhadh agus Ăšghdarras;
  • cothromachadh luchd;
  • briseadh cuairte;
  • fèin-sgèileadh;
  • cleachdadh canary;
  • cleachdaidhean gorm-uaine;
  • sgrĂšdadh slĂ inte;
  • rĂšsgadh luchdan;
  • sgĂ than trafaig;
  • insulation;
  • cuingealachadh reata iarrtasan, ath-dheuchainn agus Ăšine-ama;
  • telemetry;
  • sgrĂšdadh;
  • fradharc.

1. Lorg seirbheis

TL; DR: Ceangail ri seirbheisean eile air an lìonra a’ cleachdadh ainmean sìmplidh.

Bu chòir gum biodh e comasach do sheirbheisean “lorg” a chèile gu fèin-ghluasadach a’ cleachdadh ainmean iomchaidh - mar eisimpleir, service.api.production, pets/staging no cassandra. Tha àrainneachdan sgòthan elastagach, agus faodaidh aon ainm iomadh suidheachadh de sheirbheis fhalach. Tha e soilleir gu bheil e do-dhèanta gu corporra gach seòladh IP a chòdachadh ann an suidheachadh mar sin.

A bharrachd air an sin, nuair a lorgas aon seirbheis seirbheis eile, bu chòir dha a bhith comasach air iarrtasan a chuir chun t-seirbheis sin gun eagal gun tig iad gu crÏch nuair a thig iad a-steach don t-suidheachadh briste aca. Ann am faclan eile, feumaidh am mogal seirbheis sÚil a chumail air slàinte a h-uile suidheachadh seirbheis agus an liosta de luchd-aoigheachd a chumail cho Úraichte sa ghabhas.

Bidh gach mogal seirbheis a’ cur an gnìomh inneal lorg seirbheis ann an dòigh eadar-dhealaichte. Aig an àm seo, is e an dòigh as cumanta a bhith a’ tiomnadh gu pròiseasan taobh a-muigh leithid Kubernetes DNS. San àm a dh’ fhalbh air Twitter chleachd sinn siostam ainmeachaidh airson an adhbhair seo Fionnghal. A bharrachd air an sin, tha teicneòlas mogal seirbheis ga dhèanamh comasach dha dòighean ainmeachaidh àbhaisteach nochdadh (ged nach fhaca mi buileachadh SM sam bith le leithid de ghnìomhachd).

2. Crioptachadh

TL; DR: Faigh cuidhteas trafaic gun chrioptachadh eadar seirbheisean agus dèan am pròiseas seo fèin-ghluasadach agus scalable.

Tha e math fios a bhith agad nach urrainn do luchd-ionnsaigh a dhol a-steach don lìonra a-staigh agad. Bidh ballachan teine ​​​​a 'dèanamh obair mhath le seo. Ach dè thachras ma gheibh neach-tarraing a-staigh? Am bi e comasach dha rud sam bith a tha e ag iarraidh a dhèanamh le trafaic taobh a-staigh seirbheis? Tha sinn an dòchas nach tachair seo às deidh a h-uile càil. Gus casg a chuir air an t-suidheachadh seo, bu chòir dhut lìonra earbsa neoni a chuir an gnìomh anns a bheil a h-uile trafaic eadar seirbheisean air a chrioptachadh. Bidh a’ mhòr-chuid de mhogalan seirbheis an latha an-diugh a’ coileanadh seo tro chàch a chèile TLS (TLS dha chèile, mTLS). Ann an cuid de chùisean, bidh mTLS ag obair ann an sgòthan agus cruinneachaidhean slàn (tha mi a’ smaoineachadh gum bi conaltradh eadar-phlanntach air a chuir air dòigh san aon dòigh uaireigin).

Gu dearbh, airson mogal seirbheis mTLS roghainneil. Faodaidh gach seirbheis aire a thoirt don TLS aca fhèin, ach tha seo a’ ciallachadh gum feum thu dòigh a lorg gus teisteanasan a ghineadh, an sgaoileadh thairis air luchd-aoigheachd seirbheis, agus còd a thoirt a-steach don tagradh a luchdaicheas na teisteanasan sin bho fhaidhlichean. Tha, na dìochuimhnich na teisteanasan sin ùrachadh gu cunbhalach. Bidh seirbheis mogal a’ dèanamh fèin-ghluasad air mTLS le siostaman mar SPIFFE, a bhios, an uair sin, a’ dèanamh fèin-ghluasad air a’ phròiseas airson a bhith a’ toirt seachad agus a’ cuairteachadh theisteanasan.

3. Dearbhadh agus Ùghdarrachadh

TL; DR: Stèidhich cò an neach a tha ag iarraidh agus mÏnich na tha cead aca a dhèanamh mus ruig an t-iarrtas eadhon an t-seirbheis.

Bidh seirbheisean gu tric ag iarraidh fios cò a 'coileanadh an iarrtais (dearbhadh), agus a' cleachdadh an fhiosrachaidh seo, a 'co-dhÚnadh a tha cead aig eintiteas sònraichte a dhèanamh (Úghdarras). Anns a 'chÚis seo, faodaidh an riochdaire "cò" falach:

  1. Seirbheisean eile. Canar "dearbhadh" ris an seo co-aoisean" Mar eisimpleir, seirbheis web ag iarraidh cothrom fhaighinn air an t-seirbheis db. Mar as trice bidh mogalan seirbheis a’ fuasgladh nan duilgheadasan sin le bhith a’ cleachdadh mTLS: bidh teisteanasan sa chùis seo ag obair mar an aithnichear riatanach.
  2. Cuid de luchd-cleachdaidh daonna. Canar "dearbhadh" ris an seo iarrtas" Mar eisimpleir, neach-cleachdaidh haxor69 ag iarraidh lampa ùr a cheannach. Bidh mogalan seirbheis a’ toirt seachad diofar dhòighean, me. Comharran lìn JSON.

    Tha mòran againn air seo a dhèanamh ann an còd tagraidh. Thig iarrtas a-steach, bidh sinn a 'coimhead tron ​​​​bhòrd users, lorg an neach-cleachdaidh agus dèan coimeas eadar am facal-faire, an uairsin thoir sùil air a’ cholbh permissions etc. Ann an cùis mogal seirbheis, bidh seo a 'tachairt mus ruig an t-iarrtas eadhon an t-seirbheis.

Aon uair ‘s gu bheil sinn air faighinn a-mach cò às a thàinig an t-iarrtas, feumaidh sinn dearbhadh dè a tha ceadaichte don eintiteas seo a dhèanamh. Leigidh cuid de mhogalan seirbheis dhut poileasaidhean bunaiteach a shuidheachadh (mu cò as urrainn dè a dhèanamh) mar fhaidhlichean YAML no air an loidhne-àithne, agus cuid eile a’ tabhann amalachadh le frèaman mar Fosgailte Agent Poileasaidh. Is e an amas mu dheireadh gum bi do sheirbheisean a’ gabhail ri iarrtas sam bith, a’ gabhail ris gu sàbhailte gur ann bho stòr earbsach a tha e и tha an gnìomh seo ceadaichte.

4. Cothromachadh luchdan

TL; DR: Sgaoil an luchd thairis air suidheachaidhean seirbheis a rèir pàtran sònraichte.

Gu math tric bidh “Seirbheis” taobh a-staigh roinn seirbheis a’ gabhail a-steach iomadh suidheachadh co-ionann. Mar eisimpleir, an-diugh an t-seirbheis cache air a dhèanamh suas de 5 leth-bhreacan, agus a-màireach faodaidh an àireamh aca àrdachadh gu 11. Iarrtasan air an cur gu cache, a bhith air a sgaoileadh a rèir adhbhar sònraichte. Mar eisimpleir, lughdaich latency no àrdaich an coltachd gun tèid thu gu suidheachadh obrach. Is e Round-robin an algairim as cumanta, ach tha mòran eile ann - mar eisimpleir, an dòigh le cuideam (cuideam) ceistean (faodaidh tu targaidean as fheàrr leat a thaghadh), fàinne (fàinne) hashing (a’ cleachdadh hashing cunbhalach thairis air luchd-aoigheachd shuas an abhainn) no an dòigh tagraidh as lugha (tha roghainn air a thoirt don eisimpleir leis an ìre as lugha de dh’ iarrtasan).

Tha gnìomhan eile aig cothromadairean clasaigeach, leithid caching HTTP agus dìon DDoS, ach chan eil iad gu math buntainneach airson trafaic an ear-an-iar (is e sin, airson trafaic a’ sruthadh taobh a-staigh ionad dàta - approx. transl.) (raon àbhaisteach mogal seirbheis). Gu dearbh, chan eil e riatanach mogal seirbheis a chleachdadh airson cothromachadh luchdan, ach leigidh e leat poileasaidhean cothromachaidh a shuidheachadh agus smachd a chumail air gach seirbheis bho ìre smachd meadhanaichte, agus mar sin a’ cur às don fheum air cothromachadh luchdan fa leth a ruith agus a rèiteachadh anns a’ chruach lìonra. .

5. Briseadh cuairte

TL; DR: Cuir stad air trafaic chun t-seirbheis trioblaideach agus smachd a chumail air a’ mhilleadh anns na suidheachaidhean as miosa.

Mura h-urrainn don t-seirbheis dèiligeadh ris an trafaic airson adhbhar air choireigin, bheir am mogal seirbheis grunn roghainnean seachad airson an duilgheadas seo fhuasgladh (thèid beachdachadh air cuid eile anns na h-earrannan iomchaidh). Is e briseadh cuairteachaidh an roghainn as cruaidhe airson seirbheis a dhì-cheangal bho thrafaig. Ach, leis fhèin chan eil e a 'dèanamh ciall - tha feum air plana cùl-taic. Faodar cuideam cùil a thoirt seachad (backpressure) gu seirbheisean a bhios a’ dèanamh iarrtasan (dìreach na dìochuimhnich do mhogal seirbheis a rèiteachadh airson seo!), No, mar eisimpleir, dath a chuir air an duilleag inbhe agus ath-stiùireadh luchd-cleachdaidh gu dreach eile den duilleag le “muc-mhara a’ tuiteam” (“Tha Twitter sìos”).

Chan e a-mhàin gu bheil mogalan seirbheis a’ toirt cothrom dhut mìneachadh cuin leanaidh dùnadh agus a leanaidh seo. Anns a 'chùis seo, faodaidh "cuin" measgachadh sam bith de chrìochan sònraichte a ghabhail a-steach: an àireamh iomlan de dh'iarrtasan airson ùine shònraichte, an àireamh de cheanglaichean co-shìnte, iarrtasan ri thighinn, ath-sgrùdaidhean gnìomhach, msaa.

Is dòcha nach eil thu airson droch dhÏol a dhèanamh air briseadh cuairte, ach tha e math fios a bhith agad gu bheil plana cÚl-taic agad ma tha èiginn ann.

6. Autoscaling

TL; DR: Meudaich no lughdaich an àireamh de shuidheachaidhean seirbheis a rèir nan slatan-tomhais ainmichte.

Chan e clàran-ama a th’ ann am mogalan seirbheis, mar sin chan eil Dèan a' sgapadh thu fhèin. Ach, faodaidh iad fiosrachadh a thoirt seachad air dè an luchd-dealbhaidh a stèidhicheas na co-dhùnaidhean aca. Leis gu bheil cothrom aig mogalan seirbheis air a h-uile trafaic eadar seirbheisean, tha fiosrachadh farsaing aca mu na tha a’ tachairt: dè na seirbheisean a tha a’ faighinn duilgheadasan, dè na seirbheisean a tha gu math aotrom (tha an comas a chaidh a thoirt dhaibh air a chaitheamh), msaa.

Mar eisimpleir, bidh Kubernetes a ’sgèileadh seirbheisean stèidhichte air CPU pods agus cleachdadh cuimhne (faic an aithisg againn "Sgèileadh fèin-ghluasadach agus riaghladh ghoireasan ann an Kubernetes"- mu thuairmeas. eadar-theangachadh.), ach ma cho-dhùnas tu sgèile a dhèanamh stèidhichte air meatrach sam bith eile (anns a’ chùis againn, co-cheangailte ri trafaic), bidh feum agad air meatrach sònraichte. Riaghladh Mar seo a’ sealltainn mar a nì thu seo le Teachdaire, Istio и Prometheus, ach tha am pròiseas fhèin gu math toinnte. Bu mhath leinn gun dèan am mogal seirbheis seo a dhèanamh nas sìmplidhe le bhith a’ leigeil leinn dìreach suidheachaidhean a shuidheachadh mar “àrdachadh air an àireamh de shuidheachaidhean seirbheis auth, ma tha an àireamh de dh'iarrtasan ri thighinn nas àirde na an ìre taobh a-staigh mionaid."

7. Cleachdaidhean Canary

TL; DR: Dèan deuchainn air feartan Úra no dreachan seirbheis air fo-sheata de luchd-cleachdaidh.

Canaidh sinn gu bheil thu a’ leasachadh toradh SaaS agus gu bheil thu an dùil dreach ùr fionnar dheth a sgaoileadh. Rinn thu deuchainn air aig an àrd-ùrlar agus dh’ obraich e glè mhath. Ach tha cuid de dhraghan ann fhathast mun ghiùlan aice ann an suidheachaidhean fìor. Ann am faclan eile, feumaidh tu an dreach ùr fheuchainn air fìor dhuilgheadasan gun a bhith a’ cur earbsa luchd-cleachdaidh ann an cunnart. Tha cleachdadh Canary math airson seo. Leigidh iad leat feart ùr a thaisbeanadh do fho-sheata de luchd-cleachdaidh. Faodaidh an fho-sheata seo a bhith air a dhèanamh suas den luchd-cleachdaidh as dìlse no an fheadhainn a tha ag obair leis an dreach an-asgaidh den toradh, no luchd-cleachdaidh a tha air miann a bhith nan “mucan-gini”.

Bidh mogalan seirbheis a’ cur seo an gnìomh le bhith a’ leigeil leat slatan-tomhais a shònrachadh a cho-dhùineas cò a chì dè an dreach den tagradh, agus a’ stiùireadh trafaic a rèir sin. Ach, chan eil dad ag atharrachadh airson nan seirbheisean fhèin. Tha dreach 1.0 den t-seirbheis den bheachd gu bheil a h-uile iarrtas a’ tighinn bho luchd-cleachdaidh a bu chòir fhaicinn, agus tha dreach 1.1 den bheachd an aon rud airson an luchd-cleachdaidh. Aig an aon àm, faodaidh tu an àireamh sa cheud de thrafaig atharrachadh eadar an t-seann dreach agus an dreach ùr, ag ath-stiùireadh àireamh a tha a’ sìor fhàs de luchd-cleachdaidh chun fhear ùr ma dh’ obraicheas e gu seasmhach agus na “mucan gini” agad a’ toirt cead dhut.

8. Cleachdaidhean gorm-uaine

TL; DR: Cuir a-mach feart Ăšr fionnar, ach bi deiseil airson a h-uile cĂ il a thoirt air ais sa bhad.

Ciall cleachdaidhean gorm-uaine is e seirbheis “gorm” ùr a chuir air bhog, ga chuir air bhog aig an aon àm ris an t-seann fhear, “uaine”. Ma thèid a h-uile càil gu rèidh agus gu bheil an t-seirbheis ùr a 'coileanadh gu math, faodaidh an seann fhear a bhith air a chiorramachadh mean air mhean. (Gu mì-fhortanach, aon latha bidh an t-seirbheis ùr “gorm" seo ag ath-aithris mar a thachair don fhear “uaine” agus a’ dol à sealladh...) Tha cleachdadh gorm-uaine eadar-dhealaichte bhon fheadhainn canary leis gu bheil an gnìomh ùr a’ còmhdach a h-uile duine aig an aon àm luchd-cleachdaidh (chan eil pàirt); Is e a’ phuing an seo “cala sàbhailte” a bhith deiseil gun fhios nach tèid rudeigin ceàrr.

Tha mogalan seirbheis a’ tabhann dòigh gu math goireasach airson seirbheis “gorm” a dhearbhadh agus sa bhad atharrachadh gu seirbheis “uaine” obrach gun fhios nach bi duilgheadasan ann. Gun a bhith a 'toirt iomradh air an fhìrinn gu bheil iad a' toirt seachad tòrr fiosrachaidh air an t-slighe (faic "Telemetry" gu h-ìosal) mu obair an "gorm", a tha a 'cuideachadh le bhith a' tuigsinn a bheil e deiseil airson làn obrachadh.

Thoir an aire. eadar-theangachadh.: Faodaidh tu barrachd a leughadh mu dhiofar ro-innleachdan cleachdadh ann an Kubernetes (a’ toirt a-steach an canary a chaidh ainmeachadh, gorm / uaine agus feadhainn eile) ann an an artaigil seo.

9. SgrĂšdadh slĂ inte

TL; DR: Cum sÚil air dè na suidheachaidhean seirbheis a tha obrachail agus freagair an fheadhainn nach eil ag obair tuilleadh.

Sgrùdadh slàinte (sgrùdadh slàinte) a’ cuideachadh le bhith a’ co-dhùnadh a bheil suidheachaidhean seirbheis deiseil airson gabhail ris agus làimhseachadh trafaic. Mar eisimpleir, a thaobh seirbheisean HTTP, is dòcha gum bi sgrùdadh slàinte coltach ri iarrtas GET chun a’ phuing crìochnachaidh /health... Freagair 200 OK a’ ciallachadh gu bheil an eisimpleir fallain, rud sam bith eile - nach eil e deiseil airson trafaic fhaighinn. Leigidh mogalan seirbheis leat an dà chuid an dòigh anns an tèid gnìomhachd a sgrùdadh agus cho tric sa thèid an sgrùdadh seo a dhèanamh a shònrachadh. Faodar am fiosrachadh seo a chleachdadh an uairsin airson adhbharan eile - mar eisimpleir, airson cothromachadh luchdan agus briseadh chuairtean.

Mar sin, chan e cùis cleachdaidh fa-leth a th’ ann an sgrùdadh slàinte, ach mar as trice tha e air a chleachdadh gus amasan eile a choileanadh. Cuideachd, a rèir toraidhean sgrùdaidhean slàinte, is dòcha gum bi feum air gnìomhan taobh a-muigh targaidean mogal seirbheis eile: mar eisimpleir, ag ùrachadh na duilleig inbhe, a’ cruthachadh cùis air GitHub, no a’ lìonadh tiogaid JIRA. Agus tha mogal seirbheis a’ tabhann inneal goireasach airson seo uile a dhèanamh fèin-ghluasadach.

10. Shedding luchdan

TL; DR: Ath-stiĂšireadh trafaic mar fhreagairt air spĂŹc sealach ann an cleachdadh.

Ma tha seirbheis sònraichte air a luchdachadh cus de thrafaig, faodaidh tu cuid den trafaic seo ath-stiùireadh gu àite eile (is e sin, “dump”, “gluasad” (seada) e ann). Mar eisimpleir, gu seirbheis cùl-taic no ionad dàta, no gu ionad maireannach Pulsar cuspair. Mar thoradh air an sin, cumaidh an t-seirbheis a’ làimhseachadh cuid de dh’ iarrtasan an àite a bhith a’ bualadh agus a’ stad a bhith a’ giullachd a h-uile càil gu tur. Tha e nas fheàrr a bhith a’ rùsgadh luchdan na bhith a’ briseadh a’ chuairte, ach chan eilear fhathast a’ moladh a mhì-ghnàthachadh. Bidh e a’ cuideachadh le casg a chuir air fàilligidhean casgach a dh’ adhbhraicheas seirbheisean sìos an abhainn tuiteam.

11. Co-shĂŹnteadh/sgĂ than trafaig

TL; DR: Cuir aon iarrtas gu grunn Ă iteachan aig an aon Ă m.

Aig amannan feumar iarrtas (no taghadh sònraichte de dh’iarrtasan) a chuir gu grunn sheirbheisean aig an aon àm. Is e eisimpleir àbhaisteach a bhith a’ cur pàirt de thrafaig cinneasachaidh gu seirbheis stèidse. Bidh am prìomh fhrithealaiche lìn riochdachaidh a 'cur iarrtas chun t-seirbheis sìos an abhainn products.production agus dha a mhàin. Agus bidh am mogal seirbheis a’ dèanamh leth-bhreac den iarrtas seo gu tùrail agus ga chur thuige products.staging, nach eil am frithealaiche lìn eadhon mothachail air.

Is e cùis cleachdadh mogal seirbheis co-cheangailte eile a ghabhas a chuir an gnìomh a bharrachd air co-shìnteadh trafaic deuchainn ath-thionndaidh. Tha e a’ ciallachadh a bhith a’ cur na h-aon iarrtasan gu diofar dhreachan den t-seirbheis agus a’ dèanamh cinnteach a bheil a h-uile dreach gan giùlan fhèin mar an ceudna. Chan eil mi fhathast air tighinn tarsainn air buileachadh mogal seirbheis le siostam deuchainn ais-tharraing aonaichte mar Diffy, ach tha e coltach gu bheil am beachd fhèin gealltanach.

12. Insaladh

TL; DR: Dèan briseadh air do mhogal seirbheis gu lÏonraidhean beaga.

Cuideachd aithnichte mar dealachadhIs e aonaranachd an ealain a bhith a’ roinn mogal seirbheis ann an earrannan a tha eadar-dhealaichte gu loidsigeach nach eil eòlach air a chèile. Tha aonaranachd car coltach ri cruthachadh lìonraidhean prìobhaideach brìgheil. Is e an eadar-dhealachadh bunaiteach gum faod thu fhathast na buannachdan uile bho mhogal seirbheis (mar lorg seirbheis) a mhealtainn, ach le tèarainteachd a bharrachd. Mar eisimpleir, ma tha neach-ionnsaigh comasach air a dhol a-steach do sheirbheis air aon subnet, cha bhith e comasach dha faicinn dè na seirbheisean a tha a’ ruith air subnets eile no stad a chuir air an trafaic aca.

A bharrachd air an sin, faodaidh na buannachdan a bhith eagrachaidh cuideachd. Is dòcha gum bi thu airson do sheirbheisean a thoirt fo-lÏon stèidhichte air structar a 'chompanaidh agad agus faochadh a thoirt do luchd-leasachaidh bhon eallach inntinneil bho bhith a' cumail cuimhne air a 'mhogal seirbheis gu lèir.

13. Iarrtas cuibhreachaidh, ath-chuingean agus amannan-ama

TL; DR: Chan fheum thu tuilleadh na gnÏomhan riaghlaidh iarrtas nitty-gritty a thoirt a-steach don bhun-chòd agad.

Dh’ fhaodadh na rudan sin uile a bhith air am faicinn mar chùisean cleachdaidh fa-leth, ach chuir mi romham an cur còmhla air sgàth aon fheart cumanta: bidh iad a’ gabhail thairis na h-iarrtasan gnìomhan stiùireadh cuairt-beatha mar as trice air an làimhseachadh le leabharlannan tagraidh. Ma tha thu a’ leasachadh frithealaiche lìn ann an Ruby on Rails (nach eil ceangailte ri mogal seirbheis) a dh’ iarras air seirbheisean cùl-taic tro gRPC, feumaidh an tagradh co-dhùnadh dè a nì e ma dh’ fhailicheas N iarrtasan. Feumaidh tu cuideachd faighinn a-mach dè an trafaic a bhios na seirbheisean sin comasach air na crìochan sin a phròiseasadh agus a chòdachadh le bhith a’ cleachdadh leabharlann sònraichte. A bharrachd air an sin, feumaidh an tagradh co-dhùnadh cuin a tha an t-àm ann a leigeil seachad agus leigeil leis an iarrtas a dhol a-mach (stèidhichte air ùine). Agus gus gin de na paramadairean gu h-àrd atharrachadh, feumar stad a chuir air an fhrithealaiche lìn, ath-dhealbhadh agus tòiseachadh a-rithist.

Le bhith a’ luchdachadh nan gnìomhan sin gu mogal seirbheis chan ann a-mhàin a’ ciallachadh nach fheum luchd-leasachaidh seirbheis smaoineachadh orra, ach cuideachd gum faodar coimhead orra ann an dòigh nas cruinne. Ma thèid sreath sheirbheisean iom-fhillte a chleachdadh, can A -> B -> C -> D -> E, feumar aire a thoirt do chuairt-beatha iomlan an iarrtais. Mas e an obair ùine-ama a leudachadh ann an seirbheis C, tha e loidsigeach seo a dhèanamh uile aig an aon àm, agus chan ann ann am pàirtean: le bhith ag ùrachadh a’ chòd seirbheis agus a’ feitheamh gus an tèid gabhail ris an iarrtas tarraing agus an siostam CI a’ cleachdadh na seirbheis ùraichte.

14. Teileameataireachd

TL; DR: Cruinnich a h-uile fiosrachadh riatanach (agus chan eil buileach) bho sheirbheisean.

Is e teirm coitcheann a th’ ann an telemetry a tha a’ toirt a-steach meatrach, lorg sgaoilte, agus logaichean. Bidh mogalan seirbheis a’ tabhann dhòighean airson na trì seòrsaichean dàta a chruinneachadh agus a ghiullachd. Seo far a bheil cùisean a’ fàs rud beag doilleir leis gu bheil an àireamh de roghainnean a dh’ fhaodadh a bhith ro mhòr. Gus metrics a chruinneachadh tha Prometheus agus innealan eile a ghabhas cleachdadh airson logaichean a chruinneachadh fileanta, Loki, Vector agus feadhainn eile. (mar eisimpleir ClickHouse le ar taigh-logaidh airson K8s - approx. eadar-theangachadh.), airson lorg sgaoilte tha Sealgair Agus mar sin air adhart. Faodaidh gach mogal seirbheis taic a thoirt do chuid de dh’ innealan agus chan e feadhainn eile. Bidh e inntinneach faicinn an urrainn don phròiseact Telemetry fosgailte beagan co-chruinneachaidh a thoirt seachad.

Anns a 'chÚis seo, is e buannachd teicneòlas mogal seirbheis gum faod soithichean taobh-chàraichean, ann am prionnsabal, an dàta gu h-àrd a chruinneachadh bho na seirbheisean aca. Ann am faclan eile, tha aon shiostam cruinneachaidh telemetry agad ri làimh, agus faodaidh mogal na seirbheis am fiosrachadh seo gu lèir a phròiseasadh ann an diofar dhòighean. Mar eisimpleir:

  • logaichean earbaill bho sheirbheis sònraichte anns an CLI;
  • sĂšil a chumail air an Ă ireamh de dh'iarrtasan bhon deas-bhòrd mogal seirbheis;
  • cruinnich comharran sgaoilte agus cuir air adhart iad gu siostam mar Jaeger.

Thoir aire, breithneachadh cuspaireil: San fharsaingeachd, tha telemetry na raon far a bheil bacadh làidir bhon mhogal seirbheis neo-mhiannach. Tha e ceart gu leòr fiosrachadh bunaiteach a chruinneachadh agus sùil a chumail air cuid de mheatairean òrail leithid ìre soirbheachaidh iarrtas agus latency, ach tha sinn an dòchas nach fhaic sinn stacan Frankenstein a’ nochdadh a bhios a’ feuchainn ri siostaman sònraichte a chuir an àite, cuid dhiubh air iad fhèin a dhearbhadh agus air an deagh sgrùdadh. .

15. SgrĂšdadh

TL; DR: Tha an fheadhainn a dhĂŹochuimhnicheas leasanan na h-eachdraidh an impis an ath-aithris.

Is e sgrùdadh an ealain a bhith a’ cumail sùil air tachartasan cudromach ann an siostam. A thaobh mogal seirbheis, dh’ fhaodadh seo a bhith a’ ciallachadh a bhith a’ cumail sùil air cò rinn iarrtasan gu puingean crìochnachaidh sònraichte airson seirbheisean sònraichte, no cia mheud uair a thachair tachartas co-cheangailte ri tèarainteachd air a’ mhìos a chaidh.

Tha e soilleir gu bheil sgrùdadh dlùth cheangailte ri telemetry. Is e an t-eadar-dhealachadh gu bheil telemetry mar as trice co-cheangailte ri rudan leithid cinneasachd agus ionracas teignigeach, agus faodaidh sgrùdadh a bhith co-cheangailte ri cùisean laghail agus cùisean eile a tha a’ dol nas fhaide na an raon teignigeach (mar eisimpleir, gèilleadh ri GDPR - Riaghailt Coitcheann an EU air dìon dàta).

16. Ìomhaigh

TL; DR: Long live React.js - stòr neo-sheasmhach de eadar-aghaidh sÚbailte.

Is dòcha gu bheil teirm nas fheàrr ann, ach chan eil mi eòlach air. Tha mi dìreach a’ ciallachadh riochdachadh grafaigeach de mhogal seirbheis no cuid de na co-phàirtean aige. Faodaidh na h-ìomhaighean sin a bhith a’ toirt a-steach comharran leithid latencies cuibheasach, fiosrachadh rèiteachaidh càr taobh, toraidhean sgrùdadh slàinte, agus rabhaidhean.

Tha obair ann an àrainneachd a tha ag amas air seirbheis a’ toirt a-steach eallach inntinn mòran nas àirde an taca ri A Mhòrachd am Monolith. Mar sin, bu chòir cuideam inntinneil a lughdachadh aig a h-uile cosgais. Dh’ fhaodadh eadar-aghaidh grafaigeach sìmplidh airson mogal seirbheis le comas cliogadh air putan agus an toradh a tha thu ag iarraidh fhaighinn a bhith cinnteach airson fàs mòr-chòrdte an teicneòlais seo.

Cha deach an toirt a-steach don liosta

Bha mi an dÚil an toiseach beagan chÚisean cleachdaidh a bharrachd a thoirt a-steach don liosta, ach cho-dhÚin mi an uairsin gun a bhith. Seo iad, còmhla ris na h-adhbharan airson mo cho-dhÚnadh:

  • Ionad ioma-dĂ ta. Nam bheachd-sa, chan e cĂšis cleachdaidh a tha seo cho mòr ri raon cumhang agus sònraichte de bhith a’ cleachdadh mogalan seirbheis no seata de ghnĂŹomhan leithid lorg seirbheis.
  • Teachd a-steach agus a-mach. Is e raon co-cheangailte a tha seo, ach tha mi air mi fhĂŹn a chuingealachadh (is dòcha gu saor-thoileach) don chĂšis cleachdaidh “trafaic an ear-an-iar”. Tha dol a-steach agus a-mach airidh air artaigil air leth.

co-dhĂšnadh

Tha sin uile airson a-nis! A-rithist, tha an liosta seo gu math neo-riaghailteach agus is dòcha neo-iomlan. Ma tha thu a’ smaoineachadh gu bheil mi air rudeigin a chall no air rudeigin ceàrr, nach cuir thu fios thugam air Twitter (@luckerkins). Feuch an toir thu urram do na riaghailtean ceartais.

PS bhon eadar-theangair

Tha an dealbh tiotal airson an artaigil stèidhichte air ìomhaigh bhon artaigil “Dè a th’ ann am mogal seirbheis (agus cuin a chleachdas tu fear)?"(le Gregory MacKinnon). Tha e a’ sealltainn mar a tha cuid de ghnìomhachd bho thagraidhean (ann an uaine) air gluasad gu mogal seirbheis a bheir seachad ceanglaichean eadar iad (ann an gorm).

Leugh cuideachd air ar blog:

Source: www.habr.com

Cuir beachd ann