A’ stòradh dàta ann am buidheann Kubernetes

Tha grunn dhòighean ann air stòradh dàta a rèiteachadh airson tagraidhean a tha a’ ruith air cruinneachadh Kubernetes. Tha cuid dhiubh mar-thà seann-fhasanta, nochd cuid eile o chionn ghoirid. San artaigil seo, seallaidh sinn ri bun-bheachd trì roghainnean airson siostaman stòraidh a cheangal, a ’toirt a-steach am fear as ùire - ceangal tron ​​​​eadar-aghaidh stòraidh container.

A’ stòradh dàta ann am buidheann Kubernetes

Dòigh 1: Sònraich PV anns a’ pod follaiseach

Taisbeanadh àbhaisteach a’ toirt cunntas air pod ann am buidheann Kubernetes:

A’ stòradh dàta ann am buidheann Kubernetes

Na pàirtean den fhoillseachadh a tha ag innse dè an tomhas-lìonaidh a tha ceangailte agus far a bheil iad air an comharrachadh ann an dath.

earrann toirtMounts comharraich na puingean sreap (mountPath) - anns an eòlaire taobh a-staigh an t-soithich a thèid an leabhar maireannach a chuir suas, a bharrachd air ainm an leabhair.

earrann x a’ liostadh a h-uile leabhar a thathas a’ cleachdadh sa pod. Sònraich ainm gach leabhar, a bharrachd air an t-seòrsa (anns a’ chùis againn: awsElasticBlockStore) agus paramadairean ceangail. Bidh na paramadairean a tha air an liostadh anns an fhollaiseach an urra ris an t-seòrsa meud.

Faodar an aon mheud a chuir suas aig an aon àm ann an grunn shoithichean pod. San dòigh seo, gheibh diofar phròiseasan tagraidh cothrom air an aon dàta.

Chaidh an dòigh ceangail seo a chruthachadh aig an fhìor thoiseach, nuair a bha Kubernetes dìreach na òige, agus an-diugh tha an dòigh seann-fhasanta.

Tha grunn dhuilgheadasan ann nuair a bhios tu ga chleachdadh:

  1. feumar a h-uile leabhar a chruthachadh le làimh; chan urrainn dha Kubernetes dad a chruthachadh dhuinn;
  2. tha paramadairean ruigsinneachd airson gach leabhar gun samhail, agus feumaidh iad a bhith air an sònrachadh ann am foillseachadh a h-uile pods a chleachdas an tomhas-lìonaidh;
  3. gus an siostam stòraidh atharrachadh (mar eisimpleir, gluais bho AWS gu Google Cloud), feumaidh tu na roghainnean agus an seòrsa de leabhraichean sreap atharrachadh anns a h-uile taisbeanadh.

Tha seo uile gu math mì-ghoireasach, agus mar sin ann an da-rìribh tha an dòigh seo air a chleachdadh gus dìreach cuid de sheòrsan sònraichte de leabhraichean a cheangal: configMap, secret, emptyDir, hostPath:

  • Tha configMap agus dìomhair nan leabhraichean seirbheis a leigeas leat tomhas-lìonaidh a chruthachadh le faidhlichean bho nochdadh Kubernetes sa bhogsa.

  • Is e leabhar sealach a th’ ann an emptyDir, air a chruthachadh a-mhàin fad beatha a’ phoit. Goireasach airson a chleachdadh airson deuchainn no stòradh dàta sealach. Nuair a thèid pod a dhubhadh às, thèid an tomhas-lìonaidh emptyDir a dhubhadh às cuideachd agus thèid an dàta gu lèir a chall.

  • hostPath - a’ leigeil leat eòlaire sam bith a chuir suas air diosc ionadail an fhrithealaiche air a bheil an tagradh a ’ruith taobh a-staigh an t-soithich leis an tagradh, a’ toirt a-steach /etc/kubernetes. Is e feart mì-shàbhailte a tha seo, agus mar sin tha poileasaidhean tèarainteachd mar as trice a’ toirmeasg cleachdadh meudan den t-seòrsa seo. Rud eile, bidh e comasach dha tagradh neach-ionnsaigh an eòlaire HTC Kubernetes a chuir a-steach don t-soitheach aige agus na teisteanasan brabhsair gu lèir a ghoid. Mar as trice, chan fhaod leabhraichean hostPath a bhith air an cleachdadh ach le tagraidhean siostaim a tha a’ ruith ann an àite-ainm siostam kube.

Siostaman stòraidh a bhios Kubernetes ag obair leotha a-mach às a’ bhogsa air an toirt seachad anns na sgrìobhainnean.

Dòigh 2. Ceangal ri teintean SC/PVC/PV

Is e dòigh ceangail eile am bun-bheachd de chlas stòraidh, PersistentVolumeClaim, PersistentVolume.

Clas stòraidh a’ stòradh pharaimearan ceangail ris an t-siostam stòraidh dàta.

Claidheamh Meud Seasmhach a’ toirt cunntas air na riatanasan airson na tha a dhìth air an iarrtas.
Meud Seasmhach stòran ruigsinneachd agus inbhe meud.

Brìgh a’ bheachd: anns a’ pod follaiseach tha iad a’ comharrachadh meud de sheòrsa PersistentVolumeClaim agus a’ comharrachadh ainm an eintiteas seo ann am paramadair claimName.

A’ stòradh dàta ann am buidheann Kubernetes

Tha am foillseachadh PersistentVolumeClaim a’ toirt cunntas air na riatanasan airson na tha de dhàta a dhìth air an tagradh. A' gabhail a-steach:

  • meud diosc;
  • modh ruigsinneachd: ReadWriteOnce no ReadWriteMany;
  • ceangal gu clas stòraidh - anns an t-siostam stòraidh dàta a tha sinn airson an tomhas-lìonaidh a chruthachadh.

Bidh an clas stòraidh follaiseach a’ stòradh seòrsa agus crìochan a’ cheangail ris an t-siostam stòraidh. Feumaidh an cubelet iad gus an tomhas-lìonaidh a chuir air a nód.

Tha taisbeanaidhean PersistentVolume a’ nochdadh an clas Stòraidh agus paramadairean ruigsinneachd airson meud sònraichte (ID leabhar, slighe, msaa).

Nuair a bhios tu a’ cruthachadh PVC, bidh Kubernetes a’ coimhead air dè am meud meud agus dè an clas stòraidh a tha a dhìth, agus a’ taghadh PersistentVolume an-asgaidh.

Mura h-eil na PVan sin rim faighinn, faodaidh Kubernetes prògram sònraichte a chuir air bhog - Solaraiche (tha an t-ainm air a chomharrachadh anns a ’chlas Stòraidh). Bidh am prògram seo a’ ceangal ris an t-siostam stòraidh, a’ cruthachadh tomhas-lìonaidh den mheud a tha a dhìth, a’ faighinn aithnichear agus a’ cruthachadh foillseachadh PersistentVolume ann am buidheann Kubernetes, a tha co-cheangailte ris an PersistentVolumeClaim.

Leigidh an t-seata seo de tharraingean dhut fiosrachadh a thoirt air falbh mun t-siostam stòraidh leis a bheil an tagradh ag obair bho ìre follaiseach an tagraidh gu ìre rianachd.

Tha a h-uile paramadair airson ceangal ris an t-siostam stòraidh dàta suidhichte anns a’ chlas Stòraidh, air a bheil luchd-rianachd brabhsair cunntachail. Chan eil agad ach a bhith a’ gluasad bho AWS gu Google Cloud ach ainm a’ chlas Stòraidh atharrachadh gu PVC anns na taisbeanaidhean tagraidh. Thèid Persistance Volume airson stòradh dàta a chruthachadh sa bhuidheann gu fèin-ghluasadach a’ cleachdadh a’ phrògram Provideer.

Dòigh 3. Container Storage Interface

Tha a h-uile còd a tha ag eadar-obrachadh le diofar shiostaman stòraidh mar phàirt de chridhe Kubernetes. Tha sgaoileadh fuasglaidhean bug no comas-gnìomh ùr ceangailte ri fiosan ùra; feumar an còd atharrachadh airson a h-uile dreach le taic de Kubernetes. Tha seo uile duilich a chumail suas agus comas-gnìomh ùr a chuir ris.

Gus an duilgheadas fhuasgladh, chruthaich luchd-leasachaidh bho Cloud Foundry, Kubernetes, Mesos agus Docker an Eadar-aghaidh Stòradh Container (CSI) - eadar-aghaidh aonaichte sìmplidh a bheir cunntas air eadar-obrachadh an t-siostam riaghlaidh container agus draibhear sònraichte (CSI Driver) a bhios ag obair le inneal sònraichte. siostam stòraidh. Chaidh a h-uile còd airson eadar-obrachadh le siostaman stòraidh a ghluasad bho chridhe Kubernetes gu siostam air leth.

Sgrìobhainnean eadar-aghaidh stòraidh container.

Mar as trice, tha dà phàirt ann an CSI Driver: Plugin Node agus plugan Rianadair.

Bidh Node Plugin a’ ruith air gach nód agus tha e an urra ri meudan a chuir suas agus gnìomhachd a dhèanamh orra. Bidh am plugan Rianadair ag eadar-obrachadh leis an t-siostam stòraidh: a’ cruthachadh no a’ sguabadh às leabhraichean, a’ sònrachadh chòraichean-slighe, msaa.

Airson a-nis, tha na seann dhraibhearan fhathast ann an kernel Kubernetes, ach chan eilear a ’moladh an cleachdadh tuilleadh agus thathas a’ comhairleachadh a h-uile duine an CSI Driver a chuir a-steach gu sònraichte airson an t-siostam leis am bi iad ag obair.

Faodaidh an innleachdas eagal a chuir air an fheadhainn a tha cleachdte ri bhith a’ stèidheachadh stòradh dàta tron ​​​​chlas Stòraidh, ach gu dearbh cha do thachair dad uamhasach. Airson luchd-prògramaidh, chan eil dad ag atharrachadh gu mòr - tha iad air obrachadh a-mhàin leis an ainm Storage class, agus leanaidh iad orra a 'dèanamh sin. Do luchd-rianachd, chaidh an stàladh clàr-stiùiridh a chur ris agus tha structar nan roghainnean air atharrachadh. Ma chaidh na roghainnean a chuir a-steach gu dìreach a-steach don chlas Stòraidh roimhe seo, a-nis feumaidh iad a bhith air an suidheachadh anns a ’chairt stiùir, agus an uairsin anns a’ chlas Stòraidh. Ma choimheadas tu a-steach dha, cha do thachair dad dona.

Gabhamaid eisimpleir gus sùil a thoirt air na buannachdan a gheibh thu le bhith ag atharrachadh gu bhith a’ ceangal siostaman stòraidh Ceph a’ cleachdadh an draibhear CSI.

Nuair a bhios tu ag obair le Ceph, tha am plugan CSI a’ toirt seachad barrachd roghainnean airson obrachadh le siostaman stòraidh na draibhearan togte.

  1. Cruthachadh diosc dinamic. Mar as trice chan eilear a’ cleachdadh diosgan RBD ach ann am modh RWO, ach leigidh CSI airson Ceph an cleachdadh ann am modh RWX. Faodaidh grunn pods air nodan eadar-dhealaichte an aon diosc RDB a chuir air na nodan aca agus obrachadh còmhla riutha aig an aon àm. Gus a bhith cothromach, chan eil a h-uile dad cho soilleir - chan urrainnear an diosc seo a cheangal ach mar inneal bloca, a tha a ’ciallachadh gum feum thu an tagradh atharrachadh gus obrachadh leis ann am modh ioma-ruigsinneachd.
  2. A 'cruthachadh dhealbhan-camara. Ann am buidheann de Kubernetes, faodaidh tu foillseachadh a chruthachadh leis an riatanas airson dealbh a chruthachadh. Chì am plugan CSI e agus bheir e dealbh bhon diosc. Stèidhichte air, faodaidh tu cùl-taic no leth-bhreac de PersistentVolume a dhèanamh.
  3. Meudachadh meud diosc air stòradh agus PersistentVolume ann am buidheann Kubernetes.
  4. Cuotas. Chan eil na draibhearan CephFS a chaidh a thogail a-steach do Kubernetes a’ toirt taic do chuotathan, ach faodaidh plugins CSI ùra leis an Ceph Nautilus as ùire cuotathan a chomasachadh air sgaraidhean CephFS.
  5. Meatrics. Faodaidh am plugan CSI measgachadh de mheatairean a thoirt do Prometheus mu na meudan a tha ceangailte, dè an conaltradh a tha a’ tachairt, msaa.
  6. Topology mothachail. A’ leigeil leat sònrachadh ann am manifestos mar a tha am buidheann air a chuairteachadh gu cruinn-eòlasach, agus seachain siostam stòraidh a tha suidhichte ann an Amsterdam a cheangal ri pods a tha a’ ruith ann an Lunnainn.

Mar a cheanglas tu Ceph ri cruinneachadh Kubernetes tro CSI, faic anns a’ phàirt phractaigeach de dh’òraid sgoil-oidhche Slurm. Faodaidh tu cuideachd fo-sgrìobhadh gu Video cùrsa ceph, a thèid a chuir air bhog air 15 Dàmhair.

Ùghdar an artaigil: Sergey Bondarev, ailtire gnìomhach aig Southbridge, Rianadair Teisteanas Kubernetes, aon de luchd-leasachaidh kubespray.

Beagan Post Scriptum chan ann airson sanasachd, ach airson buannachd ...

Bidh PS Sergey Bondarev a 'stiùireadh dà chùrsa dian: ùrachadh Bunait Kubernetes Sultain 28-30 agus adhartach Beanntan Mega Dàmhair 14-16.

A’ stòradh dàta ann am buidheann Kubernetes

Source: www.habr.com

Cuir beachd ann