Shin bayanan bayanai suna rayuwa a Kubernetes?

Shin bayanan bayanai suna rayuwa a Kubernetes?

Ko ta yaya, a tarihi, ana rarraba masana'antar IT zuwa sansanonin sharadi biyu don kowane dalili: waɗanda suke "don" da waɗanda suke "ƙi". Haka kuma, batun gardama na iya zama na sabani. Wanne OS ya fi kyau: Win ko Linux? A kan Android ko iOS smartphone? Shin ya kamata ku adana duk abin da ke cikin gajimare ko loda shi zuwa ma'ajiyar RAID mai sanyi kuma ku sanya sukurori a cikin aminci? Shin mutanen PHP suna da hakkin a kira su masu shirye-shirye? Wadannan sabani, a wasu lokuta, suna wanzuwa ne kawai a cikin yanayi kuma ba su da tushe face sha'awar wasanni.

Haka ya faru cewa tare da zuwan kwantena da duk wannan ƙaunataccen abinci tare da docker da k8s, muhawarar "don" da "a" an fara amfani da sababbin damar a wurare daban-daban na baya. (Bari mu yi ajiyar gaba cewa kodayake Kubernetes galibi za a nuna su a matsayin mawaƙa a cikin wannan tattaunawa, zaɓin wannan kayan aiki na musamman ba shi da mahimmanci. .)

Kuma, da alama, wannan zai zama sabani mai sauƙi tsakanin ɓangarori biyu na tsabar kuɗi ɗaya. Kamar rashin hankali da jinƙai kamar adawa ta har abada tsakanin Win vs Linux, wanda isassun mutane ke kasancewa a wani wuri a tsakiya. Amma a cikin yanayin kwantena, ba komai ba ne mai sauƙi. Yawancin lokaci a cikin irin waɗannan rikice-rikice babu wani gefen dama, amma a cikin yanayin "amfani" ko "a'a" kwantena don adana bayanan bayanai, komai ya juya baya. Domin a wata ma'ana, masu goyon bayan wannan tsarin da masu adawa da shi duk sun yi daidai.

Gefe mai haske

Ana iya kwatanta hujjar Side Light a takaice a cikin jumla ɗaya: "Sannu, 2k19 yana wajen taga!" Yana kama da populism, ba shakka, amma idan kun shiga cikin halin da ake ciki daki-daki, yana da fa'ida. Bari mu warware su yanzu.

Bari mu ce kuna da babban aikin gidan yanar gizo. Da farko an gina shi ne bisa tsarin tsarin microservice, ko kuma a wani lokaci ya zo gare shi ta hanyar juyin halitta - wannan ba shi da mahimmanci, a zahiri. Kun warwatsa aikin mu zuwa ƙananan ƙananan ayyuka, kafa ƙungiyar kade-kade, daidaita nauyi, da kuma sikeli. Kuma yanzu, tare da lamiri mai tsabta, kuna shan mojito a cikin hamma yayin tasirin habra maimakon tayar da sabar da ta fadi. Amma a cikin dukkan ayyuka dole ne ku kasance masu daidaito. Sau da yawa, kawai aikace-aikacen kanta-lambar-yana cikin akwati. Me kuma muke da shi banda lamba?

Haka ne, bayanai. Zuciyar kowane aiki shine bayanansa: wannan na iya zama ko dai DBMS na yau da kullun - MySQL, Postgre, MongoDB, ko ajiyar da aka yi amfani da shi don bincike (ElasticSearch), ma'ajin ƙima don caching - misali, redis, da sauransu. A halin yanzu ba mu kasance ba. za mu yi magana game da karkatattun zaɓuɓɓukan aiwatar da bayanan baya lokacin da ma'aunin bayanai ya faɗo saboda rashin rubutaccen tambayoyin da ba daidai ba, kuma a maimakon haka za mu yi magana game da tabbatar da rashin haƙurin wannan ma'ajin bayanai a ƙarƙashin nauyin abokin ciniki. Bayan haka, lokacin da muka haɗa aikace-aikacen mu kuma muka ba shi damar yin sikelin kyauta don aiwatar da kowane adadin buƙatun masu shigowa, wannan a zahiri yana ƙara nauyi akan bayanan.

