Ebe nchekwa data dị na Kubernetes?

Ebe nchekwa data dị na Kubernetes?

N'ụzọ ụfọdụ, n'akụkọ ihe mere eme, a na-ekewa ụlọ ọrụ IT na ogige abụọ maka ihe ọ bụla kpatara ya: ndị "maka" na ndị "na-emegide". Ọzọkwa, isiokwu nke esemokwu nwere ike ịbụ nke aka ike kpamkpam. Kedu OS ka mma: Win ma ọ bụ Linux? Na gam akporo ma ọ bụ iOS smartphone? Ị ga-echekwa ihe niile n'ígwé ojii ma ọ bụ bulite ya na nchekwa RAID oyi ma tinye skru na nchekwa? Ndị PHP nwere ikike ịkpọ programmer? Esemokwu ndị a na-adị, mgbe ụfọdụ, ọ bụ naanị ihe dị adị na okike na enweghị ihe ndabere ọ bụla karịa mmasị egwuregwu.

Ọ dị nnọọ mere na ọbịbịa nke arịa na nri ndị a niile hụrụ n'anya na docker na k8s, arụmụka "maka" na "megide" ojiji nke ikike ọhụrụ na mpaghara dị iche iche nke backend malitere. (Ka anyị mee ndoputa tupu oge eruo na ọ bụ ezie na Kubernetes ga-egosipụtakarị dị ka onye na-agụ egwú na mkparịta ụka a, nhọrọ nke ngwá ọrụ a abụghị ihe dị mkpa. Kama nke ahụ, ị ​​​​nwere ike dochie nke ọ bụla ọzọ nke yiri ka ọ kacha adaba na maara gị nke ọma. .)

Ma, ọ ga-adị ka nke a ga-abụ esemokwu dị mfe n'etiti akụkụ abụọ nke otu mkpụrụ ego. Dị ka enweghị isi na enweghị obi ebere dị ka esemokwu ebighi ebi n'etiti Win vs Linux, nke ndị mmadụ zuru oke dị ebe dị n'etiti. Ma n'ihe banyere containerization, ọ bụghị ihe niile dị mfe. Ọtụtụ mgbe na esemokwu ndị dị otú ahụ enweghị akụkụ ziri ezi, ma n'ihe banyere "iji" ma ọ bụ "ejighị" igbe maka ịchekwa ọdụ data, ihe niile na-atụgharị ihu. N'ihi na n'echiche ụfọdụ, ma ndị na-akwado ma ndị na-emegide ụzọ a ziri ezi.

Akụkụ dị Mma

Enwere ike ịkọwa arụmụka nke Light Side na nkenke n'otu ahịrịokwu: "Ndewo, 2k19 dị n'èzí windo!" Ọ dị ka populism, n'ezie, ma ọ bụrụ na ị banye n'ime ọnọdụ ahụ n'ụzọ zuru ezu, ọ nwere uru ya. Ka anyị dozie ha ugbu a.

Ka anyị kwuo na ị nwere nnukwu ọrụ webụ. Enwere ike wuo ya na mbido site na usoro microservice, ma ọ bụ n'oge ụfọdụ ọ bịarutere ya site n'ụzọ evolushọn - nke a adịghị ezigbo mkpa, n'ezie. Ị chụsasịa ọrụ anyị n'ime ọrụ microservice dị iche iche, guzobe nhazi, nhazi ibu na nhazi. Ma ugbu a, site na akọnuche dị ọcha, ị na-aṅụ mojito na hammock n'oge mmetụta habra kama ịkwalite sava dara ada. Mana n'omume niile, ị ga-abụrịrị otu. Ọtụtụ mgbe, ọ bụ naanị ngwa n'onwe ya — koodu — ka etinyere ya. Kedu ihe ọzọ anyị nwere ma e wezụga koodu?

