Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Warbixintu waxay u heellan tahay arrimo la taaban karo oo ku saabsan horumarinta hawl-wadeen ku sugan Kubernetes, naqshadaynta qaab-dhismeedkeeda iyo mabaadi'da hawlgalka aasaasiga ah.

Qeybta koowaad ee warbixinta waxaan ku eegi doonaa:

  • waa maxay hawlwadeenka Kubernetes iyo sababta loogu baahan yahay;
  • sida saxda ah ee hawlwadeenku u fududeeyo maaraynta nidaamyada adag;
  • waxa hawlwadeenku awoodo ama aanu samayn karin.

Marka xigta, aan u gudubno ka doodista qaabdhismeedka gudaha ee hawlwadeenka. Aynu si tallaabo tallaabo ah u eegno dhismaha iyo hawlgalka hawlwadeenka. Aynu si faahfaahsan u eegno:

  • isdhexgalka ka dhexeeya hawlwadeenka iyo Kubernetes;
  • Waa maxay hawlaha uu hawlwadeenku qabto iyo waxa uu u wakiilo Kubernetes.

Aynu eegno maaraynta jeexjeexyada iyo nuqullada xogta ee Kubernetes.
Marka xigta, waxaan ka wada hadli doonaa arrimaha kaydinta xogta:

  • sida loola shaqeeyo kaydinta joogtada ah marka laga eego dhinaca hawlwadeenka;
  • khadadka isticmaalka Kaydinta Maxaliga ah.

Qeybta ugu dambeysa ee warbixinta, waxaan tixgelin doonaa tusaalooyin wax ku ool ah oo ku saabsan codsiga clickhouse-operator oo leh Amazon ama Google Cloud Service. Warbixintu waxay ku salaysan tahay tusaalaha horumarinta iyo khibradda hawl wadeenka ClickHouse.

Video:

Magacaygu waa Vladislav Klimenko. Maanta waxaan rabay in aan ka hadlo khibradeena dhanka horumarinta iyo ka shaqaynta hawlwadeenka, kani waa hawl wadeen takhasus u leh maaraynta xogta xogta. Tusaale ahaan ClickHouse-operator si loo maareeyo kooxda ClickHouse.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Maxay tahay sababta aan fursad ugu helno inaan ka hadalno hawlwadeenka iyo ClickHouse?

  • Waxaan taageernaa oo horumarinay ClickHouse.
  • Waqtigan xaadirka ah, waxaan isku dayeynaa inaan si tartiib tartiib ah uga qayb qaadanno horumarinta ClickHouse. Waxaan nahay labaad ka dib Yandex marka la eego mugga isbeddellada lagu sameeyay ClickHouse.
  • Waxaan isku dayeynaa inaan mashaariic dheeri ah u sameyno nidaamka deegaanka ee ClickHouse.

Waxaan jeclaan lahaa inaan kuu sheego mid ka mid ah mashaariicdan. Tani waxay ku saabsan tahay ClickHouse-operator ee Kubernetes.

Warbixintayda waxaan jeclaystay inaan wax ka taabto laba mawduuc:

  • Mawduuca koowaad waa sida hawlwadeenkayaga maaraynta xogta ee ClickHouse uu uga shaqeeyo Kubernetes.
  • Mawduuca labaad waa sida hawlwadeen kasta u shaqeeyo, tusaale ahaan sida uu ula falgalo Kubernetes.

Si kastaba ha ahaatee, labadan su'aalood ayaa is-khilaafsan doona inta warbixintayda oo dhan.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Yaa xiisayn lahaa inuu dhageysto waxa aan isku dayayo inaan sheego?

  • Waxay noqon doontaa mid aad u daneynaysa kuwa ka shaqeeya hawlwadeenada.
  • Ama kuwa raba inay iyagu iskood u sameeyaan si ay u fahmaan sida ay u shaqeyso gudaha, sida hawlwadeenku ula falgalo Kubernetes, iyo waxa cilladaha laga yaabo inay muuqdaan.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Si loo fahmo waxa aan maanta ka doodi doono, waa fikrad wanaagsan in la ogaado sida Kubernetes u shaqeeyo oo aad hesho xoogaa tababbarka daruuraha aasaasiga ah.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Waa maxay ClickHouse? Kani waa xog-ururin leh sifooyin gaar ah oo loogu talagalay habaynta internetka ee weydiimaha falanqaynta. Waxayna gabi ahaanba tahay il furan.

Waxaana muhiim ah inaan ogaano laba shay oo kaliya. Waxaad u baahan tahay inaad ogaato in kani yahay xog ururin, markaa waxa aan kuu sheegi doono waxay noqon doonaan kuwo lagu dabaqi karo ku dhawaad ​​xog kasta. Xaqiiqda ah in ClickHouse DBMS ay si aad u wanaagsan u miisaanto, waxay siinaysaa ku dhawaad ​​miisaan toosan. Sidaas darteed, gobolka kooxdu waa xaalad dabiici ah oo loogu talagalay ClickHouse. Waxaan aad u xiisaynaynaa inaan ka wada hadalno sidii loogu adeegi lahaa kooxda ClickHouse ee Kubernetes.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Maxaa looga baahan yahay halkaas? Maxaynu u sii wadi waynay in aynu ka shaqayno nafteena? Jawaabahana waa qayb farsamo iyo qayb urureed.

  • Ficil ahaan, waxaan si sii kordheysa ula kulannaa xaalad ay shirkadaha waaweyn ku dhawaad ​​​​dhammaan qaybaha ay horeyba ugu jiraan Kubernetes. Kaydka xogta ayaa ku haray dibadda
  • Su'aashana si isa soo taraysa ayaa la is weydiinayaa: "Miyaa tan gudaha la gelin karaa?" Sidaa darteed, shirkadaha waaweyni waxay isku dayayaan inay gaaraan midaynta ugu badan ee maamulka si ay si dhakhso ah u awoodaan inay maamulaan bakhaaradooda xogta.
  • Tani waxay si gaar ah u caawineysaa haddii aad u baahan tahay fursadda ugu badan ee aad ku celin karto wax la mid ah meel cusub, tusaale ahaan ugu badnaan qaadashada.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Sidee u fududahay ama u adag tahay? Tani, dabcan, waxaa lagu samayn karaa gacanta. Laakiin ma fududa, sababtoo ah waxaan leenahay kakanaanta dheeraadka ah ee maaraynta Kubernetes lafteeda, laakiin isla mar ahaantaana waxyaabaha gaarka ah ee ClickHouse waa la sarreeyaa. Iyo natiijada isku-darka noocaas ah.

Dhammaan tani waxay siinaysaa tignoolajiyada aad u ballaaran, taas oo noqonaysa mid aad u adag in la maareeyo, sababtoo ah Kubernetes waxay keenaysaa arrimaheeda maalinlaha ah si ay u shaqeyso, iyo ClickHouse waxay u keentaa arrimaheeda hawl maalmeedka. Gaar ahaan haddii aan haysano dhowr ClickHouses, oo aan u baahanahay inaan si joogto ah wax ula qabsano iyaga.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Iyada oo qaabeyn firfircoon leh, ClickHouse waxay leedahay tiro aad u tiro badan oo arrimo ah oo culeys joogto ah ku abuura DevOps:

  • Marka aan rabno inaan wax ka beddelno ClickHouse, tusaale ahaan, ku dar nuqul ama shaar, ka dib waxaan u baahanahay inaan maareyno qaabeynta.
  • Kadib beddel xogta xogta, sababtoo ah ClickHouse waxay leedahay hab jeexid gaar ah. Halkaa waxaad u baahan tahay inaad dejiso jaantuska xogta, deji qaabaynta.
  • Waxaad u baahan tahay inaad dejiso la socodka
  • Uruurinta logyada jeexjeexyada cusub, nuqulo cusub.
  • Ka taxadar dib u soo celinta.
  • Oo dib u bilow