A gaskiya ma, tashar don shiga cikin bayanan bayanai da kuma uwar garken da yake aiki da shi ya zama idon allura a cikin kyakkyawan akwati na baya. A lokaci guda kuma, babban dalilin da ya dace na gandun daji shine motsi da sassaucin tsarin, wanda ke ba mu damar tsara rarraba nauyin kaya a cikin dukkanin kayan aikin da ke samuwa a gare mu kamar yadda ya kamata. Ma’ana, idan ba mu yi kwantena da fitar da duk abubuwan da ke cikin tsarin a cikin gungu ba, muna yin babban kuskure.

Yana da ma'ana sosai don tari ba kawai aikace-aikacen kanta ba, har ma da ayyukan da ke da alhakin adana bayanai. Ta hanyar tarawa da ƙaddamar da sabar gidan yanar gizo waɗanda ke aiki da kansu kuma suna rarraba kaya a tsakanin juna a cikin k8s, mun riga mun magance matsalar aiki tare da bayanai - iri ɗaya sharhi akan posts, idan muka ɗauki wasu kafofin watsa labarai ko dandamali na blog a matsayin misali. A kowane hali, muna da intra-cluster, ko da kama-da-wane, wakilcin bayanai a matsayin Sabis na Waje. Tambayar ita ce, bayanan da kanta ba ta taru ba tukuna - sabobin gidan yanar gizon da aka tura a cikin kube suna ɗaukar bayanai game da canje-canje daga ma'ajin mu na yaƙi, wanda ke juyawa daban.

Kuna jin kama? Muna amfani da k8s ko Swarm don rarraba kaya kuma mu guje wa rushe babban sabar gidan yanar gizon, amma ba ma yin wannan don bayanan bayanai. Amma idan rumbun adana bayanai ya fashe, to, duk abubuwan haɗin gwiwarmu ba su da ma'ana - menene amfanin fakitin shafukan yanar gizon da ke dawo da kuskuren samun damar bayanai?

Abin da ya sa ya zama dole don tari ba kawai sabar yanar gizo ba, kamar yadda aka saba yi, har ma da kayan aikin bayanai. Ta wannan hanyar kawai za mu iya tabbatar da tsarin da ke aiki cikakke a cikin ƙungiya ɗaya, amma a lokaci guda mai zaman kanta daga juna. Haka kuma, ko da rabin mu backend "rushe" a karkashin kaya, sauran za su tsira, da kuma tsarin aiki tare da databases tare da juna a cikin gungu da ikon da ba tare da iyaka sikelin da kuma tura sabon gungu zai taimaka da sauri isa da ake bukata iya aiki - idan da akwai taragu a cibiyar bayanai.

Bugu da kari, tsarin bayanai da aka rarraba a gungu yana ba ka damar kai wannan ma’adanar bayanai zuwa inda ake bukata; Idan muna magana ne game da sabis na duniya, to, ba ma'ana ba ne don jujjuya gunkin yanar gizo a wani wuri a cikin yankin San Francisco kuma a lokaci guda aika fakiti lokacin shiga bayanan bayanai a yankin Moscow da baya.

Hakanan, kwantena na bayanan yana ba ku damar gina duk abubuwan da ke cikin tsarin a matakin abstraction iri ɗaya. Wanda, bi da bi, yana ba da damar sarrafa wannan tsarin kai tsaye daga lamba, ta masu haɓakawa, ba tare da sa hannun masu gudanarwa ba. Masu haɓakawa sunyi tunanin cewa ana buƙatar DBMS daban don sabon aikin - mai sauƙi! ya rubuta fayil ɗin yaml, loda shi zuwa gungu kuma kun gama.

Kuma ba shakka, aiki na ciki yana sauƙaƙa sosai. Fada mani, sau nawa ka rufe idanunka lokacin da sabon memban kungiyar ya sanya hannunsa a cikin bayanan fada don aiki? Wanne, a zahiri, shine kawai wanda kuke da shi kuma yake jujjuyawa a yanzu? Hakika, mu duka manya ne a nan, kuma wani wuri muna da sabon madadin, har ma da nesa - a bayan shiryayye tare da cucumbers na kakarta da tsohuwar skis - wani madadin, watakila ma a cikin ajiyar sanyi, saboda ofishin ku ya riga ya ci wuta sau ɗaya. Amma duk iri ɗaya, kowane gabatarwar sabon memba na ƙungiyar tare da damar yin amfani da kayan aikin yaƙi kuma, ba shakka, zuwa bayanan yaƙi shine guga na validol ga kowa da kowa a kusa. To, wanene ya san shi, sabon sabon, watakila yana da hannu? Yana da ban tsoro, za ku yarda.

Kwantena da, a haƙiƙa, rarrabuwar yanayin yanayin bayanan aikin ku yana taimakawa wajen guje wa irin waɗannan lokuta masu inganci. Kar ka amince da sabon sabo? KO! Bari mu ba shi gungu nasa don yin aiki tare da kuma cire haɗin bayanan daga sauran gungu - aiki tare kawai ta hanyar turawa ta hannu da jujjuyawar maɓalli guda biyu (ɗaya don jagorar ƙungiyar, ɗayan na admin). Kuma kowa yana farin ciki.

Kuma yanzu lokaci ya yi da za a canza zuwa masu adawa da tarin bayanai.

Gefen duhu

Da yake jayayya da dalilin da ya sa bai dace a ajiye bayanan ba kuma a ci gaba da gudanar da shi a kan uwar garken tsakiya guda ɗaya, ba za mu yi la'akari da maganganun ka'idoji da maganganun kamar "kakanni sun yi amfani da bayanan bayanai akan kayan aiki ba, kuma mu ma!" Madadin haka, bari mu yi ƙoƙari mu fito da yanayin da kwantena zai iya biyan kuɗi na gaske.

Yarda, ayyukan da suke buƙatar tushe a cikin kwantena za a iya ƙidaya su akan yatsun hannu ɗaya ba mafi kyawun ma'aikacin injin niƙa ba. Ga mafi yawancin, har ma da yin amfani da k8s ko Docker Swarm kanta ba ta da yawa - sau da yawa ana amfani da waɗannan kayan aikin saboda haɓakar fasahar fasaha da halayen "Maɗaukaki" a cikin mutum na jinsi don tura komai a cikin gizagizai da kwantena. To, domin yanzu ya zama gaye kuma kowa ya yi.

Aƙalla rabin shari'o'in, yin amfani da Kubernetis ko Docker kawai akan aikin ba shi da ƙari. Matsalar ita ce ba duk ƙungiyoyi ko kamfanonin fitar da kayayyaki da aka hayar don kula da kayan aikin abokin ciniki ba su san wannan. Ya fi muni lokacin da aka sanya kwantena, saboda yana kashe wani adadin tsabar kudi ga abokin ciniki.

Gabaɗaya, akwai ra'ayi cewa mafia docker/cube suna wauta murkushe abokan ciniki waɗanda ke ba da waɗannan abubuwan abubuwan more rayuwa. Bayan haka, don yin aiki tare da gungu, muna buƙatar injiniyoyi waɗanda ke da ikon wannan kuma gabaɗaya sun fahimci tsarin gine-ginen da aka aiwatar. Mun riga mun bayyana lamarinmu tare da buga jumhuriyar - a can mun horar da ƙungiyar abokin ciniki don yin aiki a cikin abubuwan da ke faruwa a Kubernetis, kuma kowa ya gamsu. Kuma ya kasance mai kyau. Sau da yawa, k8s "masu aiwatarwa" suna garkuwa da kayan aikin abokin ciniki - saboda yanzu kawai sun fahimci yadda duk abin ke aiki a can, babu ƙwararru a gefen abokin ciniki.

Yanzu yi tunanin cewa ta wannan hanyar muna fitar da ba kawai sashin sabar yanar gizo ba, har ma da kula da bayanai. Mun ce BD shine zuciya, kuma asarar zuciya yana da mutuwa ga kowace halitta mai rai. A takaice dai, abubuwan da ba su da kyau ba su da kyau. Don haka, a maimakon Kubernetis, yawancin ayyukan yakamata kawai su damu da jadawalin kuɗin fito na yau da kullun don AWS, wanda zai magance duk matsalolin tare da kaya akan rukunin yanar gizon su / aikin. Amma AWS ya daina zama na zamani, kuma abubuwan nunawa sun fi kuɗi fiye da kuɗi - abin takaici, a cikin yanayin IT ma.

KO. Wataƙila aikin yana buƙatar da gaske tari, amma idan komai ya bayyana tare da aikace-aikacen marasa jiha, to ta yaya za mu tsara ingantaccen haɗin yanar gizo don tarin bayanai?

Idan muna magana ne game da maganin injiniya maras kyau, wanda shine abin canzawa zuwa k8s, to, babban ciwon kai shine kwafin bayanai a cikin tarin bayanai. Wasu DBMS tun farko suna da aminci ga rarraba bayanai tsakanin al'amuransu ɗaya. Wasu da yawa ba su da maraba sosai. Kuma sau da yawa babban gardama a zabar DBMS don aikinmu ba shine ikon yin kwafi tare da ƙarancin albarkatu da farashin injiniya ba. Musamman idan ba a fara tsara aikin a matsayin microservice ba, amma kawai ya samo asali ne ta wannan hanya.

Muna tsammanin babu buƙatar yin magana game da saurin abubuwan tafiyar da hanyar sadarwa - suna jinkirin. Wadancan. Har yanzu ba mu da dama ta gaske, idan wani abu ya faru, don sake kunna misalin DBMS a wani wuri inda akwai ƙarin, misali, ikon sarrafawa ko RAM kyauta. Za mu yi gaggawar shiga cikin aikin tsarin tsarin faifai mai ƙima. Saboda haka, dole ne a ƙusa DBMS a kan na'urorin nata na sirri waɗanda ke kusa. Ko kuma ya zama dole a ko ta yaya a kwantar da isassun isassun bayanai aiki tare don abubuwan da ake tsammani.

Ci gaba da batun tsarin fayilolin kama-da-wane: Docker Volumes, abin takaici, ba su da matsala. Gabaɗaya, a cikin irin wannan al'amari kamar adana bayanai na dogon lokaci, Ina so in yi tare da mafi sauƙin tsari na fasaha. Kuma ƙara sabon Layer abstraction daga FS na kwantena zuwa FS na uwar gida yana da haɗari a cikin kansa. Amma lokacin da aikin tsarin tallafin kwantena shima ya fuskanci matsaloli tare da watsa bayanai tsakanin waɗannan yadudduka, to hakika bala'i ne. A halin yanzu, yawancin matsalolin da ɗan adam masu ci gaba suka sani sun zama kamar an kawar da su. Amma kun fahimta, mafi rikitarwa tsarin, da sauƙin karya.

Dangane da duk waɗannan "kasada", yana da fa'ida da sauƙi don kiyaye bayanan bayanai a wuri guda, kuma ko da kuna buƙatar ƙwanƙwasa aikace-aikacen, bari ta gudana da kanta kuma ta hanyar ƙofa mai rarraba sami hanyar sadarwa ta lokaci guda tare da database, wanda za a karanta da rubuta sau ɗaya kawai kuma A wuri guda. Wannan hanyar tana rage yuwuwar kurakurai da ɓata aiki zuwa ƙarami.

Me muke kaiwa zuwa? Haka kuma, rumbun adana bayanai ya dace a inda ake buƙatar gaske. Ba za ku iya yin cikakken bayanan bayanan app ba kuma kuyi shi kamar kuna da microservices dozin biyu - ba ya aiki haka. Kuma dole ne a fahimci wannan a fili.

Madadin fitarwa

Idan kuna jiran tabbataccen ƙarshe "don daidaita bayanan bayanan ko a'a," to za mu yanke muku rashin kunya: ba zai kasance a nan ba. Domin lokacin ƙirƙirar kowane mafita na ababen more rayuwa, dole ne mutum ya jagoranci ba ta hanyar salo da ci gaba ba, amma, da farko, ta hanyar hankali.

Akwai ayyukan da ka'idoji da kayan aikin da suka zo tare da Kubernetis suka dace daidai, kuma a cikin irin waɗannan ayyukan akwai zaman lafiya aƙalla a yankin baya. Kuma akwai ayyukan da ba sa buƙatar kwantena, amma kayan aikin uwar garken na yau da kullun, saboda a zahiri ba za su iya komawa ga tsarin gungu na microservice ba, saboda za su faɗi.

source: www.habr.com

Add a comment