Nke ahụ ziri ezi, data. Obi nke oru ngo ọ bụla bụ data ya: nke a nwere ike ịbụ DBMS na-ahụkarị - MySQL, Postgre, MongoDB, ma ọ bụ nchekwa a na-eji maka ọchụchọ (ElasticSearch), nchekwa uru isi maka caching - dịka ọmụmaatụ, redis, wdg Ugbu a anyị abụghị anyị ga-ekwu maka gbagọrọ agbagọ backend mmejuputa iwu nhọrọ mgbe nchekwa data mkpọka n'ihi emezighị ede ajụjụ, na kama anyị ga-ekwu maka huu mmejọ ndidi nke a nnọọ nchekwa data n'okpuru ahịa ibu. E kwuwerị, mgbe anyị na-etinye ngwa anyị ma kwe ka ọ nwee ike ịhazi ọnụ ọgụgụ ọ bụla nke arịrịọ na-abata, nke a na-abawanye ibu na nchekwa data.

N'ezie, ọwa maka ịnweta nchekwa data na ihe nkesa na-agba ọsọ na-aghọ anya nke agịga na anyị mara mma containerized backend. N'otu oge ahụ, isi ebumnobi nke akpa virtualization bụ agagharị na mgbanwe nke Ọdịdị, nke na-enye ohere ka anyị hazie nkesa nke elu ibu gafee dum akụrụngwa dị anyị dị ka nke ọma dị ka o kwere mee. Ya bụ, ọ bụrụ na anyị anaghị echekwa ma tụgharịa ihe niile dị na sistemụ n'ofe ụyọkọ ahụ, anyị na-emehie nnukwu ihe.

Ọ bụ ihe ezi uche dị na ya ịchịkọta ọ bụghị naanị ngwa n'onwe ya, kamakwa ọrụ ndị na-ahụ maka ịchekwa data. Site n'ịchịkọta na ịkwanye sava weebụ na-arụ ọrụ onwe ha ma kesaa ibu n'etiti onwe ha na k8s, anyị na-edozi nsogbu nke mmekọrịta data - otu ihe ahụ na-ekwu na posts, ma ọ bụrụ na anyị na-ewere ụfọdụ mgbasa ozi ma ọ bụ blog ikpo okwu dị ka ihe atụ. N'ọnọdụ ọ bụla, anyị nwere intra-ụyọkọ, ọbụna mebere, nnochite anya nke nchekwa data dị ka Ọrụ Mpụga. Ajụjụ a bụ na nchekwa data n'onwe ya achịkọtabeghị - sava weebụ etinyere na cube na-enweta ozi gbasara mgbanwe site na nchekwa data ọgụ anyị static, nke na-atụgharị iche.

Ị na-ahụ nwude? Anyị na-eji k8s ma ọ bụ Swarm na-ekesa ibu ma zere ịdaba sava weebụ bụ isi, mana anyị anaghị eme nke a maka nchekwa data. Mana ọ bụrụ na nchekwa data daa, mgbe ahụ akụrụngwa anyị niile agbakọtara enweghị isi - kedu ihe dị mma ibe weebụ efu na-eweghachi njehie nweta nchekwa data?

Ọ bụ ya mere ọ dị mkpa ka ịchịkọta ọ bụghị naanị sava weebụ, dị ka a na-emekarị, kamakwa akụrụngwa nchekwa data. Naanị n'ụzọ dị otú a, anyị nwere ike hụ na nhazi nke na-arụ ọrụ zuru oke n'otu ìgwè, ma n'otu oge ahụ na-adabere na ibe ya. Ọzọkwa, ọbụlagodi ma ọ bụrụ na ọkara nke azụ azụ anyị "dara" n'okpuru ibu, ndị ọzọ ga-adị ndụ, yana usoro ịmekọrịta ọdụ data na ibe ha n'ime ụyọkọ na ikike nke enweghị njedebe na ibuga ụyọkọ ọhụrụ ga-enyere aka ngwa ngwa iru ikike achọrọ - Ọ bụrụ naanị na enwere racks na ebe data.

