A bheil stòran-dàta a’ fuireach ann an Kubernetes?

A bheil stòran-dàta a’ fuireach ann an Kubernetes?

Ann an dòigh air choreigin, gu h-eachdraidheil, tha an gnìomhachas IT air a roinn ann an dà champa chumha airson adhbhar sam bith: an fheadhainn a tha “airson” agus an fheadhainn a tha “an aghaidh”. A bharrachd air an sin, faodaidh cuspair connspaidean a bhith gu tur neo-riaghailteach. Dè an OS a tha nas fheàrr: Win no Linux? Air fòn cliste Android no iOS? Am bu chòir dhut a h-uile càil a stòradh anns na sgòthan no a chuir air stòradh RAID fuar agus na sgriothan a chuir ann an sàbhailte? A bheil còir aig daoine PHP a bhith air an ainmeachadh mar phrògramadairean? Tha na connspaidean sin, aig amannan, dìreach deatamach ann an nàdar agus chan eil bunait aca ach ùidh ann an spòrs.

Tha e dìreach mar sin a thachair, nuair a thàinig soithichean agus a h-uile biadh gaolach seo le docker agus k8s gun chumhachan, thòisich na deasbadan “airson” agus “an-aghaidh” cleachdadh comasan ùra ann an diofar raointean den deireadh-sheachdain. (Nì sinn glèidheadh ​​​​ro làimh ged a bhios Kubernetes mar as trice air a chomharrachadh mar orcastra anns an deasbad seo, chan eil roghainn an inneil shònraichte seo fìor chudromach. An àite sin, faodaidh tu fear sam bith eile a tha nas freagarraiche agus as eòlaiche dhut a chuir na àite. .)

Agus, tha e coltach, bhiodh seo na chonnspaid shìmplidh eadar dà thaobh den aon bhuinn. Cho gun chiall agus gun tròcair ris a’ chòmhstri shìorraidh eadar Win vs Linux, anns a bheil daoine gu leòr ann am badeigin sa mheadhan. Ach a thaobh containerization, chan eil a h-uile dad cho sìmplidh. Mar as trice ann an connspaidean mar sin chan eil taobh cheart ann, ach a thaobh soithichean “cleachd” no “na cleachd” airson stòran-dàta a stòradh, bidh a h-uile dad a ’tionndadh bun os cionn. Air sgàth ann an dòigh shònraichte, tha an dà chuid luchd-taic agus luchd-dùbhlain an dòigh-obrach seo ceart.

Taobh soilleir

Faodar argamaid an Light Side a mhìneachadh gu h-aithghearr ann an aon abairt: “Hello, tha 2k19 taobh a-muigh na h-uinneige!” Tha e coltach ri populism, gu dearbh, ach ma nì thu sgrùdadh mionaideach air an t-suidheachadh, tha na buannachdan aige. Feuch an rèitich sinn iad a-nis.

Canaidh sinn gu bheil pròiseact lìn mòr agad. Dh'fhaodadh e bhith air a thogail an toiseach air bunait dòigh-obrach microservice, no aig àm air choreigin thàinig e thuige tro shlighe mean-fhàs - chan eil seo glè chudromach, gu dearbh. Sgap thu ar pròiseact gu meanbh-sheirbheisean fa leth, stèidhich thu orchestration, cothromachadh luchdan, agus sgèileadh. Agus a-nis, le cogais shoilleir, bidh thu a ’sùghadh mojito ann an hamag aig àm buaidhean habra an àite a bhith a’ togail luchd-frithealaidh a tha air tuiteam. Ach anns a h-uile gnìomh feumaidh tu a bhith cunbhalach. Glè thric, chan eil ach an tagradh fhèin - an còd - air a stòradh. Dè eile a th’ againn a bharrachd air còd?

