Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Tá an tuarascáil dírithe ar shaincheisteanna praiticiúla a bhaineann le hoibreoir a fhorbairt i Kubernetes, ag dearadh a ailtireachta agus a bhunphrionsabail oibriúcháin.

Sa chéad chuid den tuarascáil déanfaimid breithniú ar:

  • cad is oibreoir ann in Kubernetes agus cén fáth a bhfuil gá leis;
  • conas go díreach a dhéanann an t-oibreoir bainistiú na gcóras casta a shimpliú;
  • cad is féidir agus nach féidir leis an oibreoir a dhéanamh.

Ansin, déanaimis dul ar aghaidh go dtí plé a dhéanamh ar struchtúr inmheánach an oibreora. Breathnaímid ar ailtireacht agus oibriú an oibreora céim ar chéim. Breathnaímid air go mion:

  • idirghníomhú idir an t-oibreoir agus Kubernetes;
  • cad iad na feidhmeanna a ghlacann an t-oibreoir air agus na feidhmeanna a tharmligeann sé chuig Kubernetes.

Breathnaímid ar shards agus macasamhla bunachar sonraí a bhainistiú i Kubernetes.
Ansin, déanfaimid plé ar shaincheisteanna stórála sonraí:

  • conas oibriú le Stóráil Marthanach ó thaobh oibreora de;
  • na contúirtí a bhaineann le Stóráil Áitiúil a úsáid.

Sa chuid dheireanach den tuarascáil, breithneoimid samplaí praiticiúla den chur i bhfeidhm clickhouse-oibreoir le Amazon nó Google Cloud Service. Tá an tuarascáil bunaithe ar shampla de thaithí forbartha agus oibriúcháin oibreora do ClickHouse.

Físeán:

Is é mo ainm Vladislav Klimenko. Sa lá atá inniu bhí mé ag iarraidh labhairt faoinár dtaithí maidir le hoibreoir a fhorbairt agus a oibriú, agus is oibreoir speisialaithe é seo chun cnuasaigh bunachar sonraí a bhainistiú. Mar shampla CliceáilHouse-oibreoir chun braisle ClickHouse a bhainistiú.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Cén fáth a bhfuil deis againn labhairt faoin oibreoir agus ClickHouse?

  • Tacaímid agus forbraimid ClickHouse.
  • Faoi láthair, táimid ag iarraidh ár gcion a dhéanamh go mall le forbairt ClickHouse. Agus táimid sa dara háit i ndiaidh Yandex i dtéarmaí líon na n-athruithe a rinneadh ar ClickHouse.
  • Táimid ag iarraidh tionscadail bhreise a chruthú don éiceachóras ClickHouse.

Ba mhaith liom a insint duit faoi cheann de na tionscadail seo. Tá sé seo faoi ClickHouse-oibreoir do Kubernetes.

I mo thuarascáil ba mhaith liom tagairt a dhéanamh ar dhá ábhar:

  • Is é an chéad ábhar ná conas a oibríonn ár n-oibreoir bainistíochta bunachar sonraí ClickHouse i Kubernetes.
  • Is é an dara topaic ná conas a oibríonn oibreoir ar bith, ie an chaoi a n-idirghníomhaíonn sé le Kubernetes.

Mar sin féin, trasnaíonn an dá cheist seo ar fud mo thuarascáil.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Cé a mbeadh suim aige éisteacht lena bhfuil mé ag iarraidh a insint?

  • Is mó suime a bheidh ann dóibh siúd a oibríonn oibreoirí.
  • Nó dóibh siúd ar mian leo a gcuid féin a dhéanamh chun tuiscint a fháil ar conas a oibríonn sé go hinmheánach, conas a idirghníomhaíonn an t-oibreoir le Kubernetes, agus cad iad na gaistí a d'fhéadfadh a bheith ann.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Chun an tuiscint is fearr a fháil ar an méid a phléfaimid inniu, is smaoineamh maith é fios a bheith agat conas a oibríonn Kubernetes agus roinnt bunoiliúint scamall a bheith agat.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Cad é ClickHouse? Is bunachar sonraí colún é seo le gnéithe sainiúla chun fiosrúcháin anailíse a phróiseáil ar líne. Agus tá sé go hiomlán foinse oscailte.

Agus tá sé tábhachtach dúinn gan a fhios ach dhá rud. Ní mór duit fios a bheith agat gur bunachar sonraí é seo, agus mar sin beidh an méid a déarfaidh mé leat infheidhme maidir le beagnach aon bhunachar sonraí. Agus ar an bhfíric go bhfuil scálaí ClickHouse DBMS go han-mhaith, tugann sé scalability beagnach líneach. Agus mar sin, is stát nádúrtha é an stát braisle do ClickHouse. Agus is mó suim againn i bplé conas freastal ar bhraisle ClickHouse i Kubernetes.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Cén fáth a bhfuil gá leis ann? Cén fáth nach féidir linn leanúint ar aghaidh ag feidhmiú é féin? Agus tá na freagraí go páirteach teicniúil agus go páirteach eagrúcháin.

  • Go praiticiúil, táimid ag teacht níos mó ar chás ina bhfuil beagnach gach comhpháirt i Kubernetes i gcuideachtaí móra cheana féin. Fanann bunachair shonraí lasmuigh.
  • Agus tá an cheist á cur níos mó ná riamh: “An féidir é seo a chur taobh istigh?” Dá bhrí sin, tá cuideachtaí móra ag iarraidh aontú bainistíochta uasta a bhaint amach ionas go mbeidh siad in ann a stórais sonraí a bhainistiú go tapa.
  • Agus cabhraíonn sé seo go háirithe má tá an deis uasta ag teastáil uait chun an rud céanna a dhéanamh arís in áit nua, i.e. uas-inaistritheacht.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Cé chomh héasca nó deacair atá sé? Is féidir é seo, ar ndóigh, a dhéanamh de láimh. Ach níl sé chomh simplí, toisc go bhfuil an chastacht bhreise againn maidir le Kubernetes féin a bhainistiú, ach ag an am céanna tá sonraí ClickHouse forshuite. Agus mar thoradh ar chomhiomlánú den sórt sin.

Agus go léir le chéile tugann sé seo sraith measartha mór de theicneolaíochtaí, a éiríonn deacair go leor a bhainistiú, toisc go dtugann Kubernetes a shaincheisteanna laethúla féin chun oibriú, agus cuireann ClickHouse a chuid fadhbanna féin le hoibriú laethúil. Go háirithe má tá roinnt ClickHouses againn, agus ní mór dúinn rud éigin a dhéanamh leo i gcónaí.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Le cumraíocht dhinimiciúil, tá líon measartha mór saincheisteanna ag ClickHouse a chruthaíonn ualach leanúnach ar DevOps:

  • Nuair is mian linn rud éigin a athrú i ClickHouse, mar shampla, cuir macasamhail nó shard leis, ansin ní mór dúinn an chumraíocht a bhainistiú.
  • Ansin athraigh an scéimre sonraí, toisc go bhfuil modh bearrtha ar leith ag ClickHouse. Ní mór duit an léaráid sonraí a leagan amach, na cumraíochtaí a leagan amach.
  • Ní mór duit monatóireacht a chur ar bun.
  • Logs a bhailiú le haghaidh shards nua, le haghaidh macasamhla nua.
  • Tabhair aire don athchóiriú.
  • Agus atosú.

