SDS arkitekturaren konparaketa laburra edo biltegiratze plataforma egoki bat bilatzea (GlusterVsCephVsVirtuozzoStorage)

Artikulu hau zuretzako irtenbide egokia aukeratzen laguntzeko eta Gluster, Ceph eta Vstorage (Virtuozzo) bezalako SDSen arteko desberdintasunak ulertzen laguntzeko idatzi zen.

Testuak arazo jakin batzuen berri zehatzagoa duten artikuluetarako estekak erabiltzen ditu, beraz, deskribapenak ahalik eta laburrenak izango dira, beharrezkoak ez diren puntu gakoak erabiliz eta, nahi izanez gero, Interneten modu independentean lor dezakezun sarrerako informazioa erabilita.

Izan ere, noski, planteatutako gaiek testuaren tonuak eskatzen dituzte, baina mundu modernoan gero eta jende gehiagori ez zaio asko gustatzen irakurtzea))), beraz, azkar irakurri eta aukera bat egin dezakezu, eta zerbait bada. ez dago argi, jarraitu estekak edo google hitz ez-argiak))), eta artikulu hau gai sakon hauetarako bilgarri gardena da, betetzea erakusten du - erabaki bakoitzaren gako nagusiak.

Distira

Has gaitezen Gluster-etik, ingurune birtualetarako kode irekian oinarritutako SDS duten plataforma hiperkonbergetuen fabrikatzaileek aktiboki erabiltzen dutena eta RedHat webgunean biltegiratze atalean aurki daitekeena, non SDS bi aukeren artean aukera dezakezun: Gluster edo Ceph.

Gluster itzultzaile pila batek osatzen du - fitxategiak banatzeko lan guztia egiten duten zerbitzuak, etab. Brick disko bati zerbitzua ematen dion zerbitzua da, Bolumena adreilu hauek batzen dituen bolumena (igerilekua) da. Ondoren, fitxategiak taldeetan banatzeko zerbitzua dator DHT (distributed hash table) funtzioa erabiliz. Ez dugu Sharding zerbitzua deskribapenean sartuko beheko estekek harekin lotutako arazoak deskribatuko baitituzte.

SDS arkitekturaren konparaketa laburra edo biltegiratze plataforma egoki bat bilatzea (GlusterVsCephVsVirtuozzoStorage)

Idaztean, fitxategi osoa adreiluan gordetzen da eta bere kopia aldi berean bigarren zerbitzarian adreiluan idazten da. Ondoren, bigarren fitxategia zerbitzari desberdinetan bi adreiluz (edo gehiagoz) bigarren taldean idatziko da.

Fitxategiak gutxi gorabehera tamaina berekoak badira eta bolumena talde bakarraz osatuta badago, dena ondo dago, baina beste baldintza batzuetan honako arazo hauek sortuko dira deskribapenetatik:

  • taldeetan espazioa modu irregularrean erabiltzen da, fitxategien tamainaren araberakoa da eta taldean fitxategi bat idazteko leku nahikorik ez badago, errore bat jasoko duzu, fitxategia ez da idatziko eta ez da beste talde batera banatuko ;
  • fitxategi bat idaztean, IO talde batera doa bakarrik, gainerakoak inaktibo daude;
  • ezin duzu bolumen osoaren IO-a lortu fitxategi bat idaztean;
  • eta kontzeptu orokorrak gutxiago ematen du datuen banaketa blokeetan ez dagoelako, non errazagoa den banaketa uniformearen arazoa orekatu eta konpontzea, eta ez orain fitxategi osoa bloke batean sartzen den bezala.