Tha sin ceart, dàta. Is e cridhe pròiseact sam bith an dàta aige: faodaidh seo a bhith na DBMS àbhaisteach - MySQL, Postgre, MongoDB, no stòradh air a chleachdadh airson sgrùdadh (ElasticSearch), stòradh prìomh luach airson tasgadh - mar eisimpleir, redis, msaa. bruidhnidh sinn mu roghainnean buileachaidh backend cam nuair a thuiteas an stòr-dàta mar thoradh air ceistean air an sgrìobhadh gu dona, agus an àite sin bruidhnidh sinn mu bhith a’ dèanamh cinnteach à fulangas lochdan an dearbh stòr-dàta seo fo luchd teachdaiche. Às deidh na h-uile, nuair a chuireas sinn an tagradh againn a-steach agus a leigeas leinn sgèile gu saor gus àireamh sam bith de dh’ iarrtasan a thig a-steach a phròiseasadh, bidh seo gu nàdarrach a’ meudachadh an luchd air an stòr-dàta.

Gu dearbh, bidh an sianal airson faighinn chun stòr-dàta agus an t-seirbheisiche air a bheil e a’ ruith gu bhith na shùil na snàthad anns an backend àlainn againn le soithichean. Aig an aon àm, is e am prìomh adhbhar airson virtualization container gluasad agus sùbailteachd an structair, a leigeas leinn cuairteachadh luchdan as àirde a chuir air dòigh thar a’ bhun-structair gu lèir a tha ri fhaighinn dhuinn cho èifeachdach sa ghabhas. Is e sin, mura bi sinn a’ còmhdach agus a’ sgaoileadh a h-uile eileamaid den t-siostam a th’ ann mar-thà thairis air a’ bhuidheann, tha sinn a’ dèanamh fìor mhearachd.

Tha e tòrr nas reusanta a bhith a’ cruinneachadh chan e a-mhàin an tagradh fhèin, ach cuideachd na seirbheisean le uallach airson dàta a stòradh. Le bhith a’ cruinneachadh agus a’ cleachdadh frithealaichean lìn a bhios ag obair gu neo-eisimeileach agus a’ sgaoileadh an luchd am measg iad fhèin ann an k8n, tha sinn mu thràth a’ fuasgladh duilgheadas sioncronaidh dàta - na h-aon bheachdan air puist, ma ghabhas sinn cuid de mheadhanan no àrd-ùrlar bloga mar eisimpleir. Co-dhiù, tha riochdachadh taobh a-staigh buidheann againn, eadhon brìgheil, den stòr-dàta mar Sheirbheis Taobh a-muigh. Is e a’ cheist nach eil an stòr-dàta fhèin air a chruinneachadh fhathast - bidh na frithealaichean lìn a tha air an cleachdadh sa chiùb a’ gabhail fiosrachadh mu atharrachaidhean bhon stòr-dàta sabaid statach againn, a bhios a’ tionndadh air leth.

A bheil thu a’ mothachadh grèim? Bidh sinn a’ cleachdadh k8s no Swarm airson an luchd a sgaoileadh agus gus nach tuit sinn am prìomh fhrithealaiche lìn, ach cha bhith sinn a’ dèanamh seo airson an stòr-dàta. Ach ma thuiteas an stòr-dàta, chan eil am bun-structar cruinn againn gu lèir a’ dèanamh ciall sam bith - dè am math a th’ ann an duilleagan lìn falamh a thilleas mearachd ruigsinneachd stòr-dàta?

Sin as coireach gu bheil e riatanach a bhith a’ cruinneachadh chan e a-mhàin frithealaichean lìn, mar a thèid a dhèanamh mar as trice, ach cuideachd bun-structar an stòr-dàta. Is ann dìreach san dòigh seo as urrainn dhuinn dèanamh cinnteach à structar a bhios ag obair gu h-iomlan ann an aon sgioba, ach aig an aon àm neo-eisimeileach bho chèile. A bharrachd air an sin, eadhon ged a thuiteas leth den “backend” againn fo luchd, mairidh an còrr, agus cuidichidh an siostam airson na stòran-dàta a shioncronachadh le chèile taobh a-staigh a’ bhuidheann agus an comas cruinneachaidhean ùra a sgèileadh agus a chleachdadh gu sgiobalta gus an comas riatanach a ruighinn - mura robh ach racaichean anns an ionad dàta.