Na mgbakwunye, ụdị nchekwa data ekesara na ụyọkọ na-enye gị ohere iburu nchekwa data a n'ebe achọrọ ya; Ọ bụrụ na anyị na-ekwu maka ọrụ zuru ụwa ọnụ, mgbe ahụ ọ bụ ihe ezi uche na-adịghị na ya ịgbanye ụyọkọ weebụ ebe dị na mpaghara San Francisco ma n'otu oge ahụ zipu ngwugwu mgbe ị na-abanye na nchekwa data na mpaghara Moscow na azụ.

Ọzọkwa, containerization nke nchekwa data na-enye gị ohere iwu ihe niile nke usoro na otu larịị nke abstraction. Nke, n'aka nke ya, na-eme ka o kwe omume ijikwa usoro a ozugbo site na koodu, site na ndị mmepe, na-enweghị itinye aka na-arụ ọrụ nke ndị nchịkwa. Ndị mmepe chere na achọrọ DBMS dị iche maka ngalaba ọhụrụ - dị mfe! dere faịlụ yaml, bulite ya na ụyọkọ ahụ wee mechaa.

Ma n'ezie, ime ime na-adị mfe nke ukwuu. Gwa m, ugboro ole ka i mechiri anya gị mgbe onye otu ọhụrụ tinye aka ya na nchekwa data ọgụ maka ọrụ? Kedu nke, n'ezie, bụ naanị otu ị nwere ma na-agbagharị ugbu a? N'ezie, anyị niile bụ ndị okenye ebe a, na ebe anyị nwere nkwado ndabere na mpaghara ọhụrụ, na ọbụna n'ihu - n'azụ shelf na cucumbers nne nne na ochie skis - ọzọ ndabere, ikekwe ọbụna na oyi nchekwa, n'ihi na ụlọ ọrụ gị na-ama na ọkụ otu ugboro. Mana otu ihe ahụ, mmeghe ọ bụla nke onye otu ọhụrụ nwere ohere ịnweta akụrụngwa ọgụ na, n'ezie, na nchekwa data ọgụ bụ bọket nke validol maka onye ọ bụla nọ gburugburu. Ọfọn, onye maara ya, onye ọhụrụ, ma eleghị anya ọ na-agafe agafe? Ọ dị egwu, ị ga-ekwenye.

Njikere na, n'ezie, topology ekesa nke nchekwa data nke ọrụ gị na-enyere aka ịzenarị oge nkwado dị otú ahụ. Atụkwasịla obi onye ọhụrụ? Ọ DỊ MMA! Ka anyị nye ya ụyọkọ nke ya ka ya na ya rụọ ọrụ wee kwụsịtụ nchekwa data na ụyọkọ ndị ọzọ - mmekọrịta naanị site na ntinye akwụkwọ ntuziaka na ntụgharị synchronous nke igodo abụọ (otu maka ndị isi otu, nke ọzọ maka onye nchịkwa). Obi na-adịkwa onye ọ bụla ụtọ.

Ma ugbu a ọ bụ oge ịgbanwe n'ime ndị mmegide nke nchịkọta nchekwa data.

Akụkụ gbara ọchịchịrị

N'ịrụrịta ụka ihe kpatara na ọ baghị uru ịchekwa nchekwa data ahụ wee nọgide na-agba ya na otu ihe nkesa etiti, anyị agaghị adabere na nkwupụta nke okpukperechi na nkwupụta dịka "ndị nna ochie na-agba ọsọ ọdụ data na ngwaike, anyị ga-eme!" Kama, ka anyị na-agbalị na-abịa na ọnọdụ nke containerization ga-akwụ n'ezie dividends.

Nkwenye, ọrụ ndị chọrọ ntọala n'ezie n'ime akpa nwere ike ịgụta na mkpịsị aka nke otu aka site na ọ bụghị onye ọrụ igwe igwe kacha mma. Maka ọtụtụ akụkụ, ọbụlagodi iji k8s ma ọ bụ Docker Swarm bụ ihe a na-ejikarị eme ihe - ọtụtụ mgbe a na-eji ngwá ọrụ ndị a eme ihe n'ihi mgbasawanye nke teknụzụ na àgwà nke "Onye Pụrụ Ime Ihe Nile" n'ime ndị nwoke na nwanyị ịkwanye ihe niile n'ime. ígwé ojii na arịa. Ọfọn, n'ihi na ugbu a ọ bụ fashionable na onye ọ bụla na-eme ya.

N'ime opekata mpe ọkara nke ikpe ahụ, iji Kubernetis ma ọ bụ naanị Docker na ọrụ anaghị arụ ọrụ. Ihe bụ isi bụ na ọ bụghị ndị otu niile ma ọ bụ ụlọ ọrụ mgbasa ozi na-akwụ ụgwọ iji nọgide na-ahụ maka akụrụngwa nke ndị ahịa maara nke a. Ọ na-akawanye njọ mgbe a na-amanye arịa, n'ihi na ọ na-efu ụfọdụ mkpụrụ ego nye onye ahịa.

N'ozuzu, enwere echiche na docker/cube mafia na-eji nzuzu na-etipịa ndị ahịa na-ewepụta ihe ndị a na-ahụ maka akụrụngwa. A sị ka e kwuwe, iji na-arụ ọrụ na ụyọkọ, anyị chọrọ ndị injinia nwere ike nke a ma na-aghọtakarị ụkpụrụ ụlọ nke ngwọta emejuputara. Anyị na-akọwaworị ikpe anyị na mbipụta Republic - n'ebe ahụ, anyị zụrụ otu ndị ahịa ka ha rụọ ọrụ na eziokwu nke Kubernetis, onye ọ bụla nwere afọ ojuju. Ọ dịkwa mma. Ọtụtụ mgbe, k8s "ndị mmejuputa iwu" na-ejide akụrụngwa nke onye ahịa - n'ihi na ugbu a ọ bụ naanị ha ghọtara otú ihe niile si arụ ọrụ n'ebe ahụ, ọ dịghị ndị ọkachamara n'akụkụ onye ahịa.

Ugbu a, were ya na n'ụzọ dị otú a, anyị na-ewepụta ọ bụghị naanị akụkụ nke sava weebụ, kamakwa nchekwa nchekwa data. Anyị kwuru na BD bụ obi, na mfu nke obi na-egbu egbu maka ihe ọ bụla dị ndụ. Na nkenke, atụmanya abụghị nke kacha mma. Yabụ, kama ịgba egwu Kubernetis, ọtụtụ ọrụ ekwesịghị inye nsogbu na tarifu nkịtị maka AWS, nke ga-edozi nsogbu niile na ibu dị na saịtị / ọrụ ha. Mana AWS abụghịzi ejiji, ihe ngosi na-abakwa uru karịa ego - ọ dị nwute, na gburugburu IT kwa.

Ọ DỊ MMA. Ikekwe ọrụ ahụ chọrọ n'ezie nchịkọta, ma ọ bụrụ na ihe niile doro anya na ngwa ndị na-enweghị obodo, kedu ka anyị ga-esi hazie njikọ netwọkụ dị mma maka nchekwa data agbakọtara?

Ọ bụrụ na anyị na-ekwu maka ngwọta injinia na-enweghị nkebi, nke bụ ihe ntụgharị na k8s, mgbe ahụ isi ọwụwa anyị bụ mmegharị data na nchekwa data agbakọtara. Ụfọdụ DBMS na-eguzosi ike n'ihe na mbụ maka nkesa data n'etiti oge ha n'otu n'otu. Ọtụtụ ndị ọzọ anaghị anabata nke ọma. Ọtụtụ mgbe, arụmụka bụ isi na ịhọrọ DBMS maka ọrụ anyị abụghị ikike iji obere akụrụngwa na ọnụ ahịa injinia megharịa. Karịsịa ma ọ bụrụ na emeghị atụmatụ na mbụ dị ka microservice, kama ọ malitere na ntụziaka a.

Anyị na-eche na ọ dịghị mkpa ikwu banyere ọsọ nke netwọk draịva - ha na-eji nwayọọ. Ndị ahụ. Anyị ka na-enweghị ezigbo ohere, ọ bụrụ na ihe emee, ịmalitegharịa ihe atụ DBMS ebe enwere ihe ndị ọzọ, dịka ọmụmaatụ, ike nhazi ma ọ bụ RAM efu. Anyị ga-agbaba ngwa ngwa na arụmọrụ nke sistemu diski virtualized. N'ihi nke a, a ga-akpọgide DBMS n'otu igwe nke ya dị nso. Ma ọ bụ ọ dị mkpa ka ajụọ oyi nke ọma maka mmekọrịta data nke ọma maka ihe echekwara.

Na-aga n'ihu na isiokwu nke sistemụ faịlụ mebere: Docker Volume, ọ dị nwute, enweghị nsogbu. N'ozuzu, n'okwu dị otú ahụ dị ka nchekwa data a pụrụ ịdabere na ya ogologo oge, ọ ga-amasị m iji atụmatụ kachasị mfe nke teknụzụ mee. Na ịgbakwunye oyi akwa abstraction ọhụrụ sitere na FS nke akpa na FS nke nne na nna nnabata bụ ihe egwu n'onwe ya. Ma mgbe ọrụ nke sistemu nkwado nke igbe na-ezutekwa ihe isi ike na ịnyefe data n'etiti ọkwa ndị a, mgbe ahụ ọ bụ n'ezie ọdachi. N'oge a, ọtụtụ n'ime nsogbu ndị mmadụ na-aga n'ihu maara dị ka ekpochapụla. Ma ị ghọtara, ka usoro ahụ siri sie ike karị, ọ na-adị mfe ịgbaji.

N'ihi na ndị a niile "njempụ", ọ bụ ọtụtụ ihe ọzọ uru na mfe na-na nchekwa data na otu ebe, na ọbụna ma ọ bụrụ na ị chọrọ containerize ngwa, ka ọ na-agba ọsọ na ya onwe ya na site na nkesa ọnụ ụzọ ámá enweta n'out oge nkwurịta okwu na nchekwa data, nke a ga-agụ ma dee naanị otu ugboro na n'otu ebe. Ụzọ a na-ebelata ohere nke ihie ụzọ na desynchronization na opekempe.

Kedu ihe anyị na-eduga? Ọzọkwa, nchekwa data containerization kwesịrị ekwesị ebe e nwere ezigbo mkpa maka ya. Ị nweghị ike ịkwanye nchekwa data ngwa zuru ezu wee tụgharịa ya ka a ga-asị na ị nwere microservices iri na abụọ - ọ naghị arụ ọrụ otu ahụ. A ghaghị ịghọta nke a nke ọma.

Kama mmepụta

Ọ bụrụ na ị na-eche nkwubi okwu doro anya "iji mebie nchekwa data ma ọ bụ na ọ bụghị," mgbe ahụ anyị ga-emechu gị ihu: ọ gaghị adị ebe a. N'ihi na mgbe ị na-emepụta ihe ngwọta akụrụngwa ọ bụla, a ghaghị iduzi onye ọ bụghị site na ejiji na ọganihu, ma, nke mbụ, site na ọgụgụ isi.

Enwere oru ngo nke ụkpụrụ na ngwaọrụ ndị na-abịa na Kubernetis dabara nke ọma, na ọrụ ndị dị otú ahụ enwere udo ma ọ dịkarịa ala na mpaghara azụ azụ. Na e nwere oru na-adịghị mkpa containerization, ma a nkịtị ihe nkesa akụrụngwa, n'ihi na ha fundamentally ike rescale ka microservice ụyọkọ nlereanya, n'ihi na ha ga-ada.

isi: www.habr.com

Tinye a comment