Deskribapen ofizialetik arkitektura halaber, nahi gabe ulertzen dugu gluster-ek fitxategien biltegiratze gisa funtzionatzen duela hardware RAID klasikoaren gainean. Fitxategiak blokeetan mozteko (Sharding) saiakerak egon dira, baina hori guztia lehendik dagoen ikuspegi arkitektonikoan errendimendu galerak ezartzen dituen gehigarri bat da, eta Fuse bezalako errendimendu-mugak dituzten aske banatutako osagaiak erabiltzea. Ez dago metadatu zerbitzurik, eta horrek biltegiratze-ren errendimendua eta akats-tolerantzia gaitasunak mugatzen ditu fitxategiak blokeetan banatzean. Errendimendu-adierazle hobeak ikus daitezke "Banatutako Erreplikatua" konfigurazioarekin eta nodo kopurua gutxienez 6 izan behar du 3 erreplika fidagarri bat antolatzeko karga banaketa optimoarekin.

Aurkikuntza hauek erabiltzailearen esperientziaren deskribapenarekin ere lotuta daude Distira eta horrekin alderatuta Ceph, eta konfigurazio produktiboago eta fidagarriagoa hau ulertzeko esperientziaren deskribapena ere badago "Banatutako errepikatua".
SDS arkitekturaren konparaketa laburra edo biltegiratze plataforma egoki bat bilatzea (GlusterVsCephVsVirtuozzoStorage)

Irudiak bi fitxategi idaztean kargaren banaketa erakusten du, non lehen fitxategiaren kopiak lehenengo hiru zerbitzarietan banatzen diren, 0 bolumenaren taldean konbinatzen diren, eta bigarren fitxategiaren hiru kopia bigarren taldean hiruko bolumenean jartzen diren. zerbitzariak. Zerbitzari bakoitzak disko bat du.

Ondorio orokorra da Gluster erabil dezakezula, baina ulertuta errendimenduan eta akatsen tolerantzian mugak egongo direla, irtenbide hiperkonbergeatu baten baldintza jakin batzuetan zailtasunak sortzen dituztenak, non ingurune birtualen karga informatikoetarako baliabideak ere behar diren.

Baldintza jakin batzuetan lor daitezkeen Gluster-en errendimendu-adierazle batzuk ere badaude, mugatuta akatsen tolerantzia.

Ceph

Orain ikus ditzagun Ceph-i egin ahal izan ditudan arkitektura deskribapenetatik aurkitu. arteko konparaketa ere badago Glusterfs eta Ceph, non berehala ulertuko duzun Ceph zerbitzari bereizietan zabaltzea komeni dela, bere zerbitzuek kargapean dauden hardware baliabide guztiak behar baitituzte.

arkitektura Ceph Gluster baino konplexuagoa eta metadatuen zerbitzuak bezalako zerbitzuak daude, baina osagai pila osoa nahiko konplexua da eta ez da oso malgua birtualizazio irtenbide batean erabiltzeko. Datuak blokeetan gordetzen dira, eta horrek emankorragoa dirudi, baina zerbitzu guztien (osagaien) hierarkian, galerak eta latentzia daude karga eta larrialdi-baldintza batzuetan, adibidez, honako hauek. Artikulu.

Arkitekturaren deskribapenetik, bihotza CRUSH da, eta horri esker datuak gordetzeko kokapena hautatzen da. Ondoren PG dator - hau da ulertzeko abstrakziorik zailena (talde logikoa). PGak behar dira CRUSH eraginkorragoa izan dadin. PGren helburu nagusia objektuak taldekatzea da, baliabideen kontsumoa murrizteko, errendimendua eta eskalagarritasuna areagotzeko. Objektuak zuzenean, banan-banan, zuzentzea PG batean konbinatu gabe oso garestia litzateke. OSD disko bakoitzarentzako zerbitzu bat da.

SDS arkitekturaren konparaketa laburra edo biltegiratze plataforma egoki bat bilatzea (GlusterVsCephVsVirtuozzoStorage)

SDS arkitekturaren konparaketa laburra edo biltegiratze plataforma egoki bat bilatzea (GlusterVsCephVsVirtuozzoStorage)

Kluster batek datu multzo bat edo asko izan ditzake helburu ezberdinetarako eta ezarpen ezberdinekin. Igerilekuak kokapen taldeetan banatzen dira. Kokapen-taldeek bezeroek atzitzen dituzten objektuak gordetzen dituzte. Hemen amaitzen da maila logikoa, eta maila fisikoa hasten da, kokapen-talde bakoitzari disko nagusi bat eta hainbat disko erreplika esleitzen zaizkiolako (zenbat igerilekuen erreplikazio-faktorearen araberakoak dira zehazki). Beste era batera esanda, maila logikoan objektua kokapen talde zehatz batean gordetzen da, eta maila fisikoan - esleitzen zaizkion diskoetan. Kasu honetan, diskoak fisikoki nodo ezberdinetan edo datu-zentro ezberdinetan egon daitezke.

Eskema honetan, kokapen-taldeek irtenbide osoaren malgutasunerako beharrezko maila dirudi, baina, aldi berean, kate honetako lokarri gehigarri gisa, eta horrek nahi gabe produktibitatearen galera iradokitzen du. Adibidez, datuak idazterakoan, sistemak talde hauetan banatu behar ditu eta gero maila fisikoan disko nagusian eta errepliketarako diskoetan. Hau da, Hash funtzioak objektu bat bilatzen eta txertatzen duenean funtzionatzen du, baina albo-ondorio bat dago - oso kostu handiak dira hash-a berreraikitzean (disko bat gehitzean edo kentzean). Beste hash arazo bat aldatu ezin diren datuen kokapena argi iltzatuta dago. Hau da, nolabait diskoa karga handitzen bada, orduan sistemak ez du aukerarik ez idazteko (beste disko bat hautatuz), hash funtzioak datuak arauaren arabera kokatzea behartzen du, nahiz eta txarra izan. diskoa da, beraz, Ceph-ek memoria asko jaten du PG-a berreraikitzean auto-sendatu edo biltegiratzea handituz gero. Ondorioa da Ceph-ek ondo funtzionatzen duela (poliki bada ere), baina eskalatzerik, larrialdi egoerarik edo eguneratzerik ez dagoenean.

Badaude, noski, errendimendua areagotzeko aukerak cachearen eta cachearen partekatzearen bidez, baina horrek hardware ona behar du eta oraindik ere galerak egongo dira. Baina, oro har, Ceph-ek Gluster baino tentagarriagoa dirudi produktibitaterako. Gainera, produktu hauek erabiltzean, faktore garrantzitsu bat kontuan hartu behar da: gaitasun, esperientzia eta profesionaltasun maila altua da Linux-en garrantzia handia duena, oso garrantzitsua baita dena behar bezala zabaltzea, konfiguratzea eta mantentzea. horrek are ardura eta zama gehiago ezartzen dizkio administratzaileari.

Vbiltegiratzea

Arkitekturak are interesgarriagoa dirudi Virtuozzo biltegiratzea (Vstorage), nodo bereko hipervisor batekin batera erabil daitekeena, berean guruina, baina oso garrantzitsua da guztia behar bezala konfiguratzea errendimendu ona lortzeko. Hau da, horrelako produktu bat kutxatik edozein konfiguraziotan zabaltzea arkitekturaren araberako gomendioak kontuan hartu gabe oso erraza izango da, baina ez da produktiboa.

Kvm-qemu hipervisorearen zerbitzuen ondoan biltegiratzeko zer elkarrekin bizi daiteke, eta osagaien hierarkia optimo trinkoa aurkitu den zerbitzu batzuk baino ez dira: FUSE bidez muntatutako bezero-zerbitzua (aldatua, ez kode irekikoa), MDS metadatuen zerbitzua. (Metadata zerbitzua), zerbitzu Chunk zerbitzuko datu-blokeak, maila fisikoan disko baten berdina dena eta kito. Abiadurari dagokionez, noski, bi erreplikekin akatsen aurkako eskema bat erabiltzea ezin hobea da, baina SSD unitateetan caching-a eta erregistroak erabiltzen badituzu, akatsekiko tolerantzia-kodeketa (erase kodifikazioa edo raid6) dexente overclock daiteke. eskema hibridoa edo are hobeto flash guztietan. Desabantaila batzuk daude ECrekin (ezabatu kodeketa): datu-bloke bat aldatzean, parekotasun-kopuruak berriro kalkulatu behar dira. Eragiketa honekin lotutako galerak saihesteko, Ceph-ek atzeratuta idazten dio ECri eta errendimendu-arazoak sor daitezke eskaera jakin batean, adibidez, bloke guztiak irakurri behar direnean, eta Virtuozzo Storage-ren kasuan, aldatutako blokeen idazketa egiten denean. "Erregistro-egituratutako fitxategi-sistema" ikuspegia erabiliz, parekidetasuna kalkulatzeko kostuak minimizatzen dituena. EC eta gabe lanaren azelerazioarekin gutxi gorabehera aukerak estimatzeko, badaude kalkulagailua. – zifrak gutxi gorabeherakoak izan daitezke ekipoaren fabrikatzailearen zehaztasun-koefizientearen arabera, baina kalkuluen emaitza lagungarri ona da konfigurazioa planifikatzeko.

Biltegiratzeko osagaien diagrama sinple batek ez du esan nahi osagai horiek xurgatzen ez direnik burdin baliabideak, baina kostu guztiak aldez aurretik kalkulatzen badituzu, elkarlanarekin konta dezakezu hipervisorearen ondoan.
Ceph eta Virtuozzo biltegiratze zerbitzuek hardware-baliabideen kontsumoa alderatzeko eskema bat dago.

SDS arkitekturaren konparaketa laburra edo biltegiratze plataforma egoki bat bilatzea (GlusterVsCephVsVirtuozzoStorage)

Lehenago Gluster eta Ceph artikulu zaharrak erabiliz konparatzea posible bazen, haietako lerro garrantzitsuenak erabiliz, orduan Virtuozzorekin zailagoa da. Ez dago produktu honi buruzko artikulu asko eta dokumentaziotik soilik jaso daiteke informazioa ingelesez edo errusieraz, esaterako, enpresetako soluzio hiperkonbergeatu batzuetan erabiltzen den biltegiratzetzat hartzen badugu Vstorage Rosplatforma eta Acronis.

Arkitektura honen deskribapenarekin laguntzen saiatuko naiz, beraz, testu apur bat gehiago egongo da, baina dokumentazioa zuk zeuk ulertzeko denbora asko behar da, eta dagoen dokumentazioa erreferentzia gisa soilik erabil daiteke taula berrikusita. edukien edo gako-hitz bidez bilatzea.

Har dezagun grabaketa-prozesua hardware-konfigurazio hibrido batean goian deskribatutako osagaiekin: grabazioa bezeroak hasi zuen nodora joaten hasten da (FUSE muntatze-puntuaren zerbitzua), baina Metadatuen Zerbitzua (MDS) osagai nagusia izango da noski. zuzendu bezeroa zuzenean nahi den zati-zerbitzura (biltegiratze-zerbitzua CS blokeak), hau da, MDS-k ez du grabazio-prozesuan parte hartzen, baizik eta zerbitzua behar den zatira zuzentzen du. Oro har, analogia bat eman diezaiokegu grabaketari ura upeletan botatzearekin. Upel bakoitza 256 MBko datu-bloke bat da.

SDS arkitekturaren konparaketa laburra edo biltegiratze plataforma egoki bat bilatzea (GlusterVsCephVsVirtuozzoStorage)

Hau da, disko bat halako upel kopuru jakin bat da, hau da, diskoaren bolumena 256MB-rekin banatuta. Kopia bakoitza nodo batera banatzen da, bigarrena ia beste nodo baten paraleloan, etab... Hiru erreplika baditugu eta SSD diskoak badaude cacherako (erregistroak irakurtzeko eta idazteko), orduan idazketaren berrespena gertatuko da idatzi ondoren. SSDrako erregistroa eta SSDaren berrezartze paraleloa HDDn jarraituko dute, atzeko planoan bezala. Hiru errepliken kasuan, erregistroa hirugarren nodoaren SSD-tik baieztatu ondoren konprometituko da. Badirudi hiru SSDren idazketa-abiaduraren batura hiruz zati daitekeela eta erreplika baten idazketa-abiadura lortuko dugula, baina kopiak paraleloan idazten dira eta sareko Latentzia-abiadura SSDarena baino handiagoa izan ohi da. eta, hain zuzen ere, idazketa-errendimendua sarearen araberakoa izango da. Zentzu honetan, IOPS errealak ikusteko, Vstorage osoa behar bezala kargatu behar duzu metodologia, hau da, benetako karga probatzea, eta ez memoria eta cachea, non kontuan hartu behar diren datu-blokeen tamaina egokia, hari kopurua, etab.

Goian aipatutako SSD-ko grabazio-erregistroak honela funtzionatzen du, non datuak sartu bezain laster, zerbitzuak berehala irakurtzen ditu eta HDDan idazten du. Hainbat metadatu zerbitzu (MDS) daude kluster bakoitzeko eta haien kopurua quorum batek zehazten du, Paxos algoritmoaren arabera funtzionatzen duena. Bezeroaren ikuspuntutik, FUSE muntatze-puntua klusterreko nodo guztientzat aldi berean ikusgai dagoen klusterreko biltegiratze-karpeta bat da, nodo bakoitzak printzipio honen arabera muntatutako bezero bat du, beraz biltegiratze hori nodo bakoitzarentzat eskuragarri dago.

Goian deskribatutako planteamenduetako edozein gauzatzeko, oso garrantzitsua da, plangintza eta hedapen fasean, sarea behar bezala konfiguratzea, non oreka egongo den agregazioaren eta behar bezala hautatutako sareko kanalaren banda-zabaleraren ondorioz. Agregazioan, garrantzitsua da hashing modua eta fotograma-tamaina egokiak aukeratzea. Goian deskribatutako SDSarekiko desberdintasun handia ere badago, Virtuozzo Storage-n bide azkarreko teknologiarekin fusionatzen da. Horrek, metxa modernizatuaz gain, kode irekiko beste soluzio batzuek ez bezala, IOPS nabarmen handitzen du eta eskala horizontal edo bertikalean mugarik ez egotea ahalbidetzen du. Oro har, goian deskribatutako arkitekturekin alderatuta, honek indartsuagoa dirudi, baina plazer hori lortzeko, noski, lizentziak erosi behar dituzu, Ceph eta Gluster ez bezala.

Laburbilduz, hiruren goiko aldea nabarmendu dezakegu: Virtuozzo Storage-k lehen postua hartzen du arkitekturaren errendimendu eta fidagarritasunari dagokionez, Ceph-ek bigarren postua eta Gluster-ek hirugarren postua.

Virtuozzo Storage hautatu zen irizpideak: osagai arkitektonikoen multzo optimoa da, Fuse ikuspegi honetarako modernizatua, bide bizkor batekin, hardware konfigurazio multzo malguarekin, baliabideen kontsumo gutxiagorekin eta konputazioarekin partekatzeko gaitasunarekin (konputazioa/birtualizazioa), hau da, guztiz egokia da soluzio hiperkonbergatu baterako , zeinaren parte baita. Bigarren postua Ceph da, Glusterrekin alderatuta arkitektura produktiboagoa delako, blokeetan funtzionatzeagatik, baita eszenatoki malguagoak eta kluster handiagoetan lan egiteko gaitasunagatik.

vSAN, Space Direct Storage, Vstorage eta Nutanix Storage-ren arteko konparaketa idazteko asmoa dago, Vstorage probatzen HPE eta Huawei ekipoetan, baita Vstorage kanpoko hardware biltegiratze sistemekin integratzeko eszenatokiak ere, beraz, artikulua gustatu bazaizu, izango litzateke. atsegina da zure iritzia jasotzea, eta horrek artikulu berrietarako motibazioa areagotu dezake, zure iruzkinak eta nahiak kontuan hartuta.

Iturria: www.habr.com

Gehitu iruzkin berria