
Akiyesi. itumọ.: Onkọwe ti nkan yii (Luc Perkins) jẹ agbawi idagbasoke ni ile-iṣẹ CNCF, eyiti o jẹ ile si iru awọn iṣẹ akanṣe Open Source bi Linkerd, SMI (Iṣẹ Mesh Interface) ati Kuma (nipasẹ ọna, ṣe o tun ṣe iyalẹnu idi ti Istio jẹ kii ṣe lori atokọ yii? ..). Lẹẹkansi igbiyanju lati mu agbegbe DevOps ni oye ti o dara julọ ti aruwo aṣa ti a pe ni “mesh iṣẹ”, o ṣe atokọ awọn agbara abuda 16 ti iru awọn solusan pese.
loni - ọkan ninu awọn koko-ọrọ to gbona julọ ni aaye ti imọ-ẹrọ sọfitiwia (ati ni ẹtọ bẹ!). Mo ro pe imọ-ẹrọ yii jẹ ileri iyalẹnu ati pe yoo fẹ lati rii pe o gba jakejado (nigbati o ba ni oye, dajudaju). Sibẹsibẹ, o tun wa ni ayika nipasẹ aura ti ohun ijinlẹ fun ọpọlọpọ eniyan. Ni akoko kanna, ani awọn ti o daradara mọ pẹlu rẹ, o jẹ igba soro lati articulate awọn oniwe-anfani ati ohun ti gangan ti o jẹ (pẹlu tirẹ iwongba ti). Ninu nkan yii Emi yoo gbiyanju lati ṣe atunṣe ipo naa nipa kikojọ ọpọlọpọ lo igba "Meshes iṣẹ"*.
* Akiyesi transl.: nibi ati siwaju ninu nkan gangan itumọ yii (“asopọ iṣẹ”) yoo ṣee lo fun apapọ iṣẹ igba tuntun ti o tun wa.
Ṣugbọn ni akọkọ Mo fẹ lati ṣe awọn asọye diẹ:
- Emi ko ṣiṣẹ pẹlu awọn meshes iṣẹ tabi lo wọn ni ita awọn iṣẹ akanṣe ti o bẹrẹ fun eto ẹkọ ti ara mi. Ni apa keji, Emi ni ẹniti o kọ iwe-ipamọ pupọ fun apapo iṣẹ inu inu Twitter ni ọdun 2015 (ko paapaa pe ni “apapọ iṣẹ” lẹhinna) ati kopa ninu idagbasoke oju opo wẹẹbu ati iwe fun , nitorina itumo ohun kan.
- Atokọ mi jẹ isunmọ ati pe ko pe. Awọn ọran lilo le wa ni aimọ fun mi, ati pe awọn aṣayan tuntun yoo ṣee ṣe ni akoko pupọ bi imọ-ẹrọ ti ndagba ati olokiki rẹ ti n dagba.
- Ni akoko kanna, kii ṣe gbogbo imuse mesh iṣẹ ti o wa ni atilẹyin gbogbo awọn ọran lilo ti a ṣe akojọ. Nitorinaa, awọn alaye mi bii “apapọ iṣẹ le…” yẹ ki o ka bi “olukuluku, ati boya gbogbo awọn imuse mesh iṣẹ olokiki le…”.
- Ilana ti awọn apẹẹrẹ ko ṣe iyatọ.
Akojọ kukuru:
- Awari iṣẹ;
- ìsekóòdù;
- ìfàṣẹsí ati aṣẹ;
- fifuye iwontunwosi;
- Circuit fifọ;
- autoscaling;
- canary deployments;
- bulu-alawọ ewe imuṣiṣẹ;
- ayẹwo ilera;
- ikojọpọ fifuye;
- ijabọ mirroring;
- idabobo;
- Idiwọn oṣuwọn ibeere, awọn igbiyanju ati awọn akoko ipari;
- telemetry;
- se ayewo;
- iworan.
1. Awari iṣẹ
TL; DR: Sopọ si awọn iṣẹ miiran lori nẹtiwọki nipa lilo awọn orukọ ti o rọrun.
Awọn iṣẹ yẹ ki o ni anfani lati “wa” ara wọn laifọwọyi nipa lilo awọn orukọ to pe - fun apẹẹrẹ, service.api.production, pets/staging tabi cassandra. Awọn agbegbe awọsanma jẹ rirọ, ati pe orukọ kan le tọju ọpọlọpọ awọn iṣẹlẹ ti iṣẹ kan. O han gbangba pe ni iru ipo bẹẹ ko ṣee ṣe ni ti ara lati ṣe koodu lile gbogbo awọn adirẹsi IP.
Pẹlupẹlu, nigbati iṣẹ kan ba rii omiiran, o yẹ ki o ni anfani lati firanṣẹ awọn ibeere si iṣẹ yẹn laisi iberu pe wọn yoo pari ni titẹ sii ti apẹẹrẹ fifọ rẹ. Ni awọn ọrọ miiran, apapo iṣẹ gbọdọ ṣe abojuto ilera ti gbogbo awọn iṣẹlẹ iṣẹ ati tọju atokọ ti awọn ọmọ-ogun bi imudojuiwọn bi o ti ṣee.
Apapo iṣẹ kọọkan ṣe imuse ẹrọ wiwa iṣẹ ni oriṣiriṣi. Ni akoko yii, ọna ti o wọpọ julọ ni lati ṣe aṣoju si awọn ilana ita bi Kubernetes DNS. Ni igba atijọ lori Twitter a lo eto isọlọkọ fun idi eyi . Ni afikun, imọ-ẹrọ mesh iṣẹ jẹ ki o ṣee ṣe fun awọn ilana isọsọ aṣa lati farahan (biotilejepe Emi ko tii rii imuse SM eyikeyi pẹlu iru iṣẹ ṣiṣe).
2. ìsekóòdù
TL; DR: Yọọ kuro ni ijabọ ti ko pa akoonu laarin awọn iṣẹ ati jẹ ki ilana yii jẹ adaṣe ati iwọn.
O dara lati mọ pe awọn ikọlu ko le wọ inu nẹtiwọọki inu rẹ. Awọn firewalls ṣe iṣẹ nla ti eyi. Ṣugbọn kini yoo ṣẹlẹ ti agbonaeburuwole ba wọle? Ṣe oun yoo ni anfani lati ṣe ohunkohun ti o fẹ pẹlu ijabọ iṣẹ inu iṣẹ bi? Jẹ ki a nireti pe eyi ko ṣẹlẹ lẹhin gbogbo. Lati yago fun oju iṣẹlẹ yii, o yẹ ki o ṣe nẹtiwọọki igbẹkẹle-odo ninu eyiti gbogbo ijabọ laarin awọn iṣẹ ti wa ni fifi ẹnọ kọ nkan. Pupọ awọn meshes iṣẹ ode oni ṣaṣeyọri eyi nipasẹ ifowosowopo (TLS kọọkan, mTLS). Ni awọn igba miiran, mTLS ṣiṣẹ ni gbogbo awọsanma ati awọn iṣupọ (Mo ro pe awọn ibaraẹnisọrọ interplanetary yoo wa ni idayatọ bakanna).
Nitoribẹẹ, fun mesh iṣẹ mTLS iyan. Iṣẹ kọọkan le ṣe abojuto TLS tirẹ, ṣugbọn eyi tumọ si pe iwọ yoo nilo lati wa ọna lati ṣe awọn iwe-ẹri, pin kaakiri wọn kọja awọn agbalejo iṣẹ, ati pẹlu koodu ninu ohun elo ti yoo gbe awọn iwe-ẹri wọnyi lati awọn faili. Bẹẹni, maṣe gbagbe lati tunse awọn iwe-ẹri wọnyi ni awọn aaye arin deede. Awọn meshes iṣẹ ṣe adaṣe mTLS pẹlu awọn ọna ṣiṣe bii , eyi ti, leteto, ṣe adaṣe ilana ti ipinfunni ati yiyi awọn iwe-ẹri.
3. Ijeri ati aṣẹ
TL; DR: Fi idi tani olubẹwẹ jẹ ki o ṣalaye kini wọn gba wọn laaye lati ṣe ṣaaju ki ibeere paapaa de iṣẹ naa.
Awọn iṣẹ nigbagbogbo fẹ lati mọ tani ṣe ibeere naa (ifọwọsi), ati lilo alaye yii, pinnu pe A fi fun nkankan laaye lati ṣe (aṣẹ). Ni idi eyi, ọrọ-orúkọ náà “tani” le tọju:
- Awọn iṣẹ miiran. Eyi ni a npe ni "ijeri" ẹlẹgbẹ" Fun apẹẹrẹ, iṣẹ
webfẹ lati wọle si iṣẹ naadb. Awọn meshes iṣẹ nigbagbogbo yanju iru awọn iṣoro ni lilo mTLS: awọn iwe-ẹri ninu ọran yii ṣe bi idanimọ pataki. - Diẹ ninu awọn olumulo eniyan. Eyi ni a npe ni "ijeri" beere" Fun apẹẹrẹ, olumulo
haxor69fẹ lati ra titun kan atupa. Awọn meshes iṣẹ pese orisirisi awọn ilana, f.eks. .Pupọ wa ti ṣe eyi ni koodu ohun elo. A ìbéèrè wa ni, a wo nipasẹ awọn tabili
users, wa olumulo naa ki o ṣe afiwe ọrọ igbaniwọle, lẹhinna ṣayẹwo ọwọn naapermissionsati be be lo. Ninu ọran ti apapo iṣẹ, eyi ṣẹlẹ ṣaaju ki ibeere paapaa de iṣẹ naa.
Ni kete ti a ba ti fi idi ẹni ti ibeere naa wa, a nilo lati pinnu kini ohun ti a gba laaye lati ṣe. Diẹ ninu awọn meshes iṣẹ gba ọ laaye lati ṣeto awọn eto imulo ipilẹ (nipa tani o le ṣe kini) bi awọn faili YAML tabi lori laini aṣẹ, lakoko ti awọn miiran nfunni ni iṣọpọ pẹlu awọn ilana bii . Ibi-afẹde ti o ga julọ ni fun awọn iṣẹ rẹ lati gba eyikeyi ibeere, ni ailewu ro pe o wa lati orisun ti o gbẹkẹle и yi igbese ti wa ni idasilẹ.
4. Fifuye iwontunwosi
TL; DR: Pin ẹru naa kọja awọn iṣẹlẹ iṣẹ ni ibamu si ilana kan pato.
“Iṣẹ-iṣẹ” kan laarin apakan iṣẹ ni igbagbogbo ni ọpọlọpọ awọn iṣẹlẹ kanna. Fun apẹẹrẹ, loni iṣẹ cache oriširiši 5 idaako, ati besok nọmba wọn le pọ si 11. Awọn ibeere ranṣẹ si cache, gbọdọ wa ni pinpin ni ibamu pẹlu idi kan pato. Fun apẹẹrẹ, lati dinku lairi tabi pọ si iṣeeṣe ti wiwa si apẹẹrẹ iṣẹ kan. Algoridimu ti o wọpọ julọ lo jẹ Yika-robin, ṣugbọn ọpọlọpọ awọn miiran wa - fun apẹẹrẹ, ọna iwuwo (ti o ni iwuwo) awọn ibeere (o le yan awọn ibi-afẹde ti o fẹ), oruka (oruka) hashing (lilo hashing dédé kọja awọn ogun oke) tabi ọna ibeere ti o kere ju (ayanfẹ ni a fun apẹẹrẹ pẹlu awọn ibeere to kere julọ).
Awọn iwọntunwọnsi Ayebaye ni awọn iṣẹ miiran, bii caching HTTP ati aabo DDoS, ṣugbọn wọn ko ṣe pataki pupọ fun ijabọ ila-oorun-iyẹn (iyẹn ni, fun ijabọ ti n ṣan laarin ile-iṣẹ data - isunmọ. transl.) (aṣoju iwọn ti apapo iṣẹ). Nitoribẹẹ, ko ṣe pataki lati lo apapo iṣẹ kan fun iwọntunwọnsi fifuye, ṣugbọn o fun ọ laaye lati ṣeto ati ṣakoso awọn ilana iwọntunwọnsi fun iṣẹ kọọkan lati ipele iṣakoso aarin, nitorinaa imukuro iwulo lati ṣiṣẹ ati tunto awọn iwọntunwọnsi fifuye lọtọ ni akopọ nẹtiwọọki. .
5. Circuit fifọ
TL; DR: Duro ijabọ si iṣẹ iṣoro ati ṣakoso ibajẹ ni awọn oju iṣẹlẹ ti o buruju.
Ti o ba jẹ fun idi kan iṣẹ naa ko le koju ijabọ naa, apapo iṣẹ pese awọn aṣayan pupọ fun lohun iṣoro yii (awọn miiran yoo jiroro ni awọn apakan ti o yẹ). Bibu Circuit jẹ aṣayan ti o nira julọ fun gige asopọ iṣẹ kan lati ijabọ. Sibẹsibẹ, funrararẹ ko ni oye - eto afẹyinti nilo. A le pese titẹ ẹhin () si awọn iṣẹ ti o ṣe awọn ibeere (o kan maṣe gbagbe lati tunto apapo iṣẹ rẹ fun eyi!), Tabi, fun apẹẹrẹ, awọ oju-iwe ipo pupa ati darí awọn olumulo si ẹya miiran ti oju-iwe naa pẹlu “whale ti n ṣubu” (“Twitter ni isalẹ").
Awọn meshes iṣẹ ko gba ọ laaye lati ṣalaye nigbawo tiipa yoo tẹle ati pe eyi yoo tẹle. Ni ọran yii, “nigbawo” le pẹlu eyikeyi akojọpọ awọn paramita pàtó kan: nọmba lapapọ ti awọn ibeere fun akoko kan, nọmba awọn asopọ ti o jọra, awọn ibeere isunmọ, awọn atunwi ti nṣiṣe lọwọ, ati bẹbẹ lọ.
Boya o ko fẹ lati ṣe ilokulo fifọ Circuit, ṣugbọn o dara lati mọ pe o ni ero afẹyinti ni ọran ti pajawiri.
6. Autoscaling
TL; DR: Mu tabi dinku nọmba awọn iṣẹlẹ iṣẹ ti o da lori awọn ibeere ti a sọ.
Awọn meshes iṣẹ kii ṣe awọn oluṣeto, nitorina wọn ko ṣe gbe jade iwọn ara rẹ. Sibẹsibẹ, wọn le pese alaye lori eyiti awọn oluṣeto yoo ṣe ipilẹ awọn ipinnu wọn. Niwọn igba ti awọn meshes iṣẹ ni iwọle si gbogbo awọn ijabọ laarin awọn iṣẹ, wọn ni alaye lọpọlọpọ nipa ohun ti n ṣẹlẹ: awọn iṣẹ wo ni o ni iriri awọn iṣoro, awọn iṣẹ wo ni kojọpọ pupọ (agbara ti a pin si wọn jẹ asonu), ati bẹbẹ lọ.
Fun apẹẹrẹ, awọn iṣẹ iwọn Kubernetes ti o da lori CPU pods ati lilo iranti (wo iroyin wa""- isunmọ. itumọ.), ṣugbọn ti o ba pinnu lati ṣe iwọn ti o da lori eyikeyi metric miiran (ninu ọran wa, ijabọ ijabọ), iwọ yoo nilo metric pataki kan. Isakoso fihan bi o ṣe le ṣe eyi pẹlu , и , ṣugbọn awọn ilana ara jẹ ohun idiju. A yoo fẹ apapo iṣẹ lati jẹ ki eyi rọrun nipa gbigba wa laaye lati ṣeto awọn ipo nirọrun bii “pọ si nọmba awọn iṣẹlẹ iṣẹ. auth, ti nọmba awọn ibeere ti o nduro ba kọja iloro laarin iṣẹju kan."
7. Canary imuṣiṣẹ
TL; DR: Ṣe idanwo awọn ẹya tuntun tabi awọn ẹya iṣẹ lori ipin ti awọn olumulo.
Jẹ ki a sọ pe o n dagbasoke ọja SaaS kan ati pe o pinnu lati yi ẹya tuntun ti o tutu kan jade. O ṣe idanwo ni iṣeto ati pe o ṣiṣẹ nla. Ṣugbọn awọn ifiyesi kan tun wa nipa ihuwasi rẹ ni awọn ipo gidi. Ni awọn ọrọ miiran, o nilo lati ṣe idanwo ẹya tuntun lori awọn iṣoro gidi laisi ewu igbẹkẹle olumulo. Awọn imuṣiṣẹ Canary jẹ nla fun eyi. Wọn gba ọ laaye lati ṣafihan ẹya tuntun si ipin ti awọn olumulo. Ipinlẹ yii le ni awọn olumulo aduroṣinṣin julọ tabi awọn ti n ṣiṣẹ pẹlu ẹya ọfẹ ti ọja naa, tabi awọn olumulo ti o ti ṣafihan ifẹ lati jẹ “awọn ẹlẹdẹ Guinea”.
Awọn meshes iṣẹ ṣe eyi nipa gbigba ọ laaye lati pato awọn ibeere ti o pinnu tani yoo rii iru ẹya ti ohun elo naa, ati ipa ọna gbigbe ni ibamu. Sibẹsibẹ, ko si ohun ti o yipada fun awọn iṣẹ funrararẹ. Ẹya 1.0 ti iṣẹ naa gbagbọ pe gbogbo awọn ibeere wa lati ọdọ awọn olumulo ti o yẹ ki o rii, ati ẹya 1.1 gbagbọ kanna fun awọn olumulo rẹ. Nibayi, o le yi awọn ogorun ti ijabọ laarin awọn atijọ ati titun awọn ẹya, darí a dagba nọmba ti awọn olumulo si awọn titun ọkan ti o ba ti o ṣiṣẹ ni imurasilẹ ati awọn rẹ "Guinea elede" fun awọn lọ-siwaju.
8. Blue-alawọ ewe deployments
TL; DR: Yipada ẹya tuntun ti o tutu, ṣugbọn mura lati mu ohun gbogbo pada lẹsẹkẹsẹ.
Itumo ni lati yi iṣẹ tuntun “buluu” jade, ti o ṣe ifilọlẹ ni afiwe pẹlu atijọ, “alawọ ewe” kan. Ti ohun gbogbo ba lọ laisiyonu ati pe iṣẹ tuntun ṣiṣẹ daradara, lẹhinna ogbologbo le di alaabo. (Ala, ni ọjọ kan iṣẹ “buluu” tuntun yii yoo tun ṣe ayanmọ ti “alawọ ewe” kan yoo parẹ…) Awọn imuṣiṣẹ alawọ-alawọ ewe yato si awọn ti canary ni pe iṣẹ tuntun bo. gbogbo eniyan ni ẹẹkan awọn olumulo (kii ṣe apakan); Ojuami nibi ni lati ni “abo aabo” ti o ṣetan ti nkan kan ba jẹ aṣiṣe.
Awọn meshes iṣẹ nfunni ni ọna ti o rọrun pupọ lati ṣe idanwo iṣẹ “buluu” ati yipada lẹsẹkẹsẹ si “alawọ ewe” ti n ṣiṣẹ ni ọran awọn iṣoro. Kii ṣe akiyesi otitọ pe ni ọna wọn pese alaye pupọ (wo "Telemetry" ni isalẹ) nipa iṣẹ ti "bulu", eyiti o ṣe iranlọwọ lati ni oye boya o ti ṣetan fun iṣẹ kikun.
Akiyesi. itumọ.: O le ka diẹ sii nipa awọn ilana imuṣiṣẹ ti o yatọ ni Kubernetes (pẹlu canary ti a mẹnuba, bulu / alawọ ewe ati awọn miiran) ni .
9. Ayẹwo ilera
TL; DR: Tọju iru awọn iṣẹlẹ iṣẹ wo ni iṣẹ ṣiṣe ati dahun si awọn ti ko ṣiṣẹ mọ.
Ayẹwo ilera (ayẹwo ilera) ṣe iranlọwọ pinnu boya awọn iṣẹlẹ iṣẹ ti ṣetan lati gba ati ilana ijabọ. Fun apẹẹrẹ, ninu ọran ti awọn iṣẹ HTTP, ṣayẹwo ilera le dabi ibeere GET kan si aaye ipari /health... Idahun 200 OK yoo tumọ si pe apẹẹrẹ wa ni ilera, eyikeyi miiran - pe ko ṣetan lati gba ijabọ. Awọn meshes iṣẹ gba ọ laaye lati pato mejeeji ni ọna eyiti yoo ṣayẹwo iṣẹ ṣiṣe ati igbohunsafẹfẹ pẹlu eyiti ayẹwo yii yoo ṣe. Alaye yii le ṣee lo fun awọn idi miiran - fun apẹẹrẹ, fun iwọntunwọnsi fifuye ati fifọ Circuit.
Nitorinaa, ṣayẹwo ilera kii ṣe ọran lilo nikan, ṣugbọn a maa n lo lati ṣaṣeyọri awọn ibi-afẹde miiran. Paapaa, da lori awọn abajade ti awọn sọwedowo ilera, awọn iṣe ita si awọn ibi-afẹde mesh iṣẹ miiran le nilo: fun apẹẹrẹ, mimu dojuiwọn oju-iwe ipo, ṣiṣẹda ọran lori GitHub, tabi kikun tikẹti JIRA kan. Ati apapo iṣẹ nfunni ẹrọ irọrun lati ṣe adaṣe gbogbo eyi.
10. Fifuye idasonu
TL; DR: Ṣatunṣe ijabọ ni idahun si iwasoke igba diẹ ni lilo.
Ti iṣẹ kan ba ti pọ ju pẹlu ijabọ, o le ṣe atunṣe diẹ ninu ijabọ yii fun igba diẹ si ipo miiran (iyẹn, “dasilẹ”, “gbigbe”) (ta) o wa nibẹ). Fun apẹẹrẹ, si iṣẹ afẹyinti tabi ile-iṣẹ data, tabi si ayeraye koko. Bi abajade, iṣẹ naa yoo tẹsiwaju lati ṣe ilana diẹ ninu awọn ibeere dipo jamba ati didaduro ṣiṣe ohun gbogbo lapapọ. Fifuye ta ni preferable lati ya awọn Circuit, sugbon o jẹ tun ko ṣiṣe lati abuse o. O ṣe iranlọwọ idilọwọ awọn ikuna cascading ti o fa awọn iṣẹ isale lati jamba.
11. Traffic parallelization / digi
TL; DR: Fi ibeere kan ranṣẹ si awọn aaye pupọ ni ẹẹkan.
Nigba miiran iwulo wa lati fi ibeere ranṣẹ (tabi yiyan awọn ibeere kan) si awọn iṣẹ lọpọlọpọ ni ẹẹkan. Apeere aṣoju jẹ fifiranṣẹ apakan ti ijabọ iṣelọpọ si iṣẹ idasile kan. Olupin wẹẹbu iṣelọpọ akọkọ firanṣẹ ibeere kan si iṣẹ isale products.production ati fun u nikan. Ati apapo iṣẹ ni oye daakọ ibeere yii ati firanṣẹ si products.staging, eyiti olupin wẹẹbu ko mọ paapaa.
Miiran ti o ni ibatan iṣẹ mesh lilo irú ti o le wa ni muse lori oke ti ijabọ parallelization ni . O kan fifiranṣẹ awọn ibeere kanna si awọn ẹya oriṣiriṣi ti iṣẹ naa ati ṣayẹwo boya gbogbo awọn ẹya ni ihuwasi kanna. Emi ko tii wa kọja imuse apapo iṣẹ kan pẹlu eto idanwo ifaseyin ti irẹpọ bii , ṣugbọn ero naa funrararẹ dabi pe o ni ileri.
12. idabobo
TL; DR: Pa apapo iṣẹ rẹ sinu awọn nẹtiwọki kekere.
Tun mo bi ipinIpinya jẹ iṣẹ ọna ti pinpin apapo iṣẹ kan si awọn abala ọtọtọ ti oye ti ko mọ nkankan nipa ara wọn. Ipinya jẹ diẹ bi ṣiṣẹda awọn nẹtiwọọki ikọkọ foju. Iyatọ ipilẹ ni pe o tun le gbadun gbogbo awọn anfani ti apapo iṣẹ kan (bii wiwa iṣẹ), ṣugbọn pẹlu aabo ti a ṣafikun. Fun apẹẹrẹ, ti ikọlu ba ni anfani lati wọ inu iṣẹ kan lori subnet kan, kii yoo ni anfani lati wo iru awọn iṣẹ ti n ṣiṣẹ lori awọn isunti miiran tabi ṣe idilọwọ awọn ijabọ wọn.
Ni afikun, awọn anfani le tun jẹ ti ajo. O le fẹ lati subnet awọn iṣẹ rẹ ti o da lori eto ile-iṣẹ rẹ ati ṣe iranlọwọ fun awọn olupilẹṣẹ ti ẹru oye ti nini lati tọju gbogbo apapo iṣẹ ni lokan.
13. Beere oṣuwọn diwọn, retries ati timeouts
TL; DR: Iwọ ko nilo lati ṣafikun awọn iṣẹ ṣiṣe iṣakoso ibeere nitty-gritty ninu koodu koodu rẹ.
Gbogbo nkan wọnyi ni a le gbero awọn ọran lilo lọtọ, ṣugbọn Mo pinnu lati darapọ wọn nitori ẹya kan ti o wọpọ: wọn gba awọn iṣẹ ṣiṣe iṣakoso igbesi-aye ibeere ni igbagbogbo ti a ṣakoso nipasẹ awọn ile-ikawe ohun elo. Ti o ba n ṣe agbekalẹ olupin wẹẹbu kan ni Ruby lori Rails (ko ṣepọ pẹlu apapo iṣẹ) ti o ṣe awọn ibeere lati ṣe atilẹyin awọn iṣẹ nipasẹ , ohun elo naa yoo ni lati pinnu kini lati ṣe ti awọn ibeere N ba kuna. Iwọ yoo tun ni lati wa iye ijabọ awọn iṣẹ wọnyi yoo ni anfani lati ṣe ilana ati koodu lile awọn aye wọnyi nipa lilo ile-ikawe pataki kan. Pẹlupẹlu, ohun elo naa yoo ni lati pinnu nigbati o to akoko lati fi silẹ ki o jẹ ki ibeere naa jade (da lori akoko ti o ti pẹ). Ati pe lati le yi eyikeyi awọn aye ti o wa loke pada, olupin wẹẹbu yoo ni lati duro, tunto ati bẹrẹ lẹẹkansi.
Gbigbe awọn iṣẹ ṣiṣe wọnyi si apapo iṣẹ kii ṣe nikan tumọ si pe awọn olupilẹṣẹ iṣẹ kii yoo ni lati ronu nipa wọn, ṣugbọn tun pe wọn le rii ni ọna agbaye diẹ sii. Ti o ba lo pq awọn iṣẹ ti o nipọn, sọ A -> B -> C -> D -> E, gbogbo igbesi-aye igbesi aye ti ibeere gbọdọ jẹ sinu akọọlẹ. Ti iṣẹ-ṣiṣe naa ba ni lati fa awọn akoko-akoko sii ni iṣẹ C, o jẹ ọgbọn lati ṣe gbogbo eyi ni ẹẹkan, kii ṣe ni awọn apakan: nipa mimu koodu iṣẹ dojuiwọn ati duro titi ti o fi gba ibeere fa ati pe eto CI yoo mu iṣẹ imudojuiwọn ṣiṣẹ.
14. Telemetry
TL; DR: Gba gbogbo alaye pataki (kii ṣe pupọ) lati awọn iṣẹ.
Telemetry jẹ ọrọ gbogbogbo ti o pẹlu awọn metiriki, wiwa kaakiri, ati awọn akọọlẹ. Awọn meshes iṣẹ nfunni awọn ọna ṣiṣe fun gbigba ati sisẹ gbogbo awọn iru data mẹta. Eyi ni ibi ti awọn nkan ti di blurry diẹ nitori nọmba awọn aṣayan ti o ṣeeṣe ti tobi ju. Lati gba awọn metiriki wa ati awọn irinṣẹ miiran ti o le ṣee lo lati gba awọn iwe , , ati awọn omiiran. (fun apẹẹrẹ ClickHouse pẹlu wa fun K8s - isunmọ. itumọ.), fun wiwa kaakiri wa ati bẹbẹ lọ. Apapọ iṣẹ kọọkan le ṣe atilẹyin diẹ ninu awọn irinṣẹ kii ṣe awọn miiran. Yoo jẹ ohun ti o nifẹ lati rii boya iṣẹ naa le pese diẹ ninu awọn convergence.
Ni ọran yii, anfani ti imọ-ẹrọ mesh iṣẹ ni pe awọn apoti ẹgbẹ le, ni ipilẹ, gba gbogbo data ti o wa loke lati awọn iṣẹ wọn. Ni awọn ọrọ miiran, o ni eto ikojọpọ telemetry kan ṣoṣo ni ọwọ rẹ, ati pe mesh iṣẹ le ṣe ilana gbogbo alaye yii ni awọn ọna oriṣiriṣi. Fun apere:
- awọn akọọlẹ iru lati iṣẹ kan ninu CLI;
- ṣe atẹle iwọn didun awọn ibeere lati dasibodu mesh iṣẹ;
- gba awọn itọpa ti o pin ati firanṣẹ siwaju wọn si eto bii Jaeger.
Ifarabalẹ, idajọ ti ara ẹni: Ni gbogbogbo, telemetry jẹ agbegbe nibiti kikọlu ti o lagbara lati apapo iṣẹ jẹ aifẹ. Gbigba alaye ipilẹ ati titele lori-ni-fly diẹ ninu awọn metiriki goolu bii ibeere oṣuwọn aṣeyọri ati airi jẹ dara, ṣugbọn jẹ ki a nireti pe a ko rii awọn akopọ Frankenstein ti o jade ti o gbiyanju lati rọpo awọn eto amọja, diẹ ninu eyiti o ti fihan ara wọn ati iwadi daradara. .
15. Ayẹwo
TL; DR: Awọn ti o gbagbe awọn ẹkọ ti itan jẹ iparun lati tun wọn ṣe.
Ṣiṣayẹwo jẹ aworan ti akiyesi awọn iṣẹlẹ pataki ninu eto kan. Ninu ọran ti apapo iṣẹ kan, eyi le tumọ si titọpa ẹniti o ṣe awọn ibeere si awọn aaye ipari kan pato fun awọn iṣẹ kan pato, tabi iye igba diẹ ninu iṣẹlẹ ti o ni ibatan aabo waye ni oṣu to kọja.
O han gbangba pe iṣatunṣe jẹ ibatan pẹkipẹki si telemetry. Iyatọ naa ni pe telemetry nigbagbogbo ni nkan ṣe pẹlu awọn nkan bii iṣelọpọ ati amọdaju ti imọ-ẹrọ, lakoko ti iṣatunṣe le ni ibatan si ofin ati awọn ọran miiran ti o kọja aaye imọ-ẹrọ ti o muna (fun apẹẹrẹ, ibamu pẹlu GDPR - Ilana Gbogbogbo EU lori aabo data).
16. Awotẹlẹ
TL; DR: Long ifiwe React.js - orisun ailopin ti awọn atọkun alafẹfẹ.
O le jẹ ọrọ ti o dara julọ, ṣugbọn emi ko mọ. Mo nìkan tumọ si aṣoju ayaworan ti apapo iṣẹ tabi diẹ ninu awọn paati rẹ. Awọn iwoye wọnyi le pẹlu awọn olufihan bii aropin apapọ, alaye atunto ọkọ ayọkẹlẹ, awọn abajade ayẹwo ilera, ati awọn titaniji.
Nṣiṣẹ ni agbegbe ti o da lori iṣẹ jẹ pẹlu ẹru oye ti o ga julọ ni akawe si Kabiyesi Monolith. Nitorinaa, titẹ oye yẹ ki o dinku ni gbogbo awọn idiyele. Ni wiwo ayaworan ti o rọrun fun apapo iṣẹ kan pẹlu agbara lati tẹ bọtini kan ati gba abajade ti o fẹ le jẹ ipinnu fun idagbasoke olokiki ti imọ-ẹrọ yii.
Ko si ninu akojọ
Mo pinnu ni akọkọ lati ṣafikun awọn ọran lilo diẹ sii ninu atokọ, ṣugbọn lẹhinna pinnu lati ma ṣe. Nibi wọn wa, pẹlu awọn idi fun ipinnu mi:
- Olona-data aarin. Ni ero mi, eyi kii ṣe ọran lilo pupọ bi dín ati agbegbe kan pato ti ohun elo ti meshes iṣẹ tabi diẹ ninu awọn iṣẹ ṣiṣe bii wiwa iṣẹ.
- Ingress ati egress. Eyi jẹ agbegbe ti o jọmọ, ṣugbọn Mo ti ni opin fun ara mi (boya ni atọwọdọwọ) si ọran lilo “ọja ila-oorun-oorun”. Ingress ati egress yẹ kan lọtọ article.
ipari
Iyẹn ni gbogbo fun bayi! Lẹẹkansi, atokọ yii jẹ lainidii pupọ ati pe o ṣee ṣe pe ko pe. Ti o ba ro pe Mo padanu nkankan tabi ni nkan ti ko tọ, jọwọ kan si mi lori Twitter (). Jọwọ bọwọ fun awọn ofin ti iwa.
PS lati onitumọ
Apejuwe akọle fun nkan naa da lori aworan kan lati nkan naa “(nipasẹ Gregory MacKinnon). O fihan bi diẹ ninu awọn iṣẹ ṣiṣe lati awọn ohun elo (ni alawọ ewe) ti lọ si apapo iṣẹ ti o pese awọn asopọ laarin wọn (ni buluu).
Ka tun lori bulọọgi wa:
- «»;
- «»;
- «».
orisun: www.habr.com
