
Rịba ama. ntụgharị asụsụ.: Onye dere edemede a (Luc Perkins) bụ onye na-akwado onye nrụpụta na nzukọ CNCF, bụ ebe obibi nke ọrụ Open Source dị ka Linkerd, SMI (Service Mesh Interface) na Kuma (n'agbanyeghị, ị na-echekwa ihe kpatara Istio ji dị. Ọ bụghị na ndepụta a? .) Ọzọkwa na-agbalị iweta ndị DevOps obodo nghọta ka mma banyere ihe na-ewu ewu hype a na-akpọ "ọrụ mesh", ọ depụtara 16 njirimara ike na ngwọta ndị dị otú ahụ na-enye.
taa - otu n'ime isiokwu kacha ewu ewu na ngalaba injinịa ngwanrọ (ma n'ụzọ ziri ezi!). Echere m na teknụzụ a na-ekwe nkwa nke ukwuu ma ọ ga-amasị m ịhụ ka a nabata ya (mgbe ọ bara uru, n'ezie). Agbanyeghị, ọ ka nwere ihe omimi nke ọtụtụ mmadụ gbara ya gburugburu. N'otu oge ahụ, ọbụna ndị amara nke ọma na ya, ọ na-esikarị ike ịkọwa uru ya na ihe ọ bụ kpọmkwem (gụnyere nke gị n'ezie). N'isiokwu a, m ga-agbalị imezi ọnọdụ ahụ site n'ịdepụta dị iche iche jiri ikpe "Meshes ọrụ"*.
* Mara ntụgharị asụsụ: ebe a na n'ihu n'isiokwu a, a ga-eji ntụgharị asụsụ a ("ntupu ọrụ") maka ntupu ọrụ ọhụrụ ka dị.
Mana mbụ achọrọ m ikwu okwu ole na ole:
- Ọ dịtụbeghị mgbe m na-arụ ọrụ meshes ma ọ bụ jiri ha na-abụghị ọrụ malitere maka agụmakwụkwọ nke m. N'aka nke ọzọ, abụ m onye dere ụyọkọ akwụkwọ maka ntanetị ọrụ nke Twitter na 2015 (a naghị akpọ ya "nchịkọta ọrụ" n'oge ahụ) wee soro na mmepe nke weebụsaịtị na akwụkwọ maka. , ya mere nke ahụ pụtara ihe.
- Ndepụta m dị nso na ezughi oke. Enwere ike inwe okwu ikpe amaghị m, yana nhọrọ ọhụrụ ga-ebilite ka oge na-aga ka teknụzụ na-etolite na ewu ewu ya na-eto.
- N'otu oge ahụ, ọ bụghị mmejuputa ntupu ọrụ ọ bụla dị adị na-akwado ikpe ojiji niile edepụtara. Ya mere, a ga-agụ nkwupụta m dị ka "ntupu ọrụ nwere ike..." dị ka "onye ọ bụla, yana ikekwe mmemme ntupu ọrụ niile ama ama nwere ike...".
- Usoro nke ihe atụ anaghị eme ihe ọ bụla.
Ndepụta nkenke:
- nchọpụta ọrụ;
- izo ya ezo;
- nkwenye na ikike;
- ibu itule;
- mmebi sekit;
- autoscaling;
- ihe nkesa canary;
- ihe ntinye akwụkwọ na-acha anụnụ anụnụ-acha akwụkwọ ndụ;
- nlele ahụike;
- ịwụfu ibu;
- okporo ụzọ mirroring;
- mkpuchi;
- arịrịọ mmachi ọnụego, nwughari na oge nkwụsị;
- telemetry;
- nyocha;
- anya.
1. Nchọpụta ọrụ
TL;DR: Jikọọ na ọrụ ndị ọzọ na netwọk site na iji aha dị mfe.
Ndị ọrụ kwesịrị inwe ike 'ịchọta' onwe ha na-akpaghị aka site na iji aha zuru oke - dịka ọmụmaatụ, service.api.production, pets/staging ma ọ bụ cassandra. Gburugburu igwe ojii na-agbanwe, na otu aha nwere ike zoo ọtụtụ oge ọrụ. O doro anya na n'ọnọdụ dị otú ahụ ọ gaghị ekwe omume n'anụ ahụ iji hardcode niile adreesị IP.
Na mgbakwunye, mgbe otu ọrụ chọtara ọzọ, ọ ga-enwe ike izipu arịrịọ na ọrụ ahụ n'atụghị egwu na ha ga-ejedebe na ntinye nke ihe atụ ya agbajiri. N'ikwu ya n'ụzọ ọzọ, ntanetị ọrụ ahụ ga-enyocha ahụike nke oge ọrụ niile ma debe ndepụta nke ndị ọbịa ka ọ dị ọhụrụ dịka o kwere mee.
Mesh ọrụ ọ bụla na-eme usoro nchọpụta ọrụ n'ụzọ dị iche. N'oge a, ụzọ a na-ahụkarị bụ inyefe na usoro mpụga dị ka DNS Kubernetes. N'oge gara aga na Twitter anyị na-eji usoro aha maka nzube a . Na mgbakwunye, teknụzụ mesh ọrụ na-eme ka o kwe omume usoro ịkpọ aha aha (ọ bụ ezie na ahụbeghị m mmejuputa SM ọ bụla nwere ọrụ dị otú ahụ).
2. ezoro ezo
TL; DR: Wepụ okporo ụzọ ezoro ezo n'etiti ọrụ ma mee ka usoro a bụrụ nke akpaaka na scalable.
Ọ dị mma ịmara na ndị na-awakpo enweghị ike ịbanye na netwọk dị n'ime gị. Firewalls na-arụ ọrụ nke ọma na nke a. Ma gịnị na-eme ma ọ bụrụ na onye na-agba ọsọ abanye n'ime? Ọ ga-enwe ike iji okporo ụzọ intra-service mee ihe ọ bụla ọ chọrọ? Ka anyị nwee olileanya na nke a agaghị eme emechaa. Iji gbochie ọnọdụ a, ị ga-emejuputa netwọk ntụkwasị obi efu nke ezoro ezoro ụzọ niile n'etiti ọrụ. Ọtụtụ meshes ọrụ ọgbara ọhụrụ na-enweta nke a site na otu (TLS ibe ha, mTLS). N'ọnọdụ ụfọdụ, mTLS na-arụ ọrụ n'ígwé ojii na ụyọkọ dum (echere m na a ga-ahazi mkparịta ụka interplanetary otu ụbọchị).
N'ezie, maka mTLS ọrụ mesh nhọrọ. Ọrụ ọ bụla nwere ike ilekọta TLS nke ya, mana nke a pụtara na ị ga-achọ ụzọ ị ga-esi nweta asambodo, kesaa ha n'ofe ndị ọrụ ọrụ, tinye koodu na ngwa nke ga-ebunye asambodo ndị a na faịlụ. Ee, echefula imegharị asambodo ndị a n'oge oge niile. Meshes ọrụ na-arụ ọrụ mTLS nwere sistemu dị ka , nke, n'aka nke ya, na-akpaghị aka usoro nke ịnye na ntụgharị asambodo.
3. Nyocha na ikike
TL; DR: Mepụta onye na-arịọ arịrịọ ma kọwaa ihe enyere ha ohere ime tupu arịrịọ ahụ erutela ọrụ ahụ.
Ọrụ na-achọkarị ịma onye na-eme arịrịọ (nnwale), na iji ozi a, kpebie na a na-ahapụ ụlọ ọrụ nyere ikike ime (ikike). N'okwu a, nnọchiaha "onye" nwere ike zoo:
- Ọrụ ndị ọzọ. A na-akpọ nke a "athentication" ọgbọ" Dịka ọmụmaatụ, ọrụ
webchọrọ ịnweta ọrụ ahụdb. Meshes ọrụ na-edozi nsogbu ndị dị otú ahụ site na iji mTLS: asambodo na nke a na-eme dị ka njirimara dị mkpa. - Ụfọdụ ndị ọrụ mmadụ. A na-akpọ nke a "athentication" arịrịọ" Dịka ọmụmaatụ, onye ọrụ
haxor69chọrọ ịzụta oriọna ọhụrụ. Meshes ọrụ na-enye usoro dị iche iche, dịka ọmụmaatụ. .Ọtụtụ n'ime anyị emeela nke a na koodu ngwa. Arịrịọ na-abata, anyị na-ele anya na tebụl
users, chọta onye ọrụ wee tulee okwuntughe, wee lelee kọlụmpermissionswdg. N'ihe banyere ntupu ọrụ, nke a na-eme tupu arịrịọ ahụ erutela ọrụ ahụ.
Ozugbo anyị kwupụtachara onye arịrịọ ahụ si bịa, anyị kwesịrị ikpebi ihe ụlọ ọrụ a kwere ka o mee. Ụfọdụ meshes ọrụ na-enye gị ohere ịtọ usoro iwu ndị bụ isi (banyere onye nwere ike ime ihe) dị ka faịlụ YAML ma ọ bụ na ahịrị iwu, ebe ndị ọzọ na-enye ntinye aka na usoro dị ka. . Ebumnuche kachasị bụ ka ọrụ gị nabata arịrịọ ọ bụla, na-eche na ọ sitere na isi mmalite ntụkwasị obi и ekwere omume a.
4. Ibu itule
TL;DR: Kesaa ibu ahụ n'ofe oge ọrụ dịka otu ụkpụrụ siri dị.
"Ọrụ" n'ime ngalaba ọrụ na-enwekarị ọtụtụ ihe atụ. Dịka ọmụmaatụ, taa ọrụ cache nwere mbipụta 5, echi ọnụ ọgụgụ ha nwere ike ịbawanye ruo 11. Arịrịọ zitere cache, ga-ekesa dị ka otu nzube. Dịka ọmụmaatụ, wedata nkwụsịtụ ma ọ bụ bulie ohere nke ịbịarute ebe ọrụ. Algọridim a na-ejikarị eme ihe bụ Round-robin, mana enwere ọtụtụ ndị ọzọ - dịka ọmụmaatụ, usoro dị arọ (nke dị arọ) ajụjụ (ị nwere ike họrọ ebumnobi masịrị), mgbanaka (mgbanaka) hashing (na-eji hashing na-agbanwe agbanwe n'ofe ndị ọbịa elu) ma ọ bụ usoro arịrịọ kacha nta (a na-enye mmasị na ihe atụ na arịrịọ kacha nta).
Ndị na-edozi oge ochie nwere ọrụ ndị ọzọ, dị ka caching HTTP na nchedo DDoS, mana ha adịghị mkpa maka okporo ụzọ ọwụwa anyanwụ-ọdịda anyanwụ (ya bụ, maka okporo ụzọ na-asọba n'ime ebe data - ihe dị ka transl.) (ụdị ụdị ọrụ ntupu). N'ezie, ọ dịghị mkpa iji a ọrụ ntupu maka ibu itule, ma ọ na-enye gị ohere ịtọ na ịchịkwa itule atumatu maka onye ọ bụla ọrụ site a centralized akara oyi akwa, si otú na-ewepụ mkpa na-agba ọsọ na hazi iche ibu balancers na netwọk tojupụtara. .
5. Mgbasa sekit
TL;DR: Kwụsị okporo ụzọ gaa na ọrụ nsogbu ma jikwaa mmebi n'ọnọdụ ọnọdụ kacha njọ.
Ọ bụrụ na n'ihi ihe ụfọdụ, ọrụ ahụ enweghị ike ịnagide okporo ụzọ ahụ, ntanetị ọrụ na-enye ọtụtụ nhọrọ maka idozi nsogbu a (a ga-atụle ndị ọzọ na ngalaba kwesịrị ekwesị). Mgbaji sekit bụ nhọrọ kachasị njọ maka ịkwụsị ọrụ na okporo ụzọ. Otú ọ dị, site n'onwe ya, ọ bụghị ihe ezi uche dị na ya - a chọrọ atụmatụ ndabere. Enwere ike ịnye nrụgide azụ () na ọrụ ndị na-arịọ arịrịọ (echefukwala ịhazi ntupu ọrụ gị maka nke a!), Ma ọ bụ, dịka ọmụmaatụ, ịcha ibe ọkwa ọbara ọbara ma na-ebugharị ndị ọrụ gaa na ibe ọzọ nke nwere “falling whale” (“Twitter bụ ala").
Meshes ọrụ ọ bụghị naanị na-enye gị ohere ịkọwa mgbe nkwụsị ga-eso na na nke a ga-esochi. N'okwu a, "mgbe" nwere ike ịgụnye nchikota ọ bụla akọwapụtara: ọnụ ọgụgụ nke arịrịọ maka oge ụfọdụ, ọnụ ọgụgụ nke njikọ ndị yiri ya, arịrịọ na-echere, nyochaghachi ọrụ, wdg.
Eleghị anya ị chọghị imebi sekit mebiri emebi, mana ọ dị mma ịmara na ị nwere atụmatụ ndabere ma ọ bụrụ na ihe mberede mere.
6. Autoscaling
TL;DR: Mụbaa ma ọ bụ belata ọnụ ọgụgụ nke oge ọrụ dabere na njirisi akọwapụtara.
Meshes ọrụ abụghị ndị nhazi oge, yabụ na ha anaghị eme ya mepụta na-akpụzi onwe gị. Agbanyeghị, ha nwere ike ịnye ozi na ndị na-eme atụmatụ ga-adabere na mkpebi ha. Ebe ọ bụ na meshes ọrụ nwere ohere ịnweta okporo ụzọ niile n'etiti ọrụ, ha nwere ozi buru ibu banyere ihe na-eme: ndị ọrụ na-enwe nsogbu, nke ọrụ na-adị obere (ikike ekenyela ha na-efunahụ), wdg.
Dịka ọmụmaatụ, Kubernetes na-atụnye ọrụ dabere na CPU pods na ojiji ebe nchekwa (lee akụkọ anyị""- ihe dị ka. ntụgharị asụsụ.), ma ọ bụrụ na ị kpebie ịgbatị dabere na metric ọ bụla ọzọ (n'ọnọdụ anyị, okporo ụzọ metụtara), ị ga-achọ metric pụrụ iche. Nlekọta na-egosi otu esi eme nke a , и , ma usoro n'onwe ya bụ nnọọ mgbagwoju anya. Ọ ga-amasị anyị ka ntupu ọrụ ahụ mee ka nke a dị mfe site n'ikwe ka anyị dozie ọnọdụ dịka "ịba ụba nke oge ọrụ. auth, ma ọ bụrụ na ọnụ ọgụgụ nke arịrịọ na-echere gafere oke n'ime otu nkeji."
7. Canary deployments
TL;DR: Nwalee njirimara ọhụrụ ma ọ bụ ụdị ọrụ na mpaghara ndị ọrụ.
Ka anyị kwuo na ị na-emepụta ngwaahịa SaaS ma bu n'obi iwepụta ụdị ya ọhụrụ dị mma. Ị nwalere ya na nhazi ma rụọ ọrụ nke ukwuu. Ma a ka nwere ụfọdụ nchegbu banyere omume ya na ezigbo ọnọdụ. N'ikwu ya n'ụzọ ọzọ, ịkwesịrị ịnwale ụdị ọhụrụ ahụ na ezigbo nsogbu n'etinyeghị ntụkwasị obi onye ọrụ. Ntugharị Canary dị mma maka nke a. Ha na-enye gị ohere igosipụta njirimara ọhụrụ na mpaghara ndị ọrụ. Akụkụ a nwere ike ịgụnye ndị ọrụ kacha eguzosi ike n'ihe ma ọ bụ ndị na-arụ ọrụ na ụdị ngwaahịa a n'efu, ma ọ bụ ndị ọrụ gosipụtara ọchịchọ ịbụ "ezi pigs".
Meshes ọrụ mejuputa nke a site n'ikwe ka ị kọwapụta njirisi na-ekpebi onye ga-ahụ ụdị ngwa ahụ, yana na-ebugharị okporo ụzọ ya. Otú ọ dị, ọ dịghị ihe na-agbanwe maka ọrụ n'onwe ha. Ụdị 1.0 nke ọrụ ahụ kwenyere na arịrịọ niile sitere n'aka ndị ọrụ kwesịrị ịhụ ya, na ụdị 1.1 kwenyere na ndị ọrụ ya. Ka ọ dị ugbu a, ị nwere ike ịgbanwe pasent nke okporo ụzọ n'etiti nsụgharị ochie na nke ọhụrụ, na-emegharị ọnụ ọgụgụ na-arịwanye elu nke ndị ọrụ na nke ọhụrụ ma ọ bụrụ na ọ na-arụ ọrụ nke ọma na "ezi pigs" gị na-enye aka n'ihu.
8. Na-ebufe akwụkwọ ndụ akwụkwọ ndụ na-acha anụnụ anụnụ
TL; DR: Wepụta ihe ọhụrụ mara mma, mana dịrị njikere iweghachi ihe niile ozugbo.
Aha bụ iwepụta ọrụ "acha anụnụ anụnụ" ọhụrụ, na-amalite ya na nke ochie, "green". Ọ bụrụ na ihe niile na-aga nke ọma ma ọrụ ọhụrụ ahụ na-arụ ọrụ nke ọma, mgbe ahụ, nke ochie nwere ike iji nwayọọ nwayọọ nwee nkwarụ. (Ewoo, otu ụbọchị ọrụ ọhụrụ a "acha anụnụ anụnụ" ga-emeghachi akara nke "acha akwụkwọ ndụ akwụkwọ ndụ" ma na-apụ n'anya ...) Ntugharị na-acha anụnụ anụnụ na-acha anụnụ anụnụ dị iche na ndị canary n'ihi na ọrụ ọhụrụ ahụ na-ekpuchi. onye ọ bụla ozugbo ndị ọrụ (ọ bụghị akụkụ); Isi ihe ebe a bụ inwe “ọdụ ụgbọ mmiri dị mma” dị njikere ma ọ bụrụ na ihe adịghị mma.
Meshes ọrụ na-enye ụzọ dị mma iji nwalee ọrụ "acha anụnụ anụnụ" wee gbanwee ozugbo gaa na "acha akwụkwọ ndụ akwụkwọ ndụ" na-arụ ọrụ n'ọnọdụ nsogbu. Ọ bụghị ikwu eziokwu na n'ụzọ ha na-enye ọtụtụ ozi (lee "Telemetry" n'okpuru) banyere ọrụ nke "acha anụnụ anụnụ", nke na-enyere aka ịghọta ma ọ dị njikere maka ọrụ zuru ezu.
Rịba ama. ntụgharị asụsụ.: Ị nwere ike ịgụtakwu banyere usoro nhazi dị iche iche na Kubernetes (gụnyere canary a kpọtụrụ aha, blue/green na ndị ọzọ) na .
9. Nyocha ahụike
TL;DR: Debe ụdị ọrụ na-arụ ọrụ wee zaghachi ndị na-adịghịzi arụ ọrụ.
Nyocha ahụike (nlele ahụike) na-enyere aka ikpebi ma ọnọdụ ọrụ adịla njikere ịnakwere na hazie okporo ụzọ. Dịka ọmụmaatụ, n'ihe gbasara ọrụ HTTP, nlele ahụike nwere ike ịdị ka arịrịọ GET na njedebe njedebe /health... Azịza 200 OK ga-apụta na ihe atụ ahụ dị mma, ọ bụla ọzọ - na ọ dịghị njikere ịnata okporo ụzọ. Meshes ọrụ na-enye gị ohere ịkọwapụta ma ụzọ a ga-esi enyocha ọrụ yana ugboro ole a ga-eji nyocha a. Enwere ike iji ozi a mee ihe maka ebumnuche ndị ọzọ - dịka ọmụmaatụ, maka nhazi ibu na mgbaji sekit.
Ya mere, nyocha ahụike abụghị ihe eji eme ihe naanị, mana a na-ejikarị eme ihe iji nweta ihe mgbaru ọsọ ndị ọzọ. Ọzọkwa, dabere na nsonaazụ nyocha ahụike, omume dịpụrụ adịpụ na ebumnuche ntupu ọrụ ndị ọzọ nwere ike ịchọrọ: dịka ọmụmaatụ, imelite ibe ọkwa, ịmepụta okwu na GitHub, ma ọ bụ dejupụta tiketi JIRA. Na ntupu ọrụ na-enye usoro dị mma iji megharịa ihe a niile.
10. Ibu wụfuo
TL; DR: Redirect okporo ụzọ na nzaghachi maka mmụba nwa oge na ojiji.
Ọ bụrụ na ụfọdụ ọrụ juputara na okporo ụzọ, ị nwere ike ibugharị ụfọdụ n'ime okporo ụzọ a ruo nwa oge gaa ebe ọzọ (ya bụ, "tupu", "nfefe" (ụlọ) ya n'ebe). Dịka ọmụmaatụ, gaa na ọrụ ndabere ma ọ bụ ebe data, ma ọ bụ na-adịgide adịgide isiokwu. N'ihi ya, ọrụ ahụ ga-aga n'ihu na-edozi arịrịọ ụfọdụ kama ịdaba na ịkwụsị nhazi ihe niile. Ntufu ibu dị mma karịa imebi sekit ahụ, mana ọ kaghị mma iji mebie ya. Ọ na-enyere aka igbochi ọdịda cascading nke na-eme ka ọrụ mgbada daa.
11. Myirịta okporo ụzọ / mirroring
TL;DR: zipu otu arịrịọ n'ọtụtụ ebe n'otu oge.
Mgbe ụfọdụ enwere mkpa izipu arịrịọ (ma ọ bụ ụfọdụ nhọrọ nke arịrịọ) na ọtụtụ ọrụ ozugbo. Otu ihe atụ bụ izipu akụkụ nke okporo ụzọ mmepụta na ọrụ nhazi. Ihe nkesa weebụ na-emepụta isi na-eziga arịrịọ na ọrụ ala products.production na naanị ya. Na ntupu ọrụ na-eji amamihe detuo arịrịọ a wee ziga ya products.staging, nke sava weebụ na-amaghịdị.
Ọzọ metụtara ọrụ ntupu ojiji ikpe nwere ike emejuputa atumatu n'elu nke okporo ụzọ myirịta bụ . Ọ gụnyere izipu otu arịrịọ ahụ na ụdị ọrụ dị iche iche yana ịlele ma ụdịdị niile na-akpa otu. Ahụbeghị m mmejuputa ntupu ọrụ yana sistemụ nnwale regression agbakwunyere dị ka , ma echiche ahụ n'onwe ya yiri ka ọ na-ekwe nkwa.
12. mkpuchi
TL;DR: Kewaa ntupu ọrụ gị n'ime obere netwọkụ.
A makwaara dị ka nkewaKewapụrụ bụ nka nke ikewa ntupu ọrụ n'ime akụkụ ezi uche dị na ya na-amaghị ihe ọ bụla gbasara ibe ya. Kewapụ dị ka imepụta netwọkụ nkeonwe mebere. Isi ihe dị iche bụ na ị ka nwere ike nweta uru niile nke ntupu ọrụ (dị ka nchọpụta ọrụ), mana yana nchekwa agbakwunyere. Dịka ọmụmaatụ, ọ bụrụ na onye na-awakpo nwere ike ịbanye na ọrụ na otu subnet, ọ gaghị enwe ike ịhụ ọrụ na-arụ na subnets ndị ọzọ ma ọ bụ gbochie okporo ụzọ ha.
Na mgbakwunye, uru nwekwara ike ịbụ nhazi. Ị nwere ike ịchọrọ subnet ọrụ gị dabere na nhazi ụlọ ọrụ gị ma wepụ ndị mmepe nke ibu ọgụgụ isi nke iburu n'uche ntupu ọrụ niile.
13. Rịọ mmachi ọnụ ahịa, nnwale na nkwụsị oge
TL; DR: Ọ dịghịzi mkpa itinye ọrụ njikwa arịrịọ na codebase.
Enwere ike iwere ihe ndị a niile dị ka ikpe eji eme ihe dị iche, mana ekpebiri m ikpokọta ha n'ihi otu ihe a na-ahụkarị: ha na-eweghara arịrịọ njikwa ndụ okirikiri nke ụlọ ọba akwụkwọ ngwa na-ejikwa. Ọ bụrụ na ị na-emepe sava weebụ na Ruby on Rails (anaghị etinye ya na ntupu ọrụ) nke na-arịọ maka nkwado ndabere ọrụ site na. , ngwa ga-ekpebi ihe ị ga-eme ma ọ bụrụ na arịrịọ N ada ada. Ị ga-achọpụtakwa ego ole ọrụ ndị a ga-enwe ike ịhazi na hardcode ndị a site na iji ọbá akwụkwọ pụrụ iche. Na mgbakwunye, ngwa ahụ ga-ekpebi mgbe oge ga-agwụ ma hapụ arịrịọ ahụ ka ọ kwụsị (dabere na oge nkwụsị). Na iji gbanwee nke ọ bụla n'ime paramita ndị a dị n'elu, a ga-akwụsịrịrị sava weebụ, gbanwee ma malite ọzọ.
Ibufe ọrụ ndị a na ntupu ọrụ abụghị naanị na ndị nrụpụta ọrụ agaghị eche maka ha, kamakwa na enwere ike ile ha anya n'ụzọ zuru ụwa ọnụ. Ọ bụrụ na ejiri usoro ọrụ mgbagwoju anya, kwuo A -> B -> C -> D -> E, a ga-eburu n'uche usoro ndụ niile nke arịrịọ ahụ. Ọ bụrụ na ọrụ ahụ bụ ịgbatị oge na ọrụ C, ọ bụ ihe ezi uche dị na ya ime nke a niile n'otu oge, ọ bụghị na akụkụ: site na imelite koodu ọrụ ma chere ruo mgbe a nabatara arịrịọ ịdọrọ na usoro CI na-ebuga ọrụ emelitere.
14. Telemetry
TL; DR: Anakọta ozi niile dị mkpa (ma ọ bụghị nke ọma) sitere na ọrụ.
Telemetry bụ okwu izugbe na-agụnye metrik, nchụso ekesa, na ndekọ. Meshes ọrụ na-enye usoro maka ịnakọta na nhazi ụdị data atọ niile. Nke a bụ ebe ihe na-adị ntakịrị n'ihi na ọnụọgụ nhọrọ enwere ike buru oke ibu. Iji nakọta metrik enwere na ngwaọrụ ndị ọzọ enwere ike iji nakọta osisi , , na ndị ọzọ. (dịka ọmụmaatụ ClickHouse na anyị maka K8s - ihe dị ka. ntụgharị asụsụ.), n'ihi na-ekesa tracing e nwere were gabazie. Mesh ọrụ ọ bụla nwere ike ịkwado ụfọdụ ngwaọrụ ọ bụghị ndị ọzọ. Ọ ga-adọrọ mmasị ịhụ ma ọrụ ahụ nwere ike nye ụfọdụ convergence.
N'okwu a, uru nke teknụzụ mesh ọrụ bụ na arịa ndị dị n'akụkụ nwere ike, n'ụkpụrụ, ịnakọta data niile dị n'elu na ọrụ ha. N'ikwu ya n'ụzọ ọzọ, ị nwere otu usoro nchịkọta telemetry dị n'aka gị, na ntanetị ọrụ nwere ike hazie ozi a niile n'ụzọ dị iche iche. Ọmụmaatụ:
- ndekọ ọdụ site na ụfọdụ ọrụ na CLI;
- nyochaa olu nke arịrịọ sitere na dashboard mesh ọrụ;
- na-anakọta akara ndị kesara wee zipu ha na sistemụ dịka Jaeger.
Nlebara anya, mkpebi nke onwe: N'ikwu okwu n'ozuzu, telemetry bụ mpaghara nke nnyonye anya siri ike sitere na ntanetị ọrụ adịghị mma. Ịnakọta ozi bụ isi na nsochi na-na-efe efe ụfọdụ ọla edo metrics dị ka ịrịọ ihe ịga nke ọma ọnụego na latency dị mma, ma ka anyị na-atụ anya na anyị adịghị ahụ Frankenstein stacks pụta na-agbalị iji dochie pụrụ iche usoro, ụfọdụ n'ime ndị egosila na ha onwe ha ma mụọ nke ọma. .
15. Nyocha
TL; DR: Ndị na-echefu nkuzi nke akụkọ ihe mere eme ga-emeghachi ha.
Nyocha bụ nka nke ilele ihe omume dị mkpa na sistemụ. N'ihe gbasara ntupu ọrụ, nke a nwere ike ịpụta nsochi onye rịọrọ arịrịọ na njedebe njedebe maka ọrụ akọwapụtara, ma ọ bụ ugboro ole ihe omume metụtara nchekwa mere n'ọnwa gara aga.
O doro anya na nyocha na telemetry nwere njikọ chiri anya. Ihe dị iche bụ na telemetry na-ejikọkarị ya na ihe ndị dị ka nrụpụta na arụmọrụ teknụzụ, ebe nyocha nwere ike metụtara iwu na okwu ndị ọzọ gafere usoro teknụzụ siri ike (dịka ọmụmaatụ, nnabata na GDPR - EU General Regulation on data Protection).
16. Nhụchalụ
TL; DR: Long live React.js - isi iyi na-enweghị njedebe nke ọmarịcha ihu.
Enwere ike inwe okwu ka mma, mana amaghị m ya. Naanị m pụtara ihe onyonyo eserese nke ntupu ọrụ ma ọ bụ ụfọdụ ihe mejupụtara ya. Ọhụụ ndị a nwere ike ịgụnye ihe nrịbama dị ka nkezi latencies, ozi nhazi akụkụ ụgbọ ala, nsonaazụ nlele ahụike, na ọkwa.
Ịrụ ọrụ na gburugburu ebe ọrụ na-agụnye ibu ọgụgụ isi dị elu ma e jiri ya tụnyere Onye nwe ya Monolith. Ya mere, nrụgide uche kwesịrị ibelata na ụgwọ niile. Oghere eserese dị mfe maka ntupu ọrụ nwere ikike ịpị bọtịnụ wee nweta nsonaazụ achọrọ nwere ike bụrụ mkpebi maka uto nke teknụzụ a.
Agụnyeghị na listi ahụ
Ebum n’obi na mbụ itinye okwu ole na ole ọzọ na ndepụta ahụ, mana ekpeziri m na agaghị m eme ya. Nke a bụ, yana ihe kpatara mkpebi m:
- Multi-data center. N'uche nke m, nke a abụghị ihe eji eme ihe dị ka mpaghara dị warara na nke akọwapụtara nke ngwa meshes ọrụ ma ọ bụ ụfọdụ ọrụ dị ka nchọpụta ọrụ.
- Ingress na egress. Nke a bụ mpaghara metụtara ya, mana ejedebe m onwe m (ikekwe n'ụdị artificial) na ikpe ojiji "osimiri ọwụwa anyanwụ-ọdịda anyanwụ". Ingress na egress kwesịrị inwe edemede dị iche.
nkwubi
Nke ahụ bụ naanị ugbu a! Ọzọ, ndepụta a bụ nke aka ike na o yikarịrị ka ezughị ezu. Ọ bụrụ na ị chere na agbagharala m ihe ma ọ bụ nwee ihe na-ezighi ezi, biko kpọtụrụ m na Twitter (). Biko sọpụrụ iwu nke ịdị mma.
PS sitere na onye ntụgharị
Ihe atụ isiokwu maka akụkọ ahụ dabere na onyonyo sitere na isiokwu ahụ “"(nke Gregory MacKinnon) Ọ na-egosi ka ụfọdụ ọrụ sitere na ngwa (na akwụkwọ ndụ akwụkwọ ndụ) siri gaa na ntupu ọrụ na-enye njikọ dị n'etiti ha (na-acha anụnụ anụnụ).
Gụọkwa na blọọgụ anyị:
- «»;
- «»;
- «".
isi: www.habr.com