Is gnáththascanna iad seo ar mhaith liom go mór iad a dhéanamh níos éasca le húsáid.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Cuidíonn Kubernetes féin go maith i bhfeidhmiú, ach ar rudaí an chórais bhunúsach.

Tá Kubernetes go maith ag éascú agus ag uathoibriú rudaí mar:

  • Aisghabháil.
  • Tosaigh arís.
  • Bainistíocht córais stórála.

Sin go maith, sin an treo ceart, ach tá sé go hiomlán clueless faoi conas a oibriú braisle bunachar sonraí.

Ba mhaith linn níos mó, ba mhaith linn an bunachar sonraí iomlán a bheith ag obair i Kubernetes.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Ba mhaith liom rud éigin cosúil le cnaipe dearg draíochta mór amháin a bhrúnn tú a fháil agus braisle le tascanna laethúla nach mór a réiteach a imscaradh agus a chothabháil ar feadh a shaolré ar fad. Braisle ClickHouse i Kubernetes.

Agus rinneamar iarracht réiteach a dhéanamh a chuideodh leis an obair a dhéanamh níos éasca. Seo oibreoir ClickHouse do Kubernetes ó Altinity.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Is éard is oibreoir ann clár arb é a phríomhthasc cláir eile a bhainistiú, i.e. is bainisteoir é.

Agus tá patrúin iompair ann. Is féidir leat an t-eolas códaithe seo faoin réimse ábhair a ghlaoch.

Agus is é a phríomhthasc ná saol DevOps a dhéanamh níos éasca agus micromanagement a laghdú, ionas go mbeidh sé (DevOps) ag smaoineamh cheana féin i dtéarmaí ardleibhéil, ie, ionas nach ndéanann sé (DevOps) gabháil le micromanagement, ionas nach ndéanann sé a chumrú. na sonraí go léir de láimh.

Agus is cúntóir róbatach é an t-oibreoir a dhéileálann le micreatascanna agus a chuidíonn le DevOps.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Cén fáth a bhfuil oibreoir ag teastáil uait? Feidhmíonn sé go háirithe go maith in dhá réimse:

  • Nuair nach bhfuil go leor taithí ag an speisialtóir a dhéileálann le ClickHouse, ach go gcaithfidh sé ClickHouse a oibriú cheana féin, éascaíonn an t-oibreoir an oibríocht agus ligeann duit braisle ClickHouse a oibriú le cumraíocht sách casta, gan dul isteach i iomarca sonraí faoin gcaoi a n-oibríonn sé ar fad. istigh. Ní thugann tú ach tascanna ardleibhéil dó, agus oibríonn sé.
  • Agus is é an dara tasc is fearr a chomhlíonann sé ná nuair is gá líon mór tascanna tipiciúil a uathoibriú. Baintear micreathascanna ó riarthóirí córais.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Tá sé seo de dhíth go mór orthu siúd atá díreach ag tosú ar a dturas, nó orthu siúd a bhfuil gá acu le go leor uathoibrithe a dhéanamh.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Conas atá an cur chuige oibreoir-bhunaithe difriúil ó chórais eile? Helm atá ann. Cuidíonn sé freisin le ClickHouse a shuiteáil; is féidir leat cairteacha stiúrtha a tharraingt, a shuiteálfaidh fiú braisle ClickHouse ar fad. Cad é mar sin an difríocht idir an t-oibreoir agus mar an gcéanna, mar shampla, Helm?

Is é an príomhdhifríocht bhunúsach ná gur bainistíocht pacáiste é Helm agus téann Oibreoir céim eile. Is tacaíocht é seo don saolré iomlán. Ní hamháin suiteáil é seo, is tascanna laethúla iad seo a chuimsíonn scálú, bearrtha, ie gach rud is gá a dhéanamh le linn na saolré (más gá, ansin scriosadh freisin) - is é an t-oibreoir a chinneann é seo go léir. Déanann sé iarracht saolré iomlán na mbogearraí a uathoibriú agus a chothabháil. Is é seo a difríocht bhunúsach ó réitigh eile a chuirtear i láthair.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Ba é sin an chuid tosaigh, a ligean ar bogadh ar aghaidh.

Conas a thógaimid ár n-oibreoir? Táimid ag iarraidh dul i ngleic leis an gceist chun braisle ClickHouse a bhainistiú mar acmhainn aonair.

Anseo tá sonraí ionchuir againn ar thaobh na láimhe clé den phictiúr. Is é seo YAML le sonraíocht bhraisle, a chuirtear ar aghaidh chuig Kubernetes ar an mbealach clasaiceach trí kubectl. Roghnaíonn ár n-oibreoir é ansin agus déanann sé a chuid draíocht. Agus ag an aschur a fháil againn ar an scéim seo a leanas. Seo cur i bhfeidhm ClickHouse i Kubernetes.

Agus ansin déanfaimid breathnú go mall ar conas go díreach a oibríonn an t-oibreoir, cad iad na tascanna tipiciúil is féidir a réiteach. Ní mheasfaimid ach gnáthchúraimí toisc go bhfuil am teoranta againn. Agus ní phléifear gach rud is féidir leis an oibreoir a chinneadh.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Let tús ón gcleachtas. Tá ár dtionscadal foinse oscailte go hiomlán, ionas gur féidir leat a fheiceáil conas a oibríonn sé ar GitHub. Agus is féidir leat dul ar aghaidh ó na cúinsí, más mian leat é a sheoladh, is féidir leat tosú leis an Treoir Thapa Tosaigh.

Más mian leat a thuiscint go mion, ansin déanaimid ár ndícheall a choinneáil ar an doiciméadú i bhfoirm níos mó nó níos lú réasúnta.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Let tús le fadhb phraiticiúil. Is é an chéad tasc, áit ar mhaith linn go léir tosú, ná an chéad sampla a rith ar bhealach éigin. Conas is féidir liom ClickHouse a sheoladh ag baint úsáide as an oibreoir, fiú mura bhfuil a fhios agam conas a oibríonn sé i ndáiríre? Tá forógra á scríobh againn, mar... Tá gach cumarsáid le k8s cumarsáid trí manifests.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Is forógra chomh casta é seo. Is é an rud atá aibhsithe againn i ndath dearg ná an méid a chaithfimid díriú air. Iarraimid ar an oibreoir taispeána braisle ainmnithe a chruthú.

Is samplaí bunúsacha iad seo faoi láthair. Níor cuireadh síos ar an stóráil go fóill, ach cuirfimid ar ais chuig an stóráil beagán níos déanaí. Go dtí seo, breathnóidh muid ar dhinimic fhorbairt an bhraisle.

Chruthaíomar an forógra seo. Cothaímid é dár n-oibreoir. D'oibrigh sé, rinne sé draíocht.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Breathnaímid ar an consól. Tá trí chomhpháirt inspéise: Pod, dhá Sheirbhís, agus StatefulSet.

D'oibrigh an t-oibreoir, agus is féidir linn a fheiceáil cad go díreach a chruthaigh sé.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Cruthaíonn sé rud éigin mar seo. Tá StatefulSet, Pod, ConfigMap againn do gach macasamhail, ConfigMap don bhraisle iomlán. Tá gá le seirbhísí mar phointí iontrála isteach sa bhraisle.

Is iad na seirbhísí an tSeirbhís Lárnach um Chomhardú Ualach agus is féidir iad a úsáid freisin do gach macasamhail, do gach shard.

Breathnaíonn ár gcnuasach bunúsach rud éigin mar seo. Tá sé ó aon nód amháin.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

A ligean ar dul níos faide agus rudaí casta. Caithfimid an braisle a bhriseadh.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Tá ár gcuid tascanna ag fás, tá dinimic ag tosú. Ba mhaith linn shard a chur leis. Leanaimid an fhorbairt. Táimid ag athrú ár sonraíochta. Cuirimid in iúl gur mhaith linn dhá shards.

Is é seo an comhad céanna a fhorbraíonn dinimiciúil le fás an chórais. Níl stóráil, déanfar stóráil a phlé tuilleadh, is ábhar ar leith é seo.

Cuirimid beatha don oibreoir YAML agus feicimid cad a tharlaíonn.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Shíl an t-oibreoir agus rinne sé na heintitis seo a leanas. Tá dhá Pod, trí Sheirbhís agus, go tobann, 2 StatefulSets againn cheana féin. Cén Fáth 2 Thacar Sonraí?

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Ar an léaráid bhí sé mar seo - is é seo ár staid tosaigh, nuair a bhí pod amháin againn.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Tháinig sé mar seo. Go dtí seo tá gach rud simplí, tá sé dúbailt.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Agus cén fáth ar tháinig dhá StatefulSets? Anseo ní mór dúinn dul i ngleic agus an cheist a phlé maidir le conas a dhéantar Podaí a bhainistiú i Kubernetes.

Tá réad ar a dtugtar StatefulSet a ligeann duit sraith Podaí a chruthú ó theimpléad. Is é an príomhfhachtóir anseo ná Teimpléad. Agus is féidir leat go leor Pods a sheoladh ag baint úsáide as teimpléad amháin i StatefulSet amháin. Agus is é an eochairfhrása anseo “go leor Pods le haghaidh teimpléad amháin.”

Agus bhí cathú mór ann an cnuasach ar fad a dhéanamh, é a phacáil in aon StatefulSet. Oibreoidh sé, níl aon fhadhb leis. Ach tá caveat amháin ann. Más mian linn braisle ilchineálach a chur le chéile, is é sin, ó leaganacha éagsúla de ClickHouse, tosaíonn ceisteanna ag teacht chun cinn. Sea, is féidir le StatefulSet nuashonrú céimneach a dhéanamh, agus ansin is féidir leat leagan nua a rolladh amach, mínigh nach gá duit triail a bhaint as níos mó ná an oiread nóid ag an am céanna.

Ach má dhéanaimid an tasc a eachtarshuíomh agus a rá gur mian linn braisle go hiomlán ilchineálach a dhéanamh agus nach bhfuil muid ag iarraidh athrú ón seanleagan go ceann nua ag baint úsáide as nuashonrú rollach, ach ba mhaith linn go simplí braisle ilchineálach a chruthú i dtéarmaí. de leaganacha éagsúla de ClickHouse agus i dtéarmaí stórála éagsúla. Ba mhaith linn, mar shampla, roinnt macasamhla a dhéanamh ar dhioscaí ar leithligh, ar chinn mall, go ginearálta, chun braisle ilchineálach a thógáil go hiomlán. Agus toisc go ndéanann StatefulSet réiteach caighdeánaithe ó theimpléad amháin, níl aon bhealach ann é seo a dhéanamh.

Tar éis roinnt machnaimh, socraíodh go ndéanfaimis é ar an mbealach seo. Tá gach macasamhail againn ina StatefulSet féin. Tá roinnt míbhuntáistí ag baint leis an réiteach seo, ach i ndáiríre tá sé cuimsithe go hiomlán ag an oibreoir. Agus tá go leor buntáistí ann. Is féidir linn an braisle cruinn atá uainn a thógáil, mar shampla, braisle atá go hiomlán ilchineálach. Mar sin, i mbraisle ina bhfuil dhá shards againn le macasamhail amháin, beidh 2 StatefulSets agus 2 Pods againn go beacht toisc gur roghnaigh muid an cur chuige seo ar na cúiseanna atá luaite thuas chun a bheith in ann braisle ilchineálach a thógáil.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Fillfimid ar fhadhbanna praiticiúla. Inár mbraisle ní mór dúinn úsáideoirí a chumrú, i.e. ní mór duit roinnt cumraíochta de ClickHouse a dhéanamh i Kubernetes. Soláthraíonn an t-oibreoir na féidearthachtaí go léir le haghaidh seo.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Is féidir linn an méid atá uainn a scríobh go díreach i YAML. Déantar na roghanna cumraíochta go léir a mhapáil go díreach ón YAML seo isteach i cumraíochtaí ClickHouse, a dháiltear ansin ar fud an bhraisle.

Is féidir leat é a scríobh mar seo. Tá sé seo mar shampla. Is féidir an pasfhocal a chriptiú. Go hiomlán tacaítear le gach rogha cumraíochta ClickHouse. Níl anseo ach sampla.

Déantar cumraíocht an bhraisle a dháileadh mar ConfigMap. Go praiticiúil, ní tharlaíonn an nuashonrú ConfigMap láithreach, mar sin má tá an braisle mór, ansin glacann an próiseas brú ar an gcumraíocht roinnt ama. Ach tá sé seo go léir an-áisiúil le húsáid.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Déanaimis an tasc níos casta. Tá an braisle ag forbairt. Ba mhaith linn sonraí a mhacasamhlú. Is é sin, tá dhá shards againn cheana féin, macasamhail amháin an ceann, agus tá úsáideoirí cumraithe. Táimid ag fás agus ba mhaith linn macasamhlú a dhéanamh.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Cad a theastaíonn uainn le haghaidh macasamhlú?

Tá ZooKeeper de dhíth orainn. I ClickHouse, tógtar macasamhlú ag baint úsáide as ZooKeeper. Tá gá le ZooKeeper ionas go mbeidh comhdhearcadh ag macasamhla éagsúla ClickHouse maidir leis na bloic sonraí ar a bhfuil ClickHouse.

Is féidir le duine ar bith ZooKeeper a úsáid. Má tá ZooKeeper seachtrach ag an bhfiontar, is féidir é a úsáid. Mura bhfuil, is féidir leat é a shuiteáil ónár stór. Tá suiteálaí ann a dhéanann an rud iomlán seo níos éasca.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Agus casadh an léaráid idirghníomhaíochta den chóras iomlán amach mar seo. Tá Kubernetes againn mar ardán. Déanann sé an t-oibreoir ClickHouse a fhorghníomhú. Pictiúr mé ZooKeeper anseo. Agus idirghníomhaíonn an t-oibreoir le ClickHouse agus ZooKeeper araon. Is é sin, torthaí idirghníomhaíochta.

Agus tá sé seo go léir riachtanach chun ClickHouse sonraí a mhacasamhlú go rathúil i k8s.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Breathnaímid anois ar an tasc féin, ar an gcuma a bheidh ar an macasamhlú.

Táimid ag cur dhá chuid lenár léiriú. Is é an chéad áit a bhfaighidh ZooKeeper, is féidir a bheith taobh istigh de Kubernetes nó seachtrach. Níl anseo ach cur síos. Agus déanaimid macasamhla a ordú. Iad siúd. ba mhaith linn dhá mhacasamhail. San iomlán, ba cheart go mbeadh 4 pod ag an aschur. Cuimhnímid faoi stóráil, beidh sé ag teacht ar ais beagán níos déanaí. Is scéal ar leith é stóráil.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Bhí sé mar seo.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Éiríonn sé mar seo. Cuirtear macasamhla leis. Ní raibh an 4ú ceann oiriúnach, creidimid go bhféadfadh go leor acu a bheith ann. Agus cuirtear ZooKeeper leis an taobh. Tá na scéimeanna ag éirí níos casta.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Agus tá sé in am an chéad tasc eile a chur leis. Cuirfimid Stóráil Seasmhach leis.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)Tá roghanna éagsúla againn le haghaidh Stóráil Marthanach.

Má táimid ag rith i soláthraí scamall, mar shampla, ag baint úsáide as Amazon, Google, ansin tá temptation mór a úsáid stórála scamall. Tá sé an-áisiúil, tá sé go maith.

Agus tá an dara rogha ann. Tá sé seo le haghaidh stórála áitiúil, nuair a bhíonn dioscaí áitiúla againn ar gach nód. Tá an rogha seo i bhfad níos deacra a chur i bhfeidhm, ach ag an am céanna tá sé níos táirgiúla.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

A ligean ar a fheiceáil cad atá againn maidir le stóráil scamall.

Tá buntáistí ann. Tá sé an-éasca a chumrú. Níl le déanamh againn ach ordú ón néalsoláthróir a thugann dúinn le do thoil a leithéid de thoilleadh, den sórt sin agus den aicme sin a stóráil. Déanann soláthraithe na ranganna a sceidealú go neamhspleách.

Agus tá míbhuntáiste ann. I gcás roinnt daoine, is míbhuntáiste neamhchriticiúil é seo. Ar ndóigh, beidh roinnt saincheisteanna feidhmíochta ann. Tá sé an-áisiúil le húsáid agus iontaofa, ach tá roinnt míbhuntáistí feidhmíochta féideartha ann.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Agus mar gheall ar Díríonn ClickHouse go sonrach ar tháirgiúlacht, d'fhéadfadh duine a rá fiú go gcuireann sé brú ar gach rud is féidir, agus is é sin an fáth go ndéanann go leor cliant iarracht an táirgiúlacht uasta a bhrú amach.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Agus chun an leas is fearr a bhaint as, teastaíonn stóráil áitiúil uainn.

Soláthraíonn Kubernetes trí astarraingt chun stóráil áitiúil a úsáid i Kubernetes. seo:

  • FolamhDir
  • HostPath.
  • Áitiúil

Breathnaímid ar an difríocht atá eatarthu agus conas atá siad cosúil.

Ar an gcéad dul síos, tá stóráil againn sna trí chur chuige go léir - is dioscaí áitiúla iad seo atá suite ar an nód k8s fisiceach céanna. Ach tá roinnt difríochtaí acu.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Cuirimis tús leis an gceann is simplí, i.e. emptyDir. Cad é seo go praiticiúil? Inár sonraíocht, iarraimid ar an gcóras coimeádaithe (Docker is minice) rochtain a thabhairt dúinn ar fhillteán ar an diosca áitiúil.

Go praiticiúil, cruthaíonn Docker fillteán sealadach áit éigin feadh a chosáin féin agus glaonn sé hash fada air. Agus soláthraíonn sé comhéadan chun rochtain a fháil air.

Cén chaoi a n-oibreoidh sé seo ciallmhar ó thaobh feidhmíochta? Oibreoidh sé seo ar luas diosca áitiúil, i.e. Is é seo rochtain iomlán ar do scriú.

Ach tá a míbhuntáiste sa chás seo. Tá go leor amhrasach leanúnach san ábhar seo. An chéad uair a bhogann Docker le coimeádáin, cailltear Persistent. Más mian le Kubernetes an Pod seo a bhogadh go diosca eile ar chúis éigin, caillfear na sonraí.

Tá an cur chuige seo go maith le haghaidh tástálacha, toisc go léiríonn sé gnáthluas cheana féin, ach le haghaidh rud éigin tromchúiseach níl an rogha seo oiriúnach.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Dá bhrí sin tá an dara cur chuige. Seo hostPath. Má fhéachann tú ar an sleamhnán roimhe seo agus an ceann seo, ní fheiceann tú ach difríocht amháin. Bhog ár bhfillteán ó Docker go díreach chuig nód Kubernetes. Tá sé beagán níos simplí anseo. Sonróimid go díreach an cosán ar an gcóras comhad áitiúil inar mhaith linn ár sonraí a stóráil.

Tá buntáistí ag baint leis an modh seo. Tá sé seo cheana féin Seasmhach fíor, agus ceann clasaiceach ag an. Beidh sonraí taifeadta againn ar an diosca ag seoladh éigin.

Tá míbhuntáistí ann freisin. Seo castacht na bainistíochta. B'fhéidir gur mhaith lenár Kubernetes an Pod a aistriú chuig nód fisiceach eile. Agus seo an áit a dtagann DevOps i bhfeidhm. Caithfidh sé a mhíniú i gceart don chóras iomlán nach féidir na pods seo a aistriú ach go dtí na nóid sin ar a bhfuil rud éigin suite ar na cosáin seo, agus gan níos mó ná nód amháin ag an am. Tá sé deacair go leor.

Go háirithe chun na críocha seo, rinneamar teimpléid inár n-oibreoir chun an chastacht seo go léir a cheilt. Agus d’fhéadfá a rá go simplí: “Ba mhaith liom sampla amháin de ClickHouse a bheith agam do gach nód fisiciúil agus ar a leithéid de chosán.”

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Ach ní sinne na cinn amháin a bhfuil an riachtanas seo ag teastáil uathu, agus mar sin tuigeann na daoine uaisle ó Kubernetes féin freisin gur mian le daoine rochtain a bheith acu ar dhioscaí fisiceacha, agus mar sin soláthraíonn siad tríú ciseal.

áitiúil a thugtar air. Níl beagnach aon difríocht ón sleamhnán roimhe seo. Sula raibh sé riachtanach a dhearbhú de láimh nach féidir linn na pods seo a aistriú ó nód go nód, toisc go gcaithfidh siad a bheith ceangailte ar chosán éigin le diosca fisiciúil áitiúil, ach anois tá an t-eolas seo go léir cuimsithe i Kubernetes féin. Agus casadh sé amach a bheith i bhfad níos éasca a chumrú.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Fillfimid ar ár bhfadhb phraiticiúil. Fillfimid ar an teimpléad YAML. Anseo tá fíor-stóráil againn. Táimid ar ais air. Shocraigh muid an teimpléad clasaiceach VolumeClaim mar atá i k8s. Agus déanaimid cur síos ar an gcineál stórála a theastaíonn uainn.

Tar éis seo, iarrfaidh k8s stóráil. Déanfar é a leithdháileadh orainn sa StatefulSet. Agus sa deireadh beidh sé ar fáil do ClickHouse.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Bhí an scéim seo againn. Bhí an Stór Seasmhach dearg againn, rud a thug le tuiscint gur ghá é a dhéanamh.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Agus casann sé glas. Anois tá an scéim bhraisle ClickHouse on k8s tugtha chun críche go hiomlán. Tá shards, macasamhla, ZooKeeper againn, ní mór dúinn Seasmhach fíor, a chuirtear i bhfeidhm ar bhealach amháin nó eile. Tá an scéim i bhfeidhm go hiomlán cheana féin.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Leanaimid orainn ag maireachtáil. Tá ár mbraisle ag forbairt. Agus déanann Alexey iarracht, agus scaoileann sé leagan nua de ClickHouse.

Éiríonn tasc praiticiúil - an leagan nua de ClickHouse ar ár mbraisle a thástáil. Agus, ar ndóigh, níl tú ag iarraidh é a rolladh amach; ba mhaith leat leagan nua a chur i macasamhail amháin áit éigin sa chúinne thall, agus b'fhéidir nach leagan nua amháin é, ach dhá cheann ag an am céanna, mar is minic a thagann siad amach.

Cad is féidir linn a rá faoi seo?

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Anseo níl ach deis den sórt sin againn. Is teimpléid pod iad seo. Is féidir leat a scríobh go gceadaíonn ár n-oibreoir go hiomlán duit braisle ilchineálach a thógáil. Iad siúd. a chumrú, ag tosú ó gach macasamhail ina chnuasach, ag críochnú le gach macasamhail pearsanta, cén leagan a theastaíonn uainn ClickHouse, cén leagan a theastaíonn uainn a stóráil. Is féidir linn an braisle a chumrú go hiomlán leis an gcumraíocht a theastaíonn uainn.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

A ligean ar dul beagán níos doimhne taobh istigh. Roimhe seo, labhair muid faoi conas a oibríonn ClickHouse-operator maidir le sonraí ClickHouse.

Anois ba mhaith liom cúpla focal a rá faoi conas a oibríonn aon oibreoir i gcoitinne, chomh maith leis an gcaoi a n-idirghníomhaíonn sé le K8s.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Breathnaímid ar idirghníomhú leis na K8anna ar dtús. Cad a tharlaíonn nuair a dhéanaimid iarratas kubectl? Tá ár n-oibiachtaí le feiceáil i srld tríd an API.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Mar shampla, rudaí bunúsacha Kubernetes: pod, StatefulSet, seirbhís, agus mar sin de síos ar an liosta.

Ag an am céanna, ní tharlaíonn aon rud fisiceach fós. Ní mór na réada seo a bhaint amach sa bhraisle.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Chun na críche seo, feictear rialtóir. Is comhpháirt k8s speisialta é an rialtóir is féidir leis na tuairiscí seo a bhaint amach. Tá a fhios aige conas agus cad atá le déanamh go fisiciúil. Tá a fhios aige conas coimeádáin a rith, cad is gá a chumrú ann ionas go n-oibreoidh an freastalaí.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Agus cuireann sé ár n-rudaí i gcrích i K8s.

Ach ba mhaith linn oibriú ní hamháin le pods agus StatefulSets, ba mhaith linn Suiteáil ClickHouse a chruthú, ie réad den chineál ClickHouse, chun oibriú leis ina iomláine amháin. Go dtí seo níl aon deis den sórt sin.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Ach tá an rud deas seo a leanas ag K8s. Teastaíonn uainn go mbeadh áit éigin cosúil leis an eintiteas casta seo againn ina mbeadh ár mbraisle le chéile ó pods agus StatefulSet.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Agus cad is gá a dhéanamh chuige seo? Gcéad dul síos, tagann Sainiú Acmhainní Saincheaptha isteach sa phictiúr. An rud atá ann? Is cur síos é seo do K8s, go mbeidh cineál sonraí amháin eile agat, gur mhaith linn acmhainn saincheaptha a chur leis an pod, StatefulSet, a bheidh casta taobh istigh. Is cur síos é seo ar an struchtúr sonraí.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Cuirimid ansin é freisin trí kubectl apply. Ghlac Kubernetes go sona sásta é.

Agus anois inár stór, tá an deis ag an réad in etcd acmhainn saincheaptha a thaifeadadh ar a dtugtar ClickHouseInstallation.

Ach faoi láthair ní tharlóidh a thuilleadh. Is é sin, má chruthaímid an comhad YAML anois a d’fhéach muid le cur síos ar shards agus macasamhla agus a rá “kubectl apply,” ansin glacfaidh Kubernetes leis, é a chur in etcd agus a rá: “Go hiontach, ach níl a fhios agam cad atá le déanamh leis. Níl a fhios agam conas ClickHouseInstallation a chothabháil.”

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Dá réir sin, ní mór dúinn duine éigin chun cabhrú le Kubernetes freastal ar an gcineál sonraí nua. Ar thaobh na láimhe clé tá rialtóir dúchais Kubernetes againn a oibríonn le cineálacha sonraí dúchasacha. Agus ar dheis ba cheart go mbeadh rialtóir saincheaptha againn a fhéadfaidh oibriú le cineálacha sonraí saincheaptha.

Agus ar bhealach eile tugtar oibreoir air. Chuir mé san áireamh go sonrach é anseo mar Kubernetes, toisc gur féidir é a fhorghníomhú lasmuigh de K8s freisin. Is minic, ar ndóigh, a fhorghníomhaítear na hoibreoirí go léir i Kubernetes, ach ní chuireann aon rud cosc ​​​​air seasamh lasmuigh, mar sin anseo tá sé ar athraíodh a ionad go speisialta lasmuigh.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Agus ar a seal, idirghníomhaíonn an rialtóir saincheaptha, ar a dtugtar an t-oibreoir freisin, le Kubernetes tríd an API. Tá a fhios aige cheana féin conas idirghníomhú leis an API. Agus tá a fhios aige cheana féin conas an ciorcad casta a theastaíonn uainn a dhéanamh as acmhainn saincheaptha a bhaint amach. Is é seo go díreach cad a dhéanann an t-oibreoir.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Conas a oibríonn an t-oibreoir? Breathnaímid ar an taobh dheis féachaint conas a dhéanann sé é. Faighimis amach conas a éiríonn leis an oibreoir é seo go léir agus conas a tharlaíonn tuilleadh idirghníomhaíochta le K8anna.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Is clár é oibreoir. Tá sí dírithe ar imeachtaí. Síníonn an t-oibreoir imeachtaí trí úsáid a bhaint as Kubernetes API. Tá pointí iontrála ag Kubernetes API inar féidir leat síntiús a íoc le himeachtaí. Agus má athraíonn rud éigin i K8s, cuireann Kubernetes imeachtaí chuig gach duine, i.e. gheobhaidh an té a shuibscríobh leis an bpointe API seo fógraí.

Síníonn an t-oibreoir le himeachtaí agus caithfidh sé imoibriú de chineál éigin a dhéanamh. Is é an tasc atá aige ná freagairt d'imeachtaí atá ag teacht chun cinn.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Gintear imeachtaí le nuashonruithe áirithe. Tagann ár gcomhad YAML le cur síos ar ClickHouseInstallation. Chuaigh sé a etcd trí kubectl iarratas. Spreagadh imeacht ansin, agus mar thoradh air sin tháinig an t-imeacht seo chuig an ClickHouse-operator. Fuair ​​an t-oibreoir an cur síos seo. Agus caithfidh sé rud éigin a dhéanamh. Má tháinig nuashonrú don réad ClickHouseInstallation, ní mór duit an braisle a nuashonrú. Agus is é tasc an oibreora an braisle a nuashonrú.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Cad atá á dhéanamh aige? Ar an gcéad dul síos, ní mór dúinn plean gníomhaíochta a dhréachtú don méid a dhéanfaimid leis an nuashonrú seo. Is féidir le nuashonruithe a bheith an-bheag, i.e. beag i bhforghníomhú YAML, ach is féidir athruithe an-mhóra a bheith i gceist leis an mbraisle. Dá bhrí sin, cruthaíonn an t-oibreoir plean, agus ansin cloíonn sé leis.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

De réir an phlean seo, tosaíonn sé ag cócaireacht an struchtúr seo taobh istigh d'fhonn a materialize pods, seirbhísí, i.e. dhéanamh cad é an tasc is mó atá aige. Seo conas braisle ClickHouse a thógáil i Kubernetes.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Anois déanaimis teagmháil le rud chomh suimiúil. Is deighilt freagrachta é seo idir Kubernetes agus an t-oibreoir, i.e. cad a dhéanann Kubernetes, cad a dhéanann an t-oibreoir, agus conas a idirghníomhaíonn siad lena chéile.

Tá Kubernetes freagrach as rudaí córais, i.e. le haghaidh tacar bunúsach réad is féidir a léirmhíniú mar raon feidhme an chórais. Tá a fhios ag Kubernetes conas pods a sheoladh, conas coimeádáin a atosú, conas toirteanna a shuiteáil, conas oibriú le ConfigMap, i.e. gach rud is féidir a dtugtar córas.

Feidhmíonn oibreoirí i bhfearainn. Déantar gach oibreoir dá réimse ábhair féin. Rinneamar é do ClickHouse.

Agus idirghníomhaíonn an t-oibreoir go beacht i dtéarmaí an réimse ábhair, mar shampla macasamhail a chur leis, léaráid a dhéanamh, monatóireacht a chur ar bun. Tá deighilt mar thoradh air seo.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Breathnaímid ar shampla praiticiúil den chaoi a dtarlaíonn an roinnt freagrachta seo nuair a dhéanaimid an gníomh macasamhail breisithe.

Faigheann an t-oibreoir tasc - chun macasamhail a chur leis. Cad a dhéanann an t-oibreoir? Ríomhfaidh an t-oibreoir gur gá StatefulSet nua a chruthú, ina gcaithfear cur síos a dhéanamh ar na teimpléid agus na teimpléid sin, éileamh toirte.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

D'ullmhaigh sé é go léir agus cuireann sé ar aghaidh go K8s é. Deir sé go dteastaíonn ConfigMap, StatefulSet, Volume. Tá Kubernetes ag obair. Baineann sé leis na bunaonaid lena n-oibríonn sé.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Agus ansin tagann an t-oibreoir ClickHouse i bhfeidhm arís. Tá pod fisiciúil aige cheana féin ar a bhféadfaidh sé rud éigin a dhéanamh cheana féin. Agus oibríonn ClickHouse-operator arís i dtéarmaí fearainn. Iad siúd. Go sonrach ClickHouse, chun macasamhail a chur san áireamh i mbraisle, ní mór duit, ar dtús, scéimre na sonraí atá sa bhraisle seo a chumrú. Agus, ar an dara dul síos, ní mór an macasamhail seo a chur san áireamh sa mhonatóireacht ionas gur féidir é a rianú go soiléir. Tá sé seo cumraithe ag an oibreoir cheana féin.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Agus is ina dhiaidh sin a thagann ClickHouse féin i bhfeidhm, i.e. eintiteas ardleibhéil eile. Is bunachar sonraí é seo cheana féin. Tá a shampla féin aige, macasamhail cumraithe eile atá réidh le dul isteach sa bhraisle.

Tharlaíonn sé go raibh slabhra forghníomhaithe agus roinnt freagrachta nuair a bhíonn macasamhail á chur leis sách fada.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Leanaimid lenár dtascanna praiticiúla. Má tá braisle agat cheana féin, is féidir leat an chumraíocht a aistriú.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Rinneamar é ionas gur féidir leat a ghreamú go díreach isteach i xml atá ann cheana féin, a thuigeann ClickHouse.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Is féidir leat ClickHouse a mhionchoigeartú. Is é imscaradh díreach criosaithe an rud a labhair mé faoi nuair a mhínigh mé hostPath, stóráil áitiúil. Seo mar is féidir imscaradh criosaithe a dhéanamh i gceart.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Is é an chéad tasc praiticiúil eile ná monatóireacht.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Má thagann athrú ar ár mbraisle, ní mór dúinn an mhonatóireacht a chumrú go tréimhsiúil.

Breathnaímid ar an léaráid. Táimid tar éis féachaint ar na saigheada glasa anseo cheana féin. Anois, déanaimis féachaint ar na saigheada dearga. Seo mar a theastaíonn uainn monatóireacht a dhéanamh ar ár mbraisle. Conas a théann méadracht ó bhraisle ClickHouse isteach i Prometheus, agus ansin isteach i Grafana.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Cad é an deacracht le monatóireacht? Cén fáth a gcuirtear é seo i láthair mar ghnóthachtáil de chineál éigin? Tá an deacracht sa dinimic. Nuair a bhíonn braisle amháin againn agus go bhfuil sé statach, ansin is féidir linn monatóireacht a bhunú uair amháin agus gan bac a chur ar a thuilleadh.

Ach má tá go leor braislí againn, nó má tá rud éigin ag athrú i gcónaí, tá an próiseas dinimiciúil. Agus is cur amú acmhainní agus ama é faireachán a athchumrú i gcónaí, i.e. fiú amháin leisce. Ní mór é seo a uathoibriú. Tá an deacracht i ndinimic an phróisis. Agus déanann an t-oibreoir é seo a uathoibriú go han-mhaith.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Conas a d'fhorbair ár gcnuasach? I dtús bhí sé mar sin.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Ansin bhí sé mar seo.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Sa deireadh, d'éirigh sé mar seo.

Agus déanann an t-oibreoir monatóireacht go huathoibríoch. Aon phointe iontrála.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Agus díreach ag an slí amach breathnaíonn muid ar an deais Grafana féachaint conas atá saol ár mbraisle ag fiuchadh istigh.

Dála an scéil, déantar painéal Grafana a dháileadh freisin lenár n-oibreoir go díreach sa chód foinse. Is féidir leat ceangal agus úsáid. Thug ár DevOps an scáileán scáileáin seo dom.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Cá háit ar mhaith linn dul ina dhiaidh sin? seo:

  • Uathoibriú tástála a fhorbairt. Is é an príomhthasc tástáil uathoibrithe ar leaganacha nua.
  • Ba mhaith linn freisin an comhtháthú le ZooKeeper a uathoibriú. Agus tá pleananna ann comhtháthú le ZooKeeper-oibreoir. Iad siúd. Scríobhadh oibreoir do ZooKeeper agus tá sé loighciúil go dtosaíonn an dá oibreoir ag comhtháthú chun réiteach níos áisiúla a thógáil.
  • Ba mhaith linn comharthaí ríthábhachtacha níos casta a dhéanamh.
  • D’aibhsigh mé le dath glas go bhfuil muid ag druidim le hoidhreacht na dTeimpléad - DHÉANAMH, ie nuair a bheidh an chéad eisiúint eile ag an oibreoir beidh oidhreacht teimpléid againn cheana féin. Is uirlis chumhachtach é seo a ligeann duit cumraíochtaí casta a thógáil ó phíosaí.
  • Agus ba mhaith linn tascanna casta a uathoibriú. Is é an ceann is mó ná Re-sharding.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Déanaimis roinnt torthaí idirmheánacha.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Cad a fhaigheann muid mar thoradh air? Agus is fiú a dhéanamh nó nach bhfuil? An gá fiú iarracht a dhéanamh an bunachar sonraí a tharraingt isteach i Kubernetes agus an t-oibreoir go ginearálta agus an t-oibreoir Alitnity go háirithe a úsáid?

Ag an aschur a fhaighimid:

  • Simpliú agus uathoibriú suntasach ar chumraíocht, ar imscaradh agus ar chothabháil.
  • Monatóireacht a dhéanamh láithreach bonn.
  • Agus teimpléid chódaithe réidh le húsáid le haghaidh cásanna casta. Ní gá gníomh cosúil le macasamhail a chur leis a dhéanamh de láimh. Déanann an t-oibreoir é seo.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Níl ach ceist dheireanach amháin fágtha. Tá bunachar sonraí againn cheana féin i Kubernetes, fíorúlú. Cad mar gheall ar fheidhmíocht réiteach den sórt sin, go háirithe ós rud é go bhfuil ClickHouse optamaithe le haghaidh feidhmíochta?

Is é an freagra go bhfuil gach rud go breá! Ní dhéanfaidh mé mionsonrú; is é seo ábhar tuarascála ar leith.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Ach tá tionscadal den sórt sin mar TSBS. Cad é a phríomhthasc? Is tástáil feidhmíochta bunachar sonraí é seo. Is iarracht é seo a chur i gcomparáid te le te, bog agus bog.

Conas a oibríonn sé? Gintear tacar sonraí amháin. Ansin reáchtáiltear an tacar sonraí seo ar bhunachair shonraí éagsúla ag baint úsáide as an tsraith tástálacha céanna. Agus réitíonn gach bunachar sonraí fadhb amháin ar an mbealach is eol dó. Agus ansin is féidir leat na torthaí a chur i gcomparáid.

Tacaíonn sé le cuid mhór bunachar sonraí cheana féin. Tá trí cinn aitheanta agam. seo:

  • Scála AmaDB.
  • InfluxDB.
  • Cliceáil Teach.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Rinneadh comparáid freisin le réiteach eile cosúil leis. Comparáid le RedShift. Rinneadh comparáid ar Amazon. Tá ClickHouse i bhfad chun tosaigh ar gach duine san ábhar seo freisin.

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Cad iad na conclúidí is féidir a bhaint as an méid a dúirt mé?

  • Is féidir DB i Kubernetes. Is dócha go bhfuil aon cheann indéanta, ach ar an iomlán is cosúil go bhfuil sé indéanta. Is cinnte gur féidir ClickHouse in Kubernetes le cabhair ónár n-oibreoir.
  • Cuidíonn an t-oibreoir le próisis a uathoibriú agus déanann sé an saol níos éasca.
  • Tá feidhmíocht gnáth.
  • Agus feictear dúinn gur féidir agus gur chóir é seo a úsáid.

Foinse oscailte - bígí linn!

Mar a dúirt mé cheana, is táirge foinse oscailte go hiomlán é an t-oibreoir, agus mar sin bheadh ​​​​sé an-mhaith dá n-úsáidfeadh an t-uaslíon daoine é. Bígí linn! Táimid ag fanacht leat go léir!

Go raibh maith agat go léir!

ceisteanna

Oibreoir i Kubernetes chun braislí bunachar sonraí a bhainistiú. Vladislav Klimenko (Altinity, 2019)

Go raibh maith agat as an tuairisc! Anton is ainm dom. Is as SEMrush mé. Tá mé ag smaoineamh cad atá ar bun le logáil. Cloisimid faoi mhonatóireacht, ach ní rud ar bith faoi logáil, má labhairt linn faoin mbraisle ar fad. Mar shampla, tá braisle ar chrua-earraí ardaithe againn. Agus bainimid úsáid as logáil láraithe, á mbailiú ina gcarn coiteann ag baint úsáide as modhanna caighdeánacha. Agus as sin faigheann muid na sonraí a bhfuil spéis againn iontu.

Ceist mhaith, i.e. logáil isteach ar liosta todo. Ní dhéanann ár n-oibreoir é seo a uathoibriú go fóill. Tá sé fós ag forbairt, tá an tionscadal fós óg go leor. Tuigimid an gá atá le logáil. Is ábhar an-tábhachtach é seo freisin. Agus is dócha nach lú tábhacht é ná monatóireacht. Ach bhí an chéad ar an liosta le haghaidh cur i bhfeidhm monatóireachta. Beidh logáil ann. Ar ndóigh, déanaimid iarracht gach gné de shaol an bhraisle a uathoibriú. Mar sin, is é an freagra ná nach bhfuil a fhios ag an oibreoir faoi láthair, ar an drochuair, conas é seo a dhéanamh, ach tá sé sna pleananna, déanfaimid é. Más mian leat a bheith páirteach, tarraing an t-iarratas, le do thoil.

Dia dhuit! Go raibh maith agat as an tuairisc! Tá ceist chaighdeánach agam a bhaineann le Imleabhar Seasmhach. Nuair a chruthaímid cumraíocht leis an oibreoir seo, conas a chinneann an t-oibreoir cén nód a bhfuil diosca nó fillteán ar leith ceangailte againn? Ní mór dúinn a mhíniú dó ar dtús, le do thoil, ár dTeach Cliceáil a chur ar na nóid seo a bhfuil diosca acu?

Chomh fada agus a thuigim, is leanúint den stóráil áitiúil é an cheist seo, go háirithe an chuid hostPath de. Tá sé seo cosúil le míniú a thabhairt don chóras iomlán gur gá an pod a sheoladh ar nód dá leithéid, a bhfuil diosca againn atá ceangailte go fisiciúil leis, atá suite feadh cosán den sórt sin agus den sórt sin. Is cuid iomlán é seo ar bhain mé úsáid as go han-gharbh mar tá an freagra sách mór.

Go hachomair tá sé mar seo. Ar ndóigh, ní mór dúinn na méideanna seo a sholáthar. I láthair na huaire, níl aon soláthar dinimiciúil sa stóráil áitiúil, mar sin ní mór DevOps na dioscaí a ghearradh iad féin, na méideanna seo. Agus ní mór dóibh soláthar Kubernetes a mhíniú go mbeidh toirteanna Seasmhach den sórt sin agus den sórt sin agat, atá suite ar nóid den sórt sin agus den sórt sin. Ansin, beidh ort a mhíniú do Kubernetes nach mór pods a dteastaíonn a leithéid agus rang stórála áitiúil den sórt sin a dhíriú ach amháin ar na nóid sin agus na nóid sin ag baint úsáide as lipéid. Chun na gcríoch sin, tá an cumas ag an oibreoir lipéad de chineál éigin agus lipéad amháin a shannadh in aghaidh an óstaigh. Agus tharla sé go mbeidh na pods a stiúradh ag Kubernetes a reáchtáil ach amháin ar nóid a chomhlíonann na ceanglais, lipéid, i dtéarmaí simplí. Sannann riarthóirí lipéid agus dioscaí soláthair de láimh. Agus ansin scálaí sé.

Agus is é an tríú rogha, áitiúil, a chuidíonn é seo a dhéanamh beagán níos éasca. Mar atá ráite agam cheana, is obair dhian ar an tiúnadh é seo, rud a chabhraíonn i ndeireadh na dála le huasfheidhmíocht a bhaint amach.

Tá an dara ceist agam a bhaineann leis seo. Dearadh Kubernetes sa chaoi is gur cuma linn an gcaillfimid nód nó nach gcailleann muid. Cad ba cheart dúinn a dhéanamh sa chás seo má chaill muid an nód ina bhfuil ár shard crochta?

Sea, bhí Kubernetes suite ar dtús go bhfuil ár gcaidreamh lenár pods cosúil le eallach, ach anseo le linn déantar gach diosca rud éigin cosúil le peataí. Tá a leithéid de fhadhb ann nach féidir linn iad a chaitheamh díreach. Agus tá forbairt Kubernetes ag dul sa treo go bhfuil sé dodhéanta é a chóireáil go hiomlán go fealsúnach, amhail is dá mba acmhainn iomlán é a chaitheamh i leataobh.

Anois le haghaidh ceist phraiticiúil. Cad atá le déanamh má chaill tú an nód ar a raibh an diosca? Anseo tá an fhadhb á réiteach ag leibhéal níos airde. I gcás ClickHouse, tá macasamhla againn a oibríonn ag leibhéal níos airde, i.e. ag leibhéal ClickHouse.

Cad é an diúscairt mar thoradh air? Tá DevOps freagrach as a chinntiú nach gcailltear sonraí. Caithfidh sé macasamhlú a shocrú i gceart agus ní mór dó a chinntiú go bhfuil macasamhlú ar siúl. Caithfidh sonraí dúblacha a bheith ag an macasamhail ar leibhéal ClickHouse. Ní hé seo an fhadhb a réitíonn an t-oibreoir. Agus ní an fhadhb a réitíonn Kubernetes féin. Tá sé seo ag leibhéal ClickHouse.

Cad atá le déanamh má thiteann do nód iarainn amach? Agus tharla sé go mbeidh ort an dara ceann a shuiteáil, an diosca a sholáthar i gceart air, agus lipéid a chur i bhfeidhm. Agus ina dhiaidh sin, comhlíonfaidh sé na ceanglais gur féidir le Kubernetes pod shampla a sheoladh air. Seolfaidh Kubernetes é. Ní leor do líon pods chun an líon sonraithe a chomhlíonadh. Rachaidh sé tríd an timthriall a léirigh mé. Agus ar an leibhéal is airde, tuigfidh ClickHouse go bhfuil macasamhail curtha isteach againn, tá sé fós folamh agus ní mór dúinn tosú ag aistriú sonraí chuige. Iad siúd. Níl an próiseas seo uathoibrithe go maith fós.

Go raibh maith agat as an tuairisc! Nuair a tharlaíonn gach cineál rudaí olc, tuairteanna agus atosaíonn an t-oibreoir, agus ag an nóiméad a thagann imeachtaí, an láimhseáil tú é seo ar bhealach éigin?

Cad a tharlaíonn má crashed an t-oibreoir agus atosaigh, ceart?

Tá. Agus ag an nóiméad tháinig imeachtaí.

Roinntear an tasc cad atá le déanamh sa chás seo go páirteach idir an t-oibreoir agus Kubernetes. Tá an cumas ag Kubernetes imeacht a tharla a athsheoladh. Replays sé. Agus is é tasc an oibreora a chinntiú nuair a athsheinntear logáil na n-imeachtaí air, go bhfuil na himeachtaí seo mí-chumasach. Agus ionas nach sáraíonn an teagmhas céanna arís agus arís eile ár gcóras. Agus déileálann ár n-oibreoir leis an tasc seo.

Dia dhuit! Go raibh maith agat as an tuairisc! Dmitry Zavyalov, cuideachta Smedova. An bhfuil pleananna ann chun cumas cumraíochta le haproxy a chur leis an oibreoir? Bheadh ​​suim agam i roinnt cothromóir eile seachas an ceann caighdeánach, ionas go mbeidh sé cliste agus go dtuigeann sé go bhfuil ClickHouse ann i ndáiríre.

An bhfuil tú ag caint faoi Ingress?

Sea, cuir haprocsa in ionad Ingress. I haprocsa is féidir leat topology an bhraisle a shonrú ina bhfuil macasamhla ann.

Níor smaoinigh muid air go fóill. Más gá duit é agus gur féidir leat a mhíniú cén fáth go bhfuil sé ag teastáil, beidh sé indéanta é a chur i bhfeidhm, go háirithe más mian leat a bheith rannpháirteach. Beidh áthas orainn an rogha a mheas. Is é an freagra gairid ná níl, níl feidhmiúlacht den sórt sin againn faoi láthair. Go raibh maith agat as an leid, féachfaimid isteach san ábhar seo. Agus má mhíníonn tú freisin an cás úsáide agus cén fáth go bhfuil gá leis go praiticiúil, mar shampla, saincheisteanna a chruthú ar GitHub, ansin beidh sé sin iontach.

Tá cheana féin.

Go breá. Táimid oscailte d’aon mholtaí. Agus cuirtear haprocsa leis an liosta tada. Tá an liosta todo ag fás, gan crapadh fós. Ach tá sé seo go maith, ciallaíonn sé go bhfuil an táirge ar an éileamh.

Foinse: will.com

Add a comment