A bharrachd air an sin, leigidh modal an stòr-dàta a tha air a sgaoileadh ann an cruinneachaidhean leat an dearbh stòr-dàta seo a thoirt gu far a bheil feum air; Ma tha sinn a’ bruidhinn mu dheidhinn seirbheis chruinneil, tha e gu math neo-àbhaisteach cruinneachadh lìn a shnìomh an àiteigin ann an sgìre San Francisco agus aig an aon àm pacaidean a chuir nuair a gheibh thu cothrom air stòr-dàta ann an sgìre Moscow agus air ais.

Cuideachd, tha containerization den stòr-dàta a’ toirt cothrom dhut a h-uile eileamaid den t-siostam a thogail aig an aon ìre tarraing às. A tha, an uair sin, ga dhèanamh comasach an siostam seo a riaghladh gu dìreach bho chòd, le luchd-leasachaidh, gun a bhith an sàs gu gnìomhach aig luchd-rianachd. Bha an luchd-leasachaidh den bheachd gu robh feum air DBMS air leth airson an fho-phròiseact ùr - furasta! sgrìobh faidhle yaml, luchdaich suas e chun bhuidheann agus tha thu deiseil.

Agus gu dearbh, tha obrachadh a-staigh air a dhèanamh nas sìmplidhe gu mòr. Innis dhomh, cia mheud uair a dhùin thu do shùilean nuair a chuir ball ùr den sgioba a làmhan a-steach don stòr-dàta sabaid airson obair? Dè, gu dearbh, an aon fhear a th 'agad agus a tha a' snìomh an-dràsta? Gu dearbh, tha sinn uile nan inbhich an seo, agus an àiteigin tha cùl-taic ùr againn, agus eadhon nas fhaide air falbh - air cùl na sgeilp le cucumbers seanmhair agus seann sgithean - cùl-taic eile, is dòcha eadhon ann an stòradh fuar, oir bha an oifis agad na theine aon uair. Ach fhathast, tha a h-uile toirt a-steach ball sgioba ùr le cothrom air bun-structar sabaid agus, gu dearbh, chun stòr-dàta sabaid na bhucaid dligheach airson a h-uile duine mun cuairt. Uill, cò a tha eòlach air, newbie, is dòcha gu bheil e crois-làmhach? Tha e eagallach, aontaichidh tu.

Bidh gleidheadh ​​​​agus, gu dearbh, an topology fiosaigeach sgaoilte ann an stòr-dàta a 'phròiseict agad a' cuideachadh le bhith a 'seachnadh amannan dearbhaidh mar sin. Na bi earbsa ann an newbie? ceart gu leòr! Bheir sinn dha a bhuidheann fhèin airson a bhith ag obair leis agus an stòr-dàta a dhì-cheangal bho na cruinneachaidhean eile - sioncronadh a-mhàin le putadh làimhe agus cuairteachadh sioncronaich de dhà iuchair (aon airson stiùir na sgioba, am fear eile airson an rianadair). Agus tha a h-uile duine toilichte.

Agus a-nis tha an t-àm ann atharrachadh gu bhith nan luchd-dùbhlain a thaobh cruinneachadh stòr-dàta.

Taobh dorcha

Ag argamaid carson nach fhiach an stòr-dàta a stòradh agus cumail oirnn ga ruith air aon phrìomh fhrithealaiche, cha bhith sinn a’ gèilleadh ri reul-eòlas orthodoxies agus aithrisean mar “ruith seanairean stòran-dàta air bathar-cruaidh, agus mar sin nì sinn!” An àite sin, feuchaidh sinn ri suidheachadh a chruthachadh far am pàigheadh ​​​​soitheach earrannan susbainteach.