Kuwani waa hawlo joogto ah oo aan runtii jeclaan lahaa inaan fududeeyo isticmaalka.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Kubernetes lafteedu waxay si fiican u caawisaa hawlgalka, laakiin waxyaabaha nidaamka aasaasiga ah.

Kubernetes wuxuu ku fiican yahay fududaynta iyo otomatiga waxyaabaha sida:

  • Soo kabashada.
  • Dib u bilow
  • Maamulka nidaamka kaydinta.

Taasi waa fiican tahay, taasi waa jihada saxda ah, laakiin gabi ahaanba wuu ka war la'yahay sida loo shaqeeyo kooxda xogta.

Waxaan rabnaa wax badan, waxaan rabnaa in xogta oo dhan ay ka shaqeyso Kubernetes.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Waxaan jeclaan lahaa in aan helo wax la mid ah badhan cas sixir weyn oo aad riixdo iyo koox hawl maalmeedka leh oo u baahan in la xalliyo ayaa la geeyaa lana ilaaliyaa inta lagu jiro wareegga nolosha oo dhan. Kooxda ClickHouse ee Kubernetes.

Waxaanan isku daynay in aanu samayno xal wax ka taraya fududaynta shaqada. Kani waa hawl-wadeenka ClickHouse ee Kubernetes oo ka socda Altinity.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Hawlwadeenku waa barnaamij shaqadiisa ugu weyni ay tahay inuu maamulo barnaamijyada kale, tusaale ahaan waa maamule.

Waxayna ka kooban tahay hab-dhaqan. Waxaad wici kartaa aqoontan la isku duubay ee ku saabsan aagga maadada.

Hawshiisa ugu weynina waa in uu nolosha DevOps u fududeeyo oo uu yareeyo maamul-xumada, si isaga (DevOps) uu mar horeba ugu fikiro heerar sare, ie, si isaga (DevOps) aanu ugu hawlgelin micromanagement, si aanu u habayn. dhammaan faahfaahinta gacanta.

Kaliya hawlwadeenku waa kaaliye roboti ah oo ka shaqeeya microtasks oo caawiya DevOps.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Maxaad ugu baahan tahay hawlwadeen? Waxa uu si gaar ah uga shaqeeyaa laba qaybood:

  • Marka khabiirka la tacaalaya ClickHouse aanu lahayn waayo-aragnimo ku filan, laakiin uu u baahan yahay inuu ku shaqeeyo ClickHouse, hawlwadeenku wuu fududeeyaa hawlgalka wuxuuna kuu ogolaanayaa inaad ku shaqeyso kooxda ClickHouse oo leh qaabayn aad u adag, adigoon faahfaahin badan ka bixin sida ay u wada shaqeeyaan. gudaha. Waxaad siisaa hawlo heer sare ah, wayna shaqaysaa.
  • Hawsha labaad ee ay sida ugu fiican u gudanaysona waa marka ay lagama maarmaan noqoto in la sameeyo tiro badan oo hawlo caadi ah. Waxay ka saartaa microtasks maamulayaasha nidaamka.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Tan waxaa aad ugu baahan kuwa hadda bilaabay socdaalkooda, ama kuwa u baahan inay sameeyaan wax badan oo otomaatig ah.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Sidee habka ku salaysan hawlwadeenku uga duwan yahay nidaamyada kale? Waxaa jira Helm. Waxa kale oo ay ka caawisaa in lagu rakibo ClickHouse; waxaad sawiri kartaa jaantusyada koofiyadda, kuwaas oo xitaa rakibi doona dhammaan kooxda ClickHouse. Haddaba waa maxay farqiga u dhexeeya hawlwadeenka iyo kuwa isku midka ah, tusaale ahaan, Helm?

Farqiga aasaasiga ah ee ugu weyn ayaa ah in Helm uu yahay maaraynta xirmada, hawl wadeenna tallaabo dheeraad ah ayuu u qaaday. Tani waa taageerada wareegga nolosha oo dhan. Tani ma aha oo kaliya rakibidda, kuwani waa hawlo maalmeed oo ay ku jiraan miisaan, xoqin, tusaale ahaan wax kasta oo loo baahan yahay in la sameeyo inta lagu jiro wareegga nolosha (haddii loo baahdo, ka dibna sidoo kale tirtirka) - waxaas oo dhan ayaa go'aaminaya hawlwadeenka. Waxa ay isku daydaa in ay otomaatig u samayso oo ay ilaaliso wareegga nolosha software-ka oo dhan. Tani waa farqiga aasaasiga ah ee xalalka kale ee la soo bandhigay.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Taasi waxay ahayd qaybtii hordhaca ah, aynu sii wadno.

Sideen u dhisnaa hawlwadeenkayaga? Waxaan isku dayeynaa inaan u wajahno arrinta si aan u maareyno kutlada ClickHouse sidii kheyraad keliya.

Halkan waxaan ku haynaa xogta gelinta ee dhinaca bidix ee sawirka. Kani waa YAML oo leh qeexitaan kooxeed, kaas oo loo gudbiyo Kubernetes habka caadiga ah iyada oo loo marayo kubectl. Halkaa hawlwadeenkayaga ayaa ka soo qaada oo ku sameeya sixirkiisa. Iyo wax soo saarka waxaan helnaa nidaamka soo socda. Tani waa hirgelinta ClickHouse ee Kubernetes.

Kadibna waxaan si tartiib ah u eegi doonaa sida saxda ah ee hawlwadeenku u shaqeeyo, hawlaha caadiga ah ee la xalin karo. Waxaan kaliya tixgelin doonaa hawlaha caadiga ah sababtoo ah waxaan haysanaa waqti xaddidan. Oo wax kasta oo hawlwadeenku go'aamin karo lagama wada hadli doono.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Aan ka bilowno ku dhaqanka. Mashruucayagu gabi ahaanba waa il furan, markaa waxaad arki kartaa sida ay uga shaqeyso GitHub. Oo waxaad ka sii wadi kartaa tixgelinta haddii aad rabto inaad bilowdo, markaa waxaad ku bilaabi kartaa Hagaha Bilowga Degdegga ah.

Haddii aad rabto inaad si faahfaahsan u fahamto, markaa waxaanu isku daynaa inaanu ku ilaalino dukumentiyada qaab ka wanaagsan ama ka yar.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Aan ku bilowno dhibaato la taaban karo. Hawsha ugu horeysa, meesha aan dhammaanteen rabno inaan ka bilowno, waa inaan ku socodsiino tusaalaha ugu horreeya si uun. Sideen u bilaabi karaa ClickHouse aniga oo isticmaalaya hawlwadeenka, xitaa haddii aanan runtii garanayn sida ay u shaqeyso? Waxaan qoraynaa cadeyn, sababtoo ah... Dhammaan isgaarsiinta k8s waa isgaarsiin iyada oo loo marayo muujinta.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Tani waa mid kakan oo kale. Waxa aan ku iftiiminay casaanka waa waxa loo baahan yahay in aan diirada saarno. Waxaan ka codsaneynaa hawlwadeenka inuu abuuro koox lagu magacaabo demo.

Kuwani waa tusaalooyin aasaasi ah hadda. Kaydinta weli lama sharaxin, laakiin wax yar ka dib ayaan kaydinta ku soo noqon doonaa. Hadda, waxaanu ilaalin doonaa dhaqdhaqaaqyada horumarka kooxda.

Waxaan abuurnay muujinta. Waxaan u quudinnaa hawlwadeenkayaga. Wuu shaqeeyay, sixir buu sameeyay.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Waxaan eegnaa console-ka. Saddex qaybood ayaa xiiso leh: Pod, laba Adeeg, iyo StatefulSet.

Hawlwadeenku wuu shaqeeyay, waxaanan arki karnaa waxa dhabta ah ee uu abuuray.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Wuxuu abuuraa wax sidan oo kale ah. Waxaan leenahay StatefulSet, Pod, ConfigMap koobi kasta, ConfigMap ee kooxda oo dhan. Adeegyada ayaa loo baahan yahay sida meelaha laga soo galo kooxda.

Adeegyadu waa Adeegga Isku-dheelitirnaanta Load-ka waxaana sidoo kale loo isticmaali karaa nuqul kasta, jeex kasta.

Kooxdayada aasaasiga ahi waxay u egtahay sidan. Waxay ka timid hal nood.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Aan sii socono oo aan wax sii adkeeyo. Waxaan u baahanahay inaan jeexno kooxda.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Howlahayagu way sii kordhayaan, dhaqdhaqaaqyadu way bilaabmayaan. Waxaan rabnaa inaan ku darno jeex. Waxaan raacnaa horumarka. Waxaan bedeleynaa qeexitaankayaga. Waxaan ku tusineynaa in aan rabno laba jeex.

Kani waa isla fayl la mid ah kaas oo si firfircoon u kobcaya kobaca nidaamka. Kaydinta maya, kaydinta si dheeraad ah ayaa looga hadli doonaa, tani waa mawduuc gaar ah.

Waxaan quudinnaa hawlwadeenka YAML oo aragnaa waxa dhaca.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Hawlwadeenku wuu fikiray oo wuxuu sameeyay qaybahan soo socda. Waxaan horey u haysanay laba Pods, saddex Adeeg iyo, si lama filaan ah, 2 StatefulSets. Waa maxay sababta 2 StatefulSets?

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Jaantusku wuxuu ahaa sidan - tani waa xaaladdeennii bilawga ah, markii aan haysanay hal boodh.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Waxay noqotay sidan. Ilaa hadda wax walba waa sahlan yihiin, waa la soo koobay.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Maxayse u noqdeen laba StatefulSets? Halkan waxaan u baahanahay inaan hoos u dhigno oo aan ka wada hadalno su'aasha ah sida Pods loo maareeyo Kubernetes.

Waxaa jira shay la yiraahdo StatefulSet oo kuu ogolaanaya inaad ka abuurto set of Pods ka template. Qodobka ugu muhiimsan halkan waa Template. Oo waxaad bilaabi kartaa Pods badan adoo isticmaalaya hal template hal StatefulSet. Oo weedha muhiimka ah halkan waa "Pods badan oo hal template ah."

Oo waxaa jirtay tijaabin weyn oo ah in la sameeyo kutlada oo dhan, iyada oo la isugu geynayo hal StatefulSet. Way shaqayn doontaa, dhib kuma jirto. Laakiin waxaa jira hal digniin. Haddii aan rabno in aan soo ururinno koox kala duwan, taas oo ah, laga bilaabo noocyo kala duwan oo ClickHouse ah, ka dibna su'aalaha ayaa bilaabanaya. Haa, StatefulSet waxay samayn kartaa cusboonaysiinta duubista, halkaasna waxaad ku soo rogi kartaa nooc cusub, sharax inaad u baahan tahay inaad isku daydo wax ka badan noodhka isku mar.

Laakiin haddii aan hawsha ka saarno oo nidhaahno waxaan rabnaa inaan samayno koox gebi ahaanba kala duwan mana rabno inaan ka beddelno noocii hore oo aan u beddelno mid cusub annaga oo adeegsanayna casriyeyn wareeg ah, laakiin waxaan si fudud u rabnaa inaan abuurno koox kala duwan labadaba marka la eego. noocyada kala duwan ee ClickHouse iyo marka la eego kaydinta kala duwan. Waxaan rabnaa, tusaale ahaan, inaan ku samayno qaar ka mid ah nuqullo saxanno kala duwan ah, kuwa gaabis ah, guud ahaan, si aan si buuxda u dhisno koox kala duwan. Oo ay sabab u tahay xaqiiqda ah in StatefulSet uu ka sameeyo xal halbeeg ah hal qaab, ma jirto si loo sameeyo tan.

Fikir ka dib, waxa la go'aamiyay in aanu sidan u samayno. Mid walba waxaan ku haynaa nuqul ka mid ah StatefulSet u gaar ah. Waxaa jira xoogaa dib-u-dhac ku ah xalkan, laakiin ficil ahaan waxaa dhammaan si buuxda u soo koobay hawlwadeenka. Waxaana jira faa'iidooyin badan. Waxaan dhisi karnaa kooxda saxda ah ee aan rabno, tusaale ahaan, mid gebi ahaanba kala duwan. Sidaa darteed, kutlada aan ku hayno laba shards oo leh hal nuqul, waxaan yeelan doonaa 2 StatefulSets iyo 2 Pods si sax ah sababtoo ah waxaan u dooranay habkan sababaha kor lagu sheegay si aan u dhisno koox kala duwan.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Aan u soo laabano dhibaatooyinka la taaban karo. Kutladayada waxaan u baahanahay inaan habeyno isticmaalayaasha, i.e. waxaad u baahan tahay inaad sameyso qaar ka mid ah qaabeynta ClickHouse ee Kubernetes. Hawlwadeenku wuxuu bixiyaa dhammaan fursadaha tan.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Waxaan si toos ah ugu qori karnaa waxa aan rabno YAML. Dhammaan xulashooyinka qaabeynta ayaa si toos ah looga soo saaray YAML-kan oo la geliyay qaabeynta ClickHouse, kuwaas oo loo qaybiyay dhammaan kooxda.

Waxaad u qori kartaa sidan. Tani waa tusaale ahaan. Furaha sirta ah waa la qarin karaa Dhab ahaantii dhammaan xulashooyinka qaabeynta ClickHouse waa la taageeray. Waa kan tusaale uun.

Habaynta kooxda waxa loo qaybiyaa ConfigMap ahaan. Ficil ahaan, cusboonaysiinta ConfigMap ma dhacdo isla markaaba, markaa haddii kooxdu ay weyn tahay, markaa habka riixitaanka qaabeynta waxay qaadataa waqti. Laakiin waxaas oo dhan aad bay ugu habboon yihiin in la isticmaalo.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Aynu adkayno hawsha. Kooxdu way soo koraysaa. Waxaan rabnaa inaan ku celcelino xogta. Taasi waa, waxaan horay u haysanay laba shards, mid kasta oo nuqul ah, iyo isticmaalayaasha waa la habeeyey. Waan koraynaa oo waxaan rabnaa inaan sameyno ku celcelin.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Maxaan ugu baahanahay soo celinta?

Waxaan u baahanahay ZooKeeper. Gudaha ClickHouse, ku celcelinta waxaa lagu dhisay ZooKeeper. ZooKeeper ayaa loo baahan yahay si ay kala duwanaanshiyaha ClickHouse ay u yeeshaan isfaham ku saabsan xannibaadaha xogta ay ku jiraan ClickHouse.

ZooKeeper waxaa isticmaali kara qof kasta. Haddii shirkaddu leedahay ZooKeeper dibadda ah, markaa waa la isticmaali karaa. Haddii kale, waxaad ka soo dejisan kartaa kaydkayaga. Waxa jira rakibe ka dhigaya middan oo dhan mid fudud.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Oo jaantuska isdhexgalka ee nidaamka oo dhan wuxuu u soo baxaa sidan oo kale. Waxaan leenahay Kubernetes sida madal. Waxay fulisaa hawlwadeenka ClickHouse. Waxaan ku sawiray ZooKeeper halkan. Oo hawlwadeenku waxa uu la falgalaa ClickHouse iyo ZooKeeper labadaba. Taasi waa, natiijooyinka isdhexgalka.

Oo waxaas oo dhan waxay lagama maarmaan u yihiin ClickHouse inay si guul leh ugu soo celiyaan xogta k8s.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Aynu hadda eegno hawsha lafteeda, sida uu u ekaan doono muujinta ku-noqoshada.

Waxaan ku daraynaa laba qaybood bayaankeena. Marka hore waa halka laga heli karo ZooKeeper, taas oo noqon karta gudaha Kubernetes ama dibadda. Tani waa kaliya sharaxaad. Oo waxaan dalbannaa nuqullo. Kuwaas. waxaan rabnaa laba nuqul. Wadar ahaan, waa in aan haysanaa 4 boodh oo wax soo saarka ah. Waxaan xusuustaa kaydinta, waxay soo noqon doontaa wax yar ka dib. Kaydinta waa sheeko gaar ah.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Waxay ahayd sidan.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Waxay noqotaa sidan. Soo koobid ayaa lagu daray Midka 4-aad kuma haboona, waxaan aaminsanahay inay jiri karaan qaar badan oo iyaga ka mid ah. ZooKeeper-na waxaa lagu daraa dhinaca. Nidaamyadu waxay noqonayaan kuwo aad u adag.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Waana waqtigii lagu dari lahaa hawsha xigta. Waxaan ku dari doonaa Kaydinta Joogtada ah.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)Kaydinta Joogtada ah waxaan leenahay doorashooyin kala duwan.

Haddii aan ku soconno bixiyaha daruuraha, tusaale ahaan, adoo isticmaalaya Amazon, Google, markaa waxaa jira tijaabin weyn oo lagu isticmaalo kaydinta daruuraha. Aad bay u habboon tahay, way fiican tahay.

Waxaana jirta doorasho labaad. Tani waxaa loogu talagalay kaydinta maxalliga ah, marka aan haysanno saxanadaha maxalliga ah ee nood kasta. Doorashadani aad bay u adag tahay in la hirgeliyo, laakiin isla markaa waa wax soo saar badan.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Aan aragno waxa aan hayno ee ku saabsan kaydinta daruuraha.

Waxaa jira faa'iidooyin. Aad bay u fududahay in la habeeyo. Waxaan si fudud uga dalbanaa bixiyaha daruuraha oo fadlan na siiya kaydinta awoodda caynkaas ah iyo kuwan oo kale, kuwan oo kale iyo kuwan oo kale ah. Fasalada waxa u qorsheeya bixiyayaasha si madax banaan.

Waxaana jirta cillad. Qaar ka mid ah, tani waa cillad aan muhiim ahayn. Dabcan, waxaa jiri doona arrimo waxqabad. Aad bay ugu habboon tahay in la isticmaalo oo la isku halleyn karo, laakiin waxaa jira qaar ka mid ah cilladaha waxqabadka.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Iyo sababtoo ah ClickHouse waxa ay si gaar ah diiradda u saartaa wax soo saarka, mid ayaa laga yaabaa in uu xitaa sheego in ay tuujinayso wax kasta oo ay awooddo, taas oo ah sababta macaamiil badan ay isku dayaan in ay soo saaraan wax soo saarka ugu badan.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Iyo si aan uga faa'iidaysano, waxaan u baahanahay kaydinta deegaanka.

Kubernetes waxay bixisaa saddex qaybood oo la taaban karo oo loogu talagalay isticmaalka kaydinta maxalliga ah ee Kubernetes. Tani:

  • EmptyDir
  • HostPath.
  • Maxaliga ah

Aynu eegno sida ay u kala duwan yihiin iyo sida ay isaga mid yihiin.

Marka hore, dhammaan saddexda waji waxaan ku haynaa kaydinta - kuwani waa saxanadaha maxalliga ah oo ku yaal isla qanjidhada k8s. Laakiin waxay leeyihiin xoogaa kala duwanaansho ah.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Aan ku bilowno tan ugu fudud, i.e. emptyDir. Waa maxay tani ficil ahaan? Faahfaahintayada, waxaan ka codsaneynaa nidaamka weelka (inta badan Docker) inuu na siiyo galitaanka gal saxanka deegaanka.

Ficil ahaan, Docker wuxuu abuuraa gal ku meel gaar ah meel waddooyinkeeda ah oo uu ugu yeero xashiish dheer. Oo waxay bixisaa interface ah si ay u helaan.

Sidee tani u shaqayn doontaa waxqabadka-xikmad leh? Tani waxay ku shaqayn doontaa xawaaraha diskka deegaanka, i.e. Tani waxay si buuxda u gelaysaa furkaaga.

Laakiin kiiskani wuxuu leeyahay cilladiisa. Joogtaynta waa arrin shaki ku jiro. Marka ugu horreysa ee Docker uu ku dhaqaaqo weelasha, Joogtada ah waa lumay. Haddii Kubernetes uu rabo inuu u guuro Pod-kan disk kale sababo jira awgood, xogta ayaa lumi doonta.

Habkani wuxuu u fiican yahay imtixaannada, sababtoo ah waxay horeyba u muujinaysaa xawaaraha caadiga ah, laakiin wax halis ah doorashadani kuma habboona.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Sidaa darteed waxaa jira hab labaad. Tani waa hostPath. Haddii aad eegto bogga hore iyo kan, waxa aad arki kartaa hal farqi oo keliya. Galkayaga ayaa si toos ah uga dhaqaaqay Docker una guuray noodhka Kubernetes. Way ka yara fududdahay halkan. Waxaan si toos ah u qeexeynaa wadada nidaamka faylalka maxalliga ah halkaas oo aan jeclaan lahayn inaan ku kaydino xogtayada.

Habkani wuxuu leeyahay faa'iidooyin. Tani mar horeba waa joogtayn dhab ah, iyo mid caadi ah taas. Waxaan haysan doonaa xogta lagu duubay diskka ciwaanka qaar.

Waxaa kaloo jira khasaare. Tani waa kakanaanta maamulka. Kubernetes-kayaga ayaa laga yaabaa inay rabaan inay u raraan Boodhka udgoon kale oo jireed. Waana halka ay DevOps ka soo gasho ciyaarta. Waa inuu si sax ah u sharaxaa nidaamka oo dhan in boodhkan loo wareejin karo qanjidhadaas oo aad wax ku dhejiso waddooyinkan, oo aan ka badnayn hal nood markiiba. Aad bay u adag tahay.

Gaar ahaan ujeeddooyinkan, waxaan ku samaynay qaab-dhismeedka hawlwadeenkayaga si aan u qarsano dhammaan kakanaantan. Oo waxaad si fudud u odhan kartaa: "Waxaan rabaa in aan haysto hal tusaale oo ClickHouse ah noodh kasta oo jireed iyo sida iyo dariiqa noocaas ah."

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Laakiin ma nihin kuwa kaliya ee u baahan baahidan, sidaas darteed mudanayaasha ka socda Kubernetes lafteeda ayaa sidoo kale fahamsan in dadku rabaan inay helaan saxanadaha jireed, si ay u bixiyaan lakab saddexaad.

Waxa loo yaqaan local. Dhab ahaantii ma jiro farqi u dhexeeya sawirkii hore. Kaliya ka hor intaanay lagama maarmaan ahayn in gacanta lagu xaqiijiyo inaanan ku wareejin karin boodhadhkan min noodhka ilaa noodhka, sababtoo ah waa in lagu dhejiyaa qaar ka mid ah dariiqyada jireed ee deegaanka, laakiin hadda aqoontan oo dhan waxay ku qoran tahay Kubernetes lafteeda. Oo waxay soo baxday inay aad u fududahay in la habeeyo.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Aan u soo laabano dhibkeena wax ku oolka ah. Aan ku soo noqonno qaabka YAML. Halkan waxaan ku haynaa kayd dhab ah. Waan ku soo laabannay. Waxaanu dejinay qaabka caadiga ah ee VolumeClaim sida k8s. Oo waxaan ku qeexnaa nooca kaydinta aan rabno.

Taas ka dib, k8s ayaa codsan doona kaydinta. Waxay nooga qoondayn doontaa StatefulSet. Oo dhamaadka waxay noqon doontaa in la tuuro ee ClickHouse.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Waxaan lahaa nidaamkan. Kaydinta Joogtada ah waxay ahayd casaan, taasoo u muuqatay inay muujinayso in loo baahan yahay in la sameeyo.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Oo waxay noqotaa cagaar. Hadda ClickHouse ee nidaamka kooxda k8s gabi ahaanba waa la soo gabagabeeyay. Waxaan leenahay shards, nuqul ka mid ah, ZooKeeper, waxaan leenahay joogto ah oo dhab ah, kaas oo loo fuliyo si uun ama si kale. Nidaamku si buuxda ayuu u shaqeeyaa.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Waxaan sii wadeynaa inaan ku noolaano. Kooxdayadu way soo koraysaa. Alexey wuu isku dayaa, oo siidaayaa nooc cusub oo ClickHouse ah.

Hawl wax ku ool ah ayaa soo baxda - si loo tijaabiyo nooca cusub ee ClickHouse ee kutladayada. Iyo, dabiici ahaan, ma rabtid in aad wada bixisid; waxaad rabtaa in aad nuqul cusub ku dhejiso hal nuqul oo ka mid ah geeska fog, lagana yaabo in aysan ahayn hal nooc oo cusub, laakiin laba mar, sababtoo ah marar badan ayay soo baxaan.

Maxaan ka dhihi karnaa arrintan?

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Halkan waxaan ku haynaa fursad noocaas ah. Kuwani waa jaangooyooyin. Waxaad qori kartaa in hawlwadeenkaagu uu si buuxda kuu ogolaado inaad dhisto koox kala duwan. Kuwaas. habayn, laga bilaabo dhammaan nuqullada ku jira farabadan, oo ku dhammaanaya nuqul kasta oo shakhsi ah, nooca aan rabno ClickHouse, nooca aan rabno kaydinta. Waxaan si buuxda u habeyn karnaa kooxda qaabeynta aan u baahanahay.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Aynu gudaha u yara sii yara dhuuxno. Taas ka hor, waxaan ka hadalnay sida ClickHouse-operator u shaqeeyo marka loo eego waxyaabaha gaarka ah ee ClickHouse.

Hadda waxaan jeclaan lahaa inaan dhawr eray ka idhaahdo sida hawlwadeen kasta u shaqeeyo guud ahaan, iyo sidoo kale sida uu ula falgalo K8s.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Aynu marka hore eegno la falgalka K8-yada. Maxaa dhacaya markaan kubectl codsano? Walxahayagu waxay ku dhex muuqdaan etcd API.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Tusaale ahaan, walxaha aasaasiga ah ee Kubernetes: pod, StatefulSet, adeeg, iyo wixii la mid ah liiska hoostiisa.

Isla mar ahaantaana, waxba jidh ahaan weli ma dhicin. Walxahaan waa in lagu sameeyaa kutlada.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Ujeedadan awgeed, koontaroole ayaa soo baxaya. Kantarooluhu waa qayb gaar ah oo k8s ah oo xaqiijin kara sharaxaadahan. Wuu yaqaan sida iyo waxa la sameeyo jidh ahaan. Wuxuu yaqaanaa sida loo maamulo weelasha, waxa loo baahan yahay in lagu habeeyo halkaas si server-ku u shaqeeyo.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Oo waxay ka dhigaysaa walxahayaga K8s.

Laakiin waxaan rabnaa in aan ku shaqeyno kaliya pods iyo StatefulSets, waxaan rabnaa in aan abuurno ClickHouseInstallation, i.e. shay nooca ClickHouse ah, si aan ugu shaqeyno guud ahaan hal. Ilaa hadda ma jirto suurtogalnimadaas.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Laakiin K8s waxay leedahay shay wanaagsan oo soo socda. Waxaan rabnaa inaan helno meel la mid ah hay'addan adag oo kooxdeenna laga soo ururin doono pods iyo StatefulSet.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Maxaase loo baahan yahay in arrintan loo sameeyo? Marka hore, Qeexida Kheyraadka Gaarka ah ayaa soo galaysa sawirka. Waa maxay? Tani waa sharraxaad loogu talagalay K8s, inaad lahaan doonto hal nooc oo xog dheeraad ah, oo aan rabno inaan ku darno kheyraad gaar ah pod, StatefulSet, kaas oo noqon doona mid gudaha ku adag. Tani waa sharaxaad ku saabsan qaabka xogta.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Waxaan sidoo kale halkaas ugu dirnaa kubectl apply. Kubernetes ayaa si farxad leh u qaatay.

Oo hadda kaydintayada, shayga ku jira etcd wuxuu leeyahay fursad uu ku duubo kheyraad gaar ah oo la yiraahdo ClickHouseInstallation.

Laakiin hadda wax intaas ka badan ma dhici doono. Taasi waa, haddii aan hadda abuurno faylka YAML ee aan eegnay sharraxaadda shards iyo nuqullada oo aan niraahno "kubectl apply," ka dib Kubernetes wuu aqbali doonaa, gelinayaa etcd oo wuxuu dhahaa: "Weyn, laakiin ma aqaan waxaan sameeyo leh. Ma garanayo sida loo ilaaliyo ClickHouseInstallation."

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Sidaa awgeed, waxaan u baahanahay qof caawiya Kubernetes u adeega nooca xogta cusub. Dhanka bidix waxaan ku leenahay maamule Kubernetes hooyo kaas oo la shaqeeya noocyada xogta asalka ah. Dhanka midigna waa inaan haysanaa kontorool caado ah oo la shaqeyn kara noocyada xogta gaarka ah.

Oo si kale ayaa loo yaqaan hawlwadeen. Waxaan si gaar ah ugu soo daray halkan sida Kubernetes, sababtoo ah sidoo kale waxaa lagu fulin karaa meel ka baxsan K8s. Inta badan, dabcan, dhammaan hawl-wadeennada waxaa lagu fuliyay Kubernetes, laakiin ma jiraan wax ka hortagaya inay bannaanka istaagaan, sidaas darteed halkan si gaar ah ayaa loo raray.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Iyo markeeda, kantaroolaha gaarka ah, oo sidoo kale loo yaqaan hawlwadeenka, wuxuu la falgalaa Kubernetes isagoo sii maraya API. Waxay horeba u taqaan sida loola falgalo API-ga. Oo wuxuu hore u yaqaanay sida loo hirgeliyo wareegga adag ee aan rabno inaan ka samayno kheyraad gaar ah. Tani waa dhab ahaan waxa hawlwadeenku sameeyo.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Sidee u shaqeeyaa hawlwadeenku? Aynu eegno dhanka midig si aan u aragno sida uu u sameeyo. Aynu ogaano sida hawlwadeenku u hirgeliyo waxaas oo dhan iyo sida isdhexgalka dheeraadka ah ee K8s u dhaco.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Hawlwadeenku waa barnaamij. Waxay ku jihaysan tahay dhacdo. Hawlwadeenku waxa uu ku biiraa dhacdooyinka isaga oo isticmaalaya Kubernetes API. Kubernetes API wuxuu leeyahay meelo laga soo galo halkaas oo aad iska qori karto dhacdooyinka. Oo haddii ay wax isbeddelaan K8s, markaa Kubernetes waxay u soo dirtaa dhacdooyinka qof walba, i.e. Qof kasta oo iska diiwaan galiyay barta API wuxuu heli doonaa ogeysiisyo.

Hawlwadeenku waxa uu ku biirayaa dhacdooyinka waana in uu sameeyo nooc falcelin ah. Shaqadeedu waa inay ka jawaabto dhacdooyinka soo baxaya.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Dhacdooyinka waxaa keenay cusbooneysiin gaar ah. Faylkeena YAML oo leh sharaxaad ClickHouseInstallation ayaa yimid. Waxa uu u aaday etcd iyada oo loo marayo kubectl apply. Dhacdo ayaa halkaas ka dhalatay, natiijadiina dhacdadani waxay ku timid hawl-wadeenka ClickHouse. Hawlwadeenku wuxuu helay tilmaantan. Waana inuu wax sameeyo. Haddii cusboonaysiin u yimid shayga ClickHouseInstallation, markaa waxaad u baahan tahay inaad cusboonaysiiso kutlada. Hawlwadeenna hawshiisu waa inuu cusboonaysiiyo kutlada.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

muxuu sameynayaa? Marka hore, waxaan u baahanahay inaan dejino qorshe hawleed waxa aan ku samayn doono cusboonaysiintan. Cusboonaysiinta waxay noqon kartaa mid aad u yar, i.e. ku yar fulinta YAML, laakiin waxay keeni kartaa isbedelo aad u weyn kooxda. Sidaa darteed, hawlwadeenku wuxuu abuuraa qorshe, ka dibna wuu ku dhegan yahay.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Marka loo eego qorshahan, wuxuu bilaabayaa inuu ku karsado qaab-dhismeedkan gudaha si uu u helo boodhyo, adeegyo, i.e. hawshiisa ugu weyni waa maxay. Tani waa sida loo dhiso kooxda ClickHouse gudaha Kubernetes.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Hadda aan taabto arrin xiiso leh. Tani waa qaybinta mas'uuliyadda ka dhaxaysa Kubernetes iyo hawlwadeenka, i.e. waxa Kubernetes sameeyo, waxa hawlwadeenku sameeyo, iyo sida ay isula falgalaan.

Kubernetes ayaa mas'uul ka ah waxyaalaha nidaamka, i.e. qalab aasaasi ah oo loo tarjumi karo sida nidaamka- baaxadda. Kubernetes wuu yaqaanaa sida loo furo pods, sida dib loo bilaabo weelasha, sida loo kordhiyo mugga, sida loola shaqeeyo ConfigMap, i.e. wax kasta oo lagu magacaabi karo nidaam.

Hawl-wadeenadu waxay ka shaqeeyaan aagagga. Hawlwadeen kasta waxa loo sameeyay maadada u gaarka ah. Waxaan u samaynay ClickHouse.

Shaqaaluhuna si sax ah ayuu ula falgalaa dhinaca mawduuca, sida ku darista nuqul, samaynta jaantus, dejinta kormeerka. Tani waxay keenaysaa kala qaybsanaan.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Aynu eegno tusaale wax ku ool ah oo ku saabsan sida qaybinta mas'uuliyaddani u dhacdo marka aan samayno ku-darka ficil-celinta.

Hawlwadeenku wuxuu helayaa hawl - inuu ku daro nuqul. Muxuu qabtaa hawlwadeenku? Hawlwadeenku waxa uu xisaabin doonaa in loo baahan yahay in la abuuro StatefulSet cusub, kaas oo ay tahay in lagu qeexo qaab-dhismeedka noocaas ah iyo kuwan oo kale, sheegashada mugga.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Dhammaantii wuu diyaariyey oo u sii gudbiyay K8s. Wuxuu sheegay inuu u baahan yahay ConfigMap, StatefulSet, Volume. Kubernetes wuu shaqeeyaa. Wuxuu wax ka dhigaa unugyada aasaasiga ah ee uu ku shaqeeyo.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Kadibna ClickHouse-operator ayaa mar kale soo galay ciyaarta. Waxa uu hore u haystay boodh jidheed oo uu horeba wax u qaban karo. Iyo ClickHouse-operator mar kale wuxuu u shaqeeyaa shuruudaha domainka. Kuwaas. Gaar ahaan ClickHouse, si loogu daro nuqul ka mid ah kutlada, waa inaad, marka hore, habayso xogta schema ee ka jirta kutladan. Marka labaadna, nuqulkan waa in lagu daraa la socodka si si cad loo raad raaco. Hawlwadeenku waxa uu horeba u habeeyey tan.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Oo kaliya ka dib in ClickHouse laftiisa ayaa soo galay ciyaarta, i.e. qayb kale oo heer sare ah. Kani waa horeba xog-ururin Waxay leedahay tusaale u gaar ah, nuqul kale oo habaysan oo diyaar u ah inuu ku biiro kooxda.

Waxaa soo baxday in silsiladda fulinta iyo qaybinta mas'uuliyadda marka lagu daro nuqulku ay aad u dheer tahay.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Waxaan sii wadnaa hawlaheenna wax ku oolka ah. Haddii aad hore u lahayd koox, waad guuri kartaa qaabaynta.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Waxaan u samaynay si aad isla markiiba ugu dhejiso xml jira, kaas oo ClickHouse fahmayo.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Waad hagaajin kartaa ClickHouse. Soo dejinta kaliya waa waxa aan ka hadlay markii aan sharaxayay hostPath, kaydinta maxalliga ah. Sidan ayaa ah sida saxda ah loo sameeyo geynta aagagga.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Hawsha la taaban karo ee xigta waa la socodka.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Haddii kooxdeennu isbedesho, markaa waxaan u baahanahay inaan si xilliyo ah u habaynno la socodka.

Aan eegno jaantuska. Waxaan horay u eegnay fallaadhaha cagaaran halkan. Hadda aynu eegno fallaadhaha cas. Tani waa sida aan rabno inaan ula socono kooxdayada. Sida cabbirada kooxda ClickHouse ay u galaan Prometheus, ka dibna u galaan Grafana.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Waa maxay dhibka ka haysta la socodka? Maxaa tan loogu soo bandhigay nooc ka mid ah guulaha? Dhibaatadu waxay ku jirtaa dhaqdhaqaaqa. Markaan haysano hal koox oo ay taagan tahay, waxaan samayn karnaa kormeer hal mar oo aynaan dhibin.

Laakiin haddii aan haysano kooxo badan, ama shay ayaa si joogto ah isbeddelaya, markaa geeddi-socodka waa mid firfircoon. Iyo dib-u-habaynta joogtada ah ee kormeerku waa khasaare hanti iyo waqti, i.e. xataa caajisnimo kaliya. Tani waxay u baahan tahay in si toos ah loo sameeyo. Dhibtu waxay ku jirtaa dhaq-dhaqaaqa hawsha. Shaqaaluhuna si fiican ayuu tan u otomaatigeeyaa.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Sidee kooxdeennu u horumartay? Bilowgii sidaas buu ahaa.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Markaa wuxuu ahaa sidan.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Aakhirkiina sidan ayuu noqday.

La socodkana waxaa si toos ah u sameeya hawlwadeenka. Hal dhibic oo laga soo galo.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Kaliya marka laga baxo waxaan eegnaa dashboard-ka Grafana si aan u aragno sida nolosha kooxdeennu ay u karkarinayso gudaha.

Jid ahaan, dashboardka Grafana sidoo kale waxaa si toos ah loogu qaybiyaa hawlwadeenkeena koodhka isha. Waad ku xidhi kartaa oo isticmaali kartaa. Our DevOps ayaa i siisay sawirkan.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Halkee ayaan jeclaan lahayn inaan aadno xiga? Tani:

  • Samee qalabaynta tijaabada Hawsha ugu muhiimsan waa in si toos ah loo tijaabiyo noocyo cusub.
  • Waxaan sidoo kale runtii rabnaa inaan otomaatig ka dhigno la-qabsiga ZooKeeper. Waxaana jira qorshayaal lagu dhex dhexaadinayo ZooKeeper-operator. Kuwaas. Xiriiriye ayaa loo qoray ZooKeeper waana macquul in labada hawlwadeen ay bilaabaan inay is dhexgalaan si ay u dhisaan xal ku habboon.
  • Waxaan rabnaa inaan sameyno calaamado muhim ah oo kakan.
  • Waxa aan ku iftiimiyay cagaarka in aanu ku soo dhawaanayno dhaxalka Templates - DONE, tusaale ahaan soo daynta soo socota ee hawlwadeenku waxa aanu horeba u yeelan doonaa dhaxalka qaab-dhismeedka. Kani waa qalab awood leh oo kuu ogolaanaya inaad dhisto qaabayn adag oo ka kooban qaybo.
  • Oo waxaan rabnaa automation ee hawlaha adag. Midda ugu weyn waa Dib-u-sharing.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Aynu soo qaadano natiijooyin dhexdhexaad ah.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Maxaa natiijadu tahay? Oo ma mudan tahay in la sameeyo ama maya? Xitaa ma lagama maarmaan ma tahay in la isku dayo in la jiido xogta Kubernetes oo loo isticmaalo hawlwadeenka guud ahaan iyo gaar ahaan hawlwadeenka Alitnity?

Marka la soo saaro waxaan helnaa:

  • Fududeynta muhiimka ah iyo automation ee qaabeynta, geynta, iyo dayactirka.
  • La socodka isla markiiba ku dhex dhisan
  • Iyo qaabab habaysan oo diyaarsan in la isticmaalo ee xaaladaha adag. Ficilka sida ku darista nuqul uma baahna in gacanta lagu sameeyo. Xiriiriyaha ayaa tan sameeya.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Hal su'aal oo kaliya ayaa hadhay Waxaan horeyba ugu haynay xog-ururin ku jirta Kubernetes, wax-abuurista. Ka waran waxqabadka xalkan oo kale, gaar ahaan maadaama ClickHouse loo hagaajiyay waxqabadka?

Jawaabtu waa wax walba waa fiican yihiin! Ma sii faahfaahin doono, tani waa mowduuca warbixin gaar ah.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Laakiin waxaa jira mashruuc sida TSBS. Waa maxay hawsheeda ugu weyn? Kani waa imtixaan hawlqabad database ah. Tani waa isku day lagu barbardhigay diiran diiran, jilicsan iyo jilicsan.

Sidee ayuu u shaqeeyaa? Hal xog ayaa la sameeyay Kadibna xogtan waxa lagu socodsiiyaa kaydad xogeedyo kala duwan iyadoo la isticmaalayo isla imtixaano isku mid ah. Xog kastaa waxay ku xallisaa hal dhibaato habka uu garanayo. Kadibna waxaad is barbardhigi kartaa natiijooyinka.

Waxay hore u taageertaa kayd badan oo xog ururin ah. Waxaan aqoonsaday saddex ugu waaweyn. Tani:

  • TimecaleDB.
  • InfluxDB
  • ClickHouse.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Isbarbardhigga ayaa sidoo kale lagu sameeyay xal kale oo la mid ah. Isbarbardhigga RedShift. Isbarbardhigga ayaa lagu sameeyay Amazon. ClickHouse ayaa sidoo kale aad uga horreeya qof kasta oo arrintan ku saabsan.

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Maxaa gunaanad laga soo saari karaa waxaan idhi?

  • DB gudaha Kubernetes waa suurtagal. Malaha mid kasta waa suurtagal, laakiin guud ahaan waxay u egtahay inay suurtogal tahay. ClickHouse ee Kubernetes waa hubaal iyadoo la kaashanayo hawlwadeenkayaga.
  • Hawlwadeenku waxa uu caawiyaa in uu si toos ah u habeeyo oo runtii nolosha u fududeeyo.
  • Waxqabadku waa caadi.
  • Waxayna noo muuqataa in tan la isticmaali karo oo ay tahay in la isticmaalo.

Isha furan - nagu soo biir!

Sida aan horayba u sheegay, hawlwadeenku waa badeecad gebi ahaanba furan, markaa aad bay u fiicnaan lahayd haddii tirada ugu badan ee dadku isticmaalaan. Nagu soo biir! Dhammaantiin waan idin sugaynaa!

Mahadsanid dhammaan!

Su'aalahaada

Hawl-wadeenka Kubernetes ee maaraynta kooxaha xogta. Vladislav Klimenko (Altinity, 2019)

Waad ku mahadsan tahay warbixinta! Magacaygu waa Anton. Waxaan ka imid SEMrush Waxaan la yaabanahay waxa ku jira jarista. Waxaan maqalnaa wax ku saabsan la socodka, laakiin ma jiraan wax ku saabsan gooynta, haddii aan ka hadalno kooxda oo dhan. Tusaale ahaan, waxaanu kor u qaadnay kutlada qalabka. Oo waxaanu isticmaalnaa gooyn dhexe, anagoo ku ururinayna taallo guud anagoo adeegsanayna hab caadi ah. Ka dibna halkaas ayaanu ka helnaa xogta na danaysa.

Su'aal wanaagsan, tusaale ahaan gelitaanka liiska wax-qabadka. Hawlwadeenkayaga si otomaatig ah uma samayn weli. Weli wuu soo korayaa, mashruucu wali wuu yar yahay. Waxaan fahamsanahay baahida loo qabo jarista. Tani sidoo kale waa mawduuc aad muhiim u ah. Waxayna u badan tahay inayna ka muhiimsanayn la socodka. Laakin marka hore liiska fulinta waxa uu ahaa la socodka. Waxaa jiri doona gooyn Dabiici ahaan, waxaan isku dayeynaa inaan otomaatig u sameyno dhammaan dhinacyada nolosha kooxda. Sidaa darteed, jawaabtu waa in wakhtigan xaadirka ah hawlwadeenka, nasiib daro, ma garanayo sida tan loo sameeyo, laakiin waxay ku jirtaa qorshayaasha, waan sameyn doonaa. Haddii aad rabto inaad ku biirto, markaas jiid codsi, fadlan.

Hello! Waad ku mahadsan tahay warbixinta! Waxaan qabaa su'aal caadi ah oo la xiriirta Volumes Joogtada ah. Marka aan samayno qaabaynta hawlwadeenkan, sidee hawlwadeenku u go'aamin karaa noodhka aanu ku leenahay disk ama gal gaar ah? Waa in aan marka hore u sharaxnaa isaga in fadlan dhig our ClickHouse on noodes kuwan haysta disk?

Ilaa hadda inta aan fahmayo, su'aashani waa sii wadida kaydinta maxaliga ah, gaar ahaan qaybta martida loo yahay. Tani waxay la mid tahay in la sharaxo nidaamka oo dhan in boodhka loo baahan yahay in lagu soo bandhigo qanjidhada noocan oo kale ah, kaas oo aan haysano disk jir ahaan ku xiran, kaas oo lagu dhejiyo jidkaas iyo sida. Tani waa qayb dhan oo aan si qoto dheer u taabtay sababtoo ah jawaabta halkaas ayaa aad u weyn.

Si kooban waxay u egtahay sidan. Dabiici ahaan, waxaan u baahanahay inaan bixino qiyaasahan. Waqtigan xaadirka ah, ma jirto wax bixin firfircoon oo kaydinta maxalliga ah, markaa DevOps waa inay gooyaan saxanadaha laftooda, muggaan. Oo waa inay sharaxaan Kubernetes bixinta in aad lahaan doonto tirooyin joogto ah oo caynkaas ah iyo kuwan oo kale, kuwaas oo ku yaal noodhkan iyo kuwan oo kale. Markaa waxaad u baahan doontaa inaad u sharaxdo Kubernetes in boodhadhka u baahan sidan oo kale iyo fasalka kaydinta maxalliga ah ay u baahan yihiin in lagu jiheeyo oo keliya kuwan iyo noodhkan oo kale iyadoo la isticmaalayo calaamado. Ujeedooyinkan awgeed, hawlwadeenku waxa uu awood u leeyahay in uu ku meeleeyo nooc ka mid ah calaamadda iyo hal tusaale martigeliyahaba. Oo waxay soo baxday in boodhadhka ay Kubernetes ku socon doonaan si ay ugu shaqeeyaan kaliya qanjidhada buuxinaya shuruudaha, calaamadaha, ereyada fudud. Maamulayaashu waxay ku qoraan calaamadaha iyo saxanka bixinta gacanta. Kadibna way miisaamaysaa.

Waana doorashada saddexaad, maxalli ah, taas oo ka caawisa in tan la fududeeyo. Sidaan horeyba u sheegay, tani waa shaqo aad u adag oo ku saabsan hagaajinta, taas oo ugu dambeyntii caawisa in la helo waxqabadka ugu sarreeya.

Waxaan qabaa su'aal labaad oo tan la xiriirta. Kubernetes waxaa loo qaabeeyey si aan macno noogu lahayn haddii aan lumino noodhka iyo haddii kale. Maxaan samaynaa kiiskan haddii aan luminay noodhka halka uu jeexjeexaygu ka laadlaadsan yahay?

Haa, Kubernetes ayaa markii hore loo meeleeyay in xidhiidhkayaga lafahayaga uu yahay sida lo'da, laakiin halkan nala jooga disk kastaa wuxuu noqonayaa wax la mid ah xayawaanka. Waxaa jirta dhibaato noocaas ah oo aynaan iska tuuri karin. Iyo horumarinta Kubernetes waxay ku socotaa jihada aysan suurtagal ahayn in si buuxda loogu daaweeyo falsafada, sida haddii ay tahay kheyraad gebi ahaanba la tuuray.

Hadda su'aal la taaban karo. Maxaa la sameeyaa haddii aad lumiso noodhka uu saxanku ku jiray? Halkan dhibaatada waxaa lagu xalin karaa heer sare. Xaaladda ClickHouse, waxaan haynaa nuqullo ka shaqeeya heer sare, i.e. heerka ClickHouse.

Waa maxay dabeecadda ka dhalanaysa? DevOps ayaa mas'uul ka ah hubinta in xogta aysan lumin. Waa inuu si sax ah u dejiyaa ku celcelinta waana inuu hubiyaa in ku celcelintu socoto. Nuqulka heerka ClickHouse waa inuu lahaadaa xog nuqul ah. Tani maaha dhibka uu hawlwadeenku xaliyo. Oo ma aha dhibaatada uu Kubernetes laftiisa xalliyo. Tani waa heerka ClickHouse.

Maxaa la sameeyaa haddii qanjidhkaaga birta ahi ka dhaco? Oo waxay soo baxday inaad u baahan doonto inaad ku rakibto mid labaad, si sax ah u bixi saxanka, oo aad ku dhejiso calaamadaha. Taas ka dib, waxay buuxin doontaa shuruudaha Kubernetes ay ku bilaabi karto tusaale ahaan. Kubernetes ayaa bilaabi doona. Tirada gaboobyadu kuma filna inay buuxiyaan lambarka la cayimay. Waxay mari doontaa wareegga aan tusay. Iyo heerka ugu sarreeya, ClickHouse waxay fahmi doontaa inaan galnay nuqul, wali waa madhan oo waxaan u baahanahay inaan bilowno u wareejinta xogta. Kuwaas. Habkani weli si toos ah uma samayn.

Waad ku mahadsan tahay warbixinta! Markay dhammaan noocyada waxyaallaha xunxun dhacaan, hawlwadeenku wuu shil gala oo dib ayuu u bilaabmaa, isla markaas ayay dhacdooyinku yimaadaan, si uun ma u maaraysaa tan?

Maxaa dhacaya haddii hawlwadeenku shil galo oo uu dib u bilaabo, sax?

Haa Isla markaas ayay dhacdooyin soo gaadheen.

Hawsha waxa la samaynayo kiiskan waxa qayb ahaan la wadaaga hawlwadeenka iyo Kubernetes. Kubernetes waxay awood u leedahay inay dib u daawato dhacdo dhacday. Wuu ku celiyay. Hawsha hawlwadeenku waa inuu hubiyo in marka diiwaanka dhacdada dib loogu soo celiyo isaga, dhacdooyinkani waa kuwo awood leh. Iyo si ay u soo noqnoqoshada dhacdo isku mid ah aysan u jabin nidaamkayaga. Shaqaalaheennuna wuu la qabsanayaa hawshan.

Hello! Waad ku mahadsan tahay warbixinta! Dmitry Zavyalov, shirkadda Smedova. Ma jiraan qorshayaal lagu kordhinayo kartida lagu habeynayo haproxy hawlwadeenka? Waxaan xiisayn lahaa qaar kale oo dheellitiran oo aan ahayn kan caadiga ah, si ay u noqoto mid caqli badan oo ay u fahamto in ClickHouse uu runtii jiro.

Ma waxaad ka hadlaysaa Ingress?

Haa, ku beddel Ingress haproxy. Haproxy-ga waxaad ku qeexi kartaa topology-ga kooxda halka ay ku leedahay nuqulo.

Weli kamaan fikirin. Haddii aad u baahan tahay oo aad sharaxi karto sababta loogu baahan yahay, markaas waxaa suurtogal ah in la hirgeliyo, gaar ahaan haddii aad rabto inaad ka qaybgasho. Waan ku farxi doonaa inaan tixgelinno ikhtiyaarka. Jawaabta oo kooban waa maya, hadda ma lihin shaqadan oo kale. Waad ku mahadsan tahay tilmaanta, waan eegi doonaa arrintan. Oo haddii aad sidoo kale sharaxdo kiiska isticmaalka iyo sababta loogu baahan yahay ficil ahaan, tusaale ahaan, ku samee arrimaha GitHub, markaa taasi waxay noqon doontaa mid weyn.

Horay u lahaa.

Fiican Wixii talo ah waan u furannahay. Haproxyna waxaa lagu daray liiska wax-qabadka. Liistada todo waa sii kordheysa, weli ma soo yaraan. Laakiin tani way fiican tahay, waxay la macno tahay in badeecadu ay ku jirto baahida.

Source: www.habr.com

Add a comment