ProHoster > Blag > Riarachán > Conas scamall hibrideach a thógáil ag baint úsáide as Kubernetes is féidir a chur in ionad DBaaS
Conas scamall hibrideach a thógáil ag baint úsáide as Kubernetes is féidir a chur in ionad DBaaS
Petr Zaitsev is ainm dom, is mise an Príomhfheidhmeannach, bunaitheoir percona agus ba mhaith liom a rá leat:
conas a tháinig muid ó réitigh foinse oscailte go Bunachar Sonraí mar Sheirbhís;
cad iad na cineálacha cur chuige atá ann maidir le bunachair shonraí a imscaradh sa néal;
conas is féidir le Kubernetes ionad DBaaS, deireadh a chur le spleáchas díoltóirí agus simplíocht DBMS a chothabháil mar sheirbhís.
Ullmhaíodh an t-alt bunaithe ar thuarascáil ag @Databases Meetup le Mail.ru Cloud Solutions & Tarantool. Mura bhfuil tú ag iarraidh léamh, is féidir leat féachaint ar:
Conas a tháinig muid ó fhoinse oscailte go Bunachar Sonraí mar Sheirbhís sa scamall
Tá mé ag obair i bhfoinse oscailte ó na 90í déanacha. Fiche bliain ó shin, ní raibh sé chomh héasca sin foinse oscailte a úsáid, mar bhunachair shonraí. Bhí sé riachtanach an cód foinse a íoslódáil, é a phaisteáil, é a thiomsú agus gan ach é a úsáid ansin.
Chuaigh foinse oscailte trí shraith simplithe ansin:
Tar.gz agus INSTALL foinsí ba ghá a chur le chéile;
pacáistí le spleáchais cosúil le .deb agus .rpm, nuair is gá duit ach sraith pacáistí a shuiteáil;
stórtha pacáiste amhail APT agus YUM, a bhfuil an tsuiteáil uathoibríoch acu;
réitigh cosúil le Docker agus Snap, a ligeann duit pacáistí a fháil trína shuiteáil gan spleáchas seachtrach.
Mar thoradh air sin, éiríonn sé níos éasca bogearraí foinse oscailte a úsáid agus íslíonn sé an bac ar iontráil a leithéid d’fheidhmchláir a fhorbairt.
Ag an am céanna, murab ionann agus an scéal 20 bliain ó shin, nuair a bhí gach duine ina shaineolaí tionóil, anois ní féidir le formhór na bhforbróirí na huirlisí a úsáideann siad a thógáil ón bhfoinse.
Go deimhin, níl sé seo go dona, mar:
Is féidir linn bogearraí níos casta ach atá níos so-úsáidte a úsáid. Mar shampla, tá brabhsálaí áisiúil le húsáid, ach cuimsíonn sé go leor comhpháirteanna foinse oscailte agus tá sé deacair é a thógáil ón tús.
Is féidir le níos mó daoine a bheith ina bhforbróirí foinse oscailte agus bogearraí eile, úsáideann gnólachtaí níos mó bogearraí, agus is mó an gá atá leis.
Is é an taobh thíos ná go bhfuil baint ag an gcéad chéim eile sa simpliú le húsáid réitigh scamall, agus mar thoradh air seo déantar glasáil díoltóirí áirithe, is é sin, ceangailteach do sholáthraí amháin. Bainimid úsáid as réitigh shimplí agus úsáideann soláthraithe comhpháirteanna foinse oscailte, ach i ndáiríre tá siad ingne le ceann de na scamaill mhóra. Is é sin, is é an bealach is éasca agus is tapúla chun foinse oscailte (agus bogearraí atá comhoiriúnach leis) a imscaradh sna scamaill, ag baint úsáide as API dílseánaigh.
Nuair a thagann sé chuig bunachair shonraí sa scamall, tá dhá chur chuige ann:
Bailigh an bonneagar bunachar sonraí, mar atá i lárionad sonraí rialta. Is é sin, glac bloic thógála caighdeánacha: ríomh, stóráil, agus mar sin de, suiteáil Linux agus bunachar sonraí orthu, agus cumraigh iad.
Bain úsáid as Bunachar Sonraí mar Sheirbhís, áit a dtugann an soláthraí bunachar sonraí réidh laistigh den scamall.
Is margadh atá ag fás go tapa é DBaaS faoi láthair toisc go ligeann sé d’fhorbróirí oibriú go díreach le bunachair shonraí agus go laghdaítear gnáthobair. Geallann an soláthraí Ard-Infhaighteacht agus scálú éasca, paisteáil bunachar sonraí, cúltacaí agus tiúnadh feidhmíochta a chinntiú.
Dhá chineál Bunachar Sonraí mar Sheirbhís bunaithe ar fhoinse oscailte agus rogha eile i bhfoirm Kubernetes
Tá dhá chineál Bunachar Sonraí mar Sheirbhís do bhunachair shonraí oscailte:
Táirge foinse oscailte caighdeánach atá pacáistithe in inneall riaracháin chun é a imscaradh agus a bhainistiú go héasca.
Réiteach tráchtála chun cinn le breiseáin éagsúla, comhoiriúnach le foinse oscailte.
Laghdaíonn an dá rogha an fhéidearthacht imirce idir scamaill agus laghdaítear iniomparthacht sonraí agus feidhmchlár. Mar shampla, in ainneoin go dtacaíonn cineálacha éagsúla scamaill go bunúsach leis an MySQL caighdeánach céanna, tá difríochtaí suntasacha eatarthu: i bhfeidhmiú, feidhmíocht, cúltaca, agus mar sin de. Is féidir leis a bheith dúshlánach aistriú ó néal amháin go scamall, go háirithe d’fheidhmchláir chasta.
Agus anseo eascraíonn an cheist - an féidir áisiúlacht Bunachar Sonraí mar Sheirbhís a fháil, ach mar réiteach foinse oscailte simplí?
Is é an drochscéal ná, ar an drochuair, níl aon réitigh den sórt sin ar an margadh fós. Is é an dea-scéal ná go bhfuil Kubernetes ann, a ligeann duit réitigh den sórt sin a chur i bhfeidhm.
Is córas oibriúcháin é Kubernetes don scamall nó don ionad sonraí a ligeann duit feidhmchlár a imscaradh agus a bhainistiú thar ilfhreastalaithe i mbraisle seachas ar óstach amháin.
Anois is é Kubernetes an ceannaire sa chatagóir bogearraí den sórt sin. Bhí go leor réitigh éagsúla le haghaidh fadhbanna den sórt sin, ach tháinig sé ar an gcaighdeán. Tá go leor cuideachtaí a bhain úsáid as díriú ar réitigh mhalartacha anois ag díriú ar a gcuid táirgí a oiriúnú chun tacú le Kubernetes.
Ina theannta sin, is réiteach uilíoch é Kubernetes a fhaigheann tacaíocht i scamaill phríobháideacha, phoiblí agus hibrideacha go leor díoltóirí, mar shampla: AWS, Google Cloud, Microsoft Azure, Mail.ru Cloud Solutions.
Conas a oibríonn Kubernetes le bunachair shonraí
Dearadh Kubernetes ar dtús le haghaidh feidhmchláir gan stát a phróiseálann sonraí ach nach stórálann aon rud, mar mhicreirbhísí nó feidhmchláir ghréasáin. Tá bunachair shonraí ag an taobh eile den speictream, is é sin, is feidhmchláir stáit iad. Agus ní raibh Kubernetes beartaithe ar dtús d'iarratais den sórt sin.
Mar sin féin, tá gnéithe le feiceáil in Kubernetes le déanaí a cheadaíonn úsáid bunachair shonraí agus feidhmchláir stáit eile:
Is sraith iomlán primitives é coincheap StatefulSet chun imeachtaí a phróiseáil maidir le hobair pods a stopadh agus Graceful Shutdown a chur i bhfeidhm (múchadh intuartha an iarratais).
Is stórais sonraí iad Imleabhair Seasmhacha a bhaineann le pods, rudaí bainistíochta Kubernetes.
Creat Oibreora - is é sin, an cumas comhpháirteanna a chruthú chun bunachair shonraí agus feidhmchláir stáit eile a dháileadh thar go leor nóid a bhainistiú.
Cheana féin sna scamaill phoiblí tá Bunachair Shonraí móra mar Sheirbhís, agus is é Kubernetes an t-inneall, mar shampla: CockroachCloud, InfluxDB, PlanetScale. Is é sin, ní hamháin go bhfuil bunachar sonraí ar Kubernetes rud is féidir go teoiriciúil, ach freisin rud a oibríonn go praiticiúil.
Tá dhá réiteach foinse oscailte ag Percona do Kubernetes:
Oibreoir Kubernetes le haghaidh Freastalaí Percona do MongoDB.
Is seirbhís é Oibritheoir Kubernetes do XtraDB CLUSTER atá comhoiriúnach le MySQL agus soláthraíonn sé ard-infhaighteacht agus comhsheasmhacht. Is féidir leat nód amháin a úsáid freisin mura bhfuil gá le hinfhaighteacht ard, mar shampla do bhunachar sonraí dev.
Is féidir úsáideoirí Kubernetes a roinnt ina dhá ghrúpa. Úsáideann roinnt daoine Oibreoirí Kubernetes go díreach - is úsáideoirí chun cinn iad seo den chuid is mó a bhfuil tuiscint mhaith acu ar conas a oibríonn an teicneolaíocht. Ritheann daoine eile é ar an inneall - tá suim ag úsáideoirí den sórt sin i rud éigin cosúil le Bunachar Sonraí mar Sheirbhís, níl siad ag iarraidh dul isteach i nuances Kubernetes. Don dara grúpa úsáideoirí, tá réiteach foinse oscailte eile againn - Percona DBaaS CLI Tool. Is réiteach turgnamhach é seo dóibh siúd ar mian leo foinse oscailte DBaaS a fháil bunaithe ar Kubernetes gan tuiscint dhomhain ar an teicneolaíocht.
Conas DBaaS Percona a rith ar Inneall Kubernetes Google
Is é Google Kubernetes Engine, i mo thuairim, ceann de na feidhmiúcháin is feidhmiúla de theicneolaíocht Kubernetes. Tá sé ar fáil i go leor réigiún ar fud an domhain agus tá Uirlis Líne Ordú (SDK) simplí agus áisiúil ann, a ligeann duit scripteanna a chruthú seachas an t-ardán a bhainistiú de láimh.
Ionas go n-oibreoidh ár DBaaS, ní mór dúinn na comhpháirteanna seo a leanas:
Cubectl.
Google Cloud SDK.
Percona DBaaS CLI.
Suiteáil kubectl
Suiteáil muid an pacáiste do do chóras oibriúcháin, féachfaimid ar shampla Ubuntu. Tuilleadh sonraí anseo.
Suiteáilimid an pacáiste bogearraí ar an mbealach céanna. Tuilleadh sonraí anseo.
# Add the Cloud SDK distribution URI as a package source
echo "deb [signed-by=/usr/share/keyrings/cloud.google.gpg]
http://packages.cloud.google.com/apt cloud-sdk main" | sudo tee -a /etc/apt/sources.list.d/google-cloud-sdk.list
# Import the Google Cloud Platform public key
curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key --keyring /usr/share/keyrings/cloud.google.gpg add -
# Update the package list and install the Cloud SDK
sudo apt-get update && sudo apt-get install google-cloud-sdk
Suiteáil Percona DBaaS CLI
Suiteáil ó stórtha Percona. Is táirge turgnamhach fós é Percona DBaaS CLI Tool, mar sin tá sé suite sa stór turgnamhach, a chaithfear a chumasú ar leithligh, fiú má tá stórtha Percona suiteáilte agat cheana féin.
Socraigh stórtha Percona ag baint úsáide as an uirlis percona-scaoileadh. Ar dtús is gá duit an pacáiste oifigiúil percona-scaoileadh ó Percona a íoslódáil agus a shuiteáil:
Ar dtús ní mór duit logáil isteach i do Chuntas Google. Ina theannta sin, ceadaíonn Google Cloud d’úsáideoir amháin go leor tionscadal neamhspleách a bheith aige, mar sin ní mór duit tionscadal oibre a shonrú ag baint úsáide as an gcód don tionscadal seo:
gcloud auth login
gcloud config set project hidden-brace-236921
Ansin, cruthaímid braisle. Don taispeántas, chruthaigh mé braisle Kubernetes de thrí nód amháin - is é seo an t-íosmhéid a theastaíonn le haghaidh infhaighteacht ard:
Ansin cruthaímid ainmspás agus déanaimid gníomhach é. Is cosúil, go garbh, le hainmspás le tionscadal nó le timpeallacht, ach cheana féin taobh istigh de bhraisle Kubernetes. Tá sé neamhspleách ar thionscadail Google Cloud:
Nuair a bheidh na céimeanna seo againn, is féidir linn cnuasach trí nód a thosú leis an ordú simplí seo:
# percona-dbaas mysql create-db example
Starting ......................................... [done]
Database started successfully, connection details are below:
Provider: k8s
Engine: pxc
Resource Name: example
Resource Endpoint: example-proxysql.my-namespace.pxc.svc.local
Port: 3306
User: root
Pass: Nt9YZquajW7nfVXTTrP
Status: ready
Conas a nascadh le braisle
De réir réamhshocraithe, níl sé ar fáil ach taobh istigh de Kubernetes. Is é sin, níl sé inrochtana ón bhfreastalaí seo ónar rith tú an t-ordú “Cruthaigh”. Chun é a chur ar fáil, mar shampla, le haghaidh tástálacha le cliant, ní mór duit an calafort a chur ar aghaidh trí Mhapáil Port:
mysql -h 127.0.0.1 -P 3306 -uroot -pNt9YZquajW7nfVXTTrP
Ard-orduithe bainistíochta braisle
Bunachar sonraí ar IP poiblí saor in aisce,
Más mian leat réiteach níos buaine maidir le hinfhaighteacht braisle, is féidir leat seoladh IP seachtrach a fháil. Sa chás seo, beidh an bunachar sonraí inrochtana ó áit ar bith. Níl sé seo chomh slán, ach go minic níos áisiúla. Le haghaidh IP seachtrach úsáidimid an t-ordú seo a leanas:
# percona-dbaas mysql create-db exposed
--options="proxysql.serviceType=LoadBalancer"
Starting ......................................... [done]
Database started successfully, connection details are below:
Provider: k8s
Engine: pxc
Resource Name: exposed
Resource Endpoint: 104.154.133.197
Port: 3306
User: root
Pass: k0QVxTr8EVfgyCLYse
Status: ready
To access database please run the following command:
mysql -h 104.154.133.197 -P 3306 -uroot -pk0QVxTr8EVfgyCLYse
Socraigh an focal faire go soiléir
In ionad an chórais pasfhocal a ghiniúint go randamach, is féidir leat an focal faire a shocrú go sainráite:
Is réiteach é seo chun tascanna a thástáil chun MySQL a chur ar bun chomh tapa agus chomh héasca agus is féidir, é a thástáil, agus ansin é a dhúnadh nó é a úsáid le haghaidh forbartha.
Cuidíonn uirlis Percona DBaaS CLI leat réiteach cosúil le DBaaS a bhaint amach ar Kubernetes. Ag an am céanna, leanaimid orainn ag obair ar a fheidhmiúlacht agus a inúsáidteacht.