Aontaich, faodar na pròiseactan a tha dha-rìribh feumach air bunait ann an soitheach a chunntadh air corragan aon làimh le chan e an gnìomhaiche inneal bleith as fheàrr. Airson a’ mhòr-chuid, tha eadhon cleachdadh k8s no Docker Swarm fhèin gun fheum - gu math tric thathas a’ cleachdadh na h-innealan sin air sgàth hype coitcheann theicneòlasan agus beachdan an “Uile-chumhachdaich” ann am pearsa nan cinneach gus a h-uile càil a phutadh a-steach don neòil agus soithichean. Uill, oir a-nis tha e fasanta agus bidh a h-uile duine ga dhèanamh.

Ann an co-dhiù leth de na cùisean, tha cleachdadh Kubernetis no dìreach Docker air pròiseact gun fheum. Is e a’ cheist nach eil a h-uile sgioba no companaidh taobh a-muigh air am fastadh gus bun-structar an neach-dèiligidh a chumail mothachail air seo. Tha e nas miosa nuair a thèid soithichean a chuir a-steach, oir tha e a’ cosg cuid de bhuinn don neach-dèiligidh.

San fharsaingeachd, tha beachd ann gu bheil am mafia docker / ciùb gu gòrach a’ pronnadh teachdaichean a bhios a’ cuir a-mach na cùisean bun-structair sin. Às deidh na h-uile, gus a bhith ag obair le cruinneachaidhean, feumaidh sinn innleadairean a tha comasach air seo agus san fharsaingeachd a 'tuigsinn ailtireachd an fhuasglaidh gnìomhaichte. Thug sinn cunntas air ar cùis mu thràth le foillseachadh na Poblachd - an sin rinn sinn trèanadh air sgioba an neach-dèiligidh a bhith ag obair ann an da-rìribh Kubernetis, agus bha a h-uile duine riaraichte. Agus bha e reusanta. Gu tric, bidh “luchd-gnìomh” k8s a’ toirt aoigheachd bun-structair an neach-dèiligidh - oir a-nis chan eil iad a’ tuigsinn ach mar a tha a h-uile càil ag obair ann; chan eil eòlaichean air taobh an neach-dèiligidh.

A-nis smaoinich gum bi sinn san dòigh seo a’ cuir a-mach chan ann a-mhàin am pàirt frithealaiche lìn, ach cuideachd cumail suas an stòr-dàta. Thuirt sinn gur e BD an cridhe, agus gu bheil call a’ chridhe marbhtach do fhàs-bheairt beò sam bith. Ann an ùine ghoirid, chan eil na dùilean cho math. Mar sin, an àite hype Kubernetis, cha bu chòir mòran phròiseactan a bhith a’ cur dragh air a’ phrìs àbhaisteach airson AWS, a dh’ fhuasglas a h-uile duilgheadas leis an luchd air an làrach/pròiseact aca. Ach chan eil AWS fasanta tuilleadh, agus tha luach nas motha na airgead aig taisbeanaidhean - gu mì-fhortanach, san àrainneachd IT cuideachd.

ceart gu leòr. Is dòcha gu bheil feum aig a’ phròiseact air cruinneachadh, ach ma tha a h-uile dad soilleir le tagraidhean gun stàite, ciamar as urrainn dhuinn ceanglaichean lìonra iomchaidh a chuir air dòigh airson stòr-dàta cruinnichte?

Ma tha sinn a’ bruidhinn mu dheidhinn fuasgladh innleadaireachd fuaigheil, is e sin an gluasad gu k8n, is e ar prìomh cheann goirt ath-riochdachadh dàta ann an stòr-dàta cruinnichte. Tha cuid de DBMS an toiseach gu math dìleas do sgaoileadh dàta eadar na suidheachaidhean fa-leth aca. Tha mòran eile nach eil cho aoigheil. Agus gu math tric chan e am prìomh argamaid ann a bhith a’ taghadh DBMS airson ar pròiseact an comas ath-riochdachadh le glè bheag de chosgaisean ghoireasan is innleadaireachd. Gu sònraichte mura robh am pròiseact air a dhealbhadh an toiseach mar mhicro-sheirbheis, ach dìreach air atharrachadh san rathad seo.

Tha sinn den bheachd nach eil feum air bruidhinn mu astar draibhearan lìonra - tha iad slaodach. An fheadhainn sin. Chan eil fìor chothrom againn fhathast, ma thachras rudeigin, eisimpleir DBMS ath-thòiseachadh an àiteigin far a bheil barrachd, mar eisimpleir, cumhachd pròiseasar no RAM an-asgaidh. Ruithidh sinn gu sgiobalta a-steach do choileanadh an fho-shiostam diosc brìgheil. Mar sin, feumaidh an DBMS a bhith ceangailte ris an t-seata innealan pearsanta aige fhèin a tha faisg air làimh. No feumar dòigh air choireigin fuarachadh air leth sioncronadh dàta luath gu leòr airson na stòran-tasgaidh a tha còir.

A’ leantainn le cuspair siostaman faidhle brìgheil: Gu mì-fhortanach, chan eil Docker Volumes saor bho dhuilgheadasan. San fharsaingeachd, ann an leithid de chùis mar stòradh dàta earbsach san fhad-ùine, bu mhath leam a dhèanamh leis na sgeamaichean as sìmplidh gu teicnigeach. Agus tha e na chunnart ann fhèin a bhith a’ cur còmhdach tarraing ùr bho FS an t-soithich gu FS an aoigh phàrant. Ach nuair a thig duilgheadasan tarsainn air obrachadh an t-siostam taic containerization le bhith a’ sgaoileadh dàta eadar na sreathan sin, is e fìor thubaist a th’ ann. Aig an àm seo, tha coltas gu bheil a 'mhòr-chuid de na duilgheadasan a tha aithnichte do chinne-daonna adhartach air an cur às. Ach tuigidh tu, mar as iom-fhillte an uidheamachd, is ann as fhasa a bhriseas e.

Mar thoradh air na “h-iomairtean” sin uile tha e tòrr nas prothaidiche agus nas fhasa an stòr-dàta a chumail ann an aon àite, agus eadhon ged a dh’ fheumas tu an tagradh a stòradh, leig leis ruith leis fhèin agus tron ​​​​gheata cuairteachaidh faigh conaltradh aig an aon àm leis an stòr-dàta, a thèid a leughadh agus a sgrìobhadh dìreach aon turas agus ann an aon àite. Tha an dòigh-obrach seo a’ lughdachadh an coltas gum bi mearachdan ann agus dì-shioncronachadh chun ìre as ìsle.

Dè a tha sinn a 'stiùireadh? A bharrachd air an sin, tha stòradh stòr-dàta iomchaidh far a bheil fìor fheum air. Chan urrainn dhut stòr-dàta làn-app a lìonadh agus a shnìomh mar gum biodh dà dhusan meanbh-sheirbheisean agad - chan obraich e mar sin. Agus feumar seo a thuigsinn gu soilleir.

An àite toradh

Ma tha thu a’ feitheamh ri co-dhùnadh soilleir “gus an stòr-dàta a dhèanamh brìgheil no nach eil,” nì sinn briseadh-dùil dhut: cha bhith e an seo. Oir nuair a chruthaicheas tu fuasgladh bun-structair sam bith, feumar a bhith air a stiùireadh chan ann le fasan agus adhartas, ach, an toiseach, le mothachadh cumanta.

Tha pròiseactan ann airson a bheil na prionnsapalan agus na h-innealan a tha a ’tighinn le Kubernetis a’ freagairt gu foirfe, agus ann am pròiseactan mar sin tha sìth co-dhiù anns an raon backend. Agus tha pròiseactan ann nach eil feumach air container, ach bun-structar frithealaiche àbhaisteach, oir gu bunaiteach chan urrainn dhaibh ath-sgèileadh gu modal brabhsair microservice, oir tuitidh iad.

Source: www.habr.com

Cuir beachd ann