Kuerz Verglach vun der SDS Architektur oder Sich no enger passender Späicherplattform (GlusterVsCephVsVirtuozzoStorage)

Dësen Artikel gouf geschriwwen fir Iech ze hëllefen déi richteg Léisung fir Iech selwer ze wielen an d'Ënnerscheeder tëscht SDS wéi Gluster, Ceph a Vstorage (Virtuozzo) ze verstoen.

Den Text benotzt Linken op Artikelen mat enger méi detailléierter Verëffentlechung vu bestëmmte Probleemer, sou datt d'Beschreiwunge sou kuerz wéi méiglech sinn, mat Schlësselpunkten ouni onnéideg Fluff an Aféierungsinformatioun, déi Dir, wann Dir wëllt, onofhängeg um Internet kréien.

Tatsächlech erfuerderen d'Themen natierlech d'Téin vum Text, awer an der moderner Welt liesen ëmmer méi Leit net gär vill))), also kënnt Dir séier liesen an e Choix maachen, a wann eppes ass net kloer, befollegt d'Links oder Google onkloer Wierder))), an dësen Artikel ass wéi eng transparent Wrapper fir dës déif Themen, weist d'Fëllung - d'Haaptschlësselpunkte vun all Entscheedung.

Glanz

Loosst eis mat Gluster ufänken, deen aktiv vun Hiersteller vun hyperkonvergéierte Plattformen mat SDS benotzt gëtt baséiert op Open Source fir virtuell Ëmfeld a kann op der RedHat Websäit an der Späichersektioun fonnt ginn, wou Dir aus zwou SDS-Optioune kënnt wielen: Gluster oder Ceph.

Gluster besteet aus engem Stack vun Iwwersetzer - Servicer déi all d'Aarbecht vun der Verdeelung vun Dateien ausféieren, etc. Brick ass e Service deen een Disk servéiert, Volume ass e Volume (Pool) deen dës Zillen verbënnt. Als nächst kënnt de Service fir Dateien a Gruppen ze verdeelen mat der DHT (verdeelt Hash Table) Funktioun. Mir wäerten de Sharding Service net an der Beschreiwung enthalen, well d'Links hei drënner d'Problemer beschreiwen, déi domat verbonne sinn.

Kuerz Verglach vun der SDS Architektur oder Sich no enger passender Späicherplattform (GlusterVsCephVsVirtuozzoStorage)

Beim Schreiwen gëtt déi ganz Datei a Brick gespäichert a seng Kopie gëtt gläichzäiteg op den zweete Server op Brick geschriwwe. Als nächst gëtt déi zweet Datei an déi zweet Grupp vun zwee Zillen (oder méi) op ​​verschiddene Server geschriwwe ginn.

Wann d'Dateien ongeféier déiselwecht Gréisst sinn an de Volume aus nëmmen enger Grupp besteet, dann ass alles gutt, awer ënner anerem Konditiounen entstinn déi folgend Problemer aus de Beschreiwunge:

  • Raum a Gruppen gëtt ongläich genotzt, et hänkt vun der Gréisst vun de Fichier of a wann et net genuch Plaz am Grupp ass fir eng Datei ze schreiwen, kritt Dir e Feeler, de Fichier gëtt net geschriwwe a gëtt net an eng aner Grupp ëmverdeelt ;
  • wann Dir eng Datei schreift, geet IO nëmmen an eng Grupp, de Rescht sinn Idle;
  • Dir kënnt net IO vum ganze Volume kréien wann Dir eng Datei schreift;
  • an d'allgemeng Konzept gesäit manner produktiv aus wéinst dem Mangel un Datenverdeelung a Blocken, wou et méi einfach ass de Problem vun der eenheetlecher Verdeelung ze balanséieren an ze léisen, an net wéi elo de ganze Fichier an e Block geet.

Vun der offizieller Beschreiwung Architektur mir kommen och onfräiwëlleg zum Verständnis datt Gluster als Dateilagerung uewen op klassesch Hardware RAID funktionnéiert. Et goufen Entwécklungsversuche fir (Sharding) Dateien a Blocken ze schneiden, awer all dëst ass en Zousatz, deen d'Leeschtungsverloschter op déi schonn existent architektonesch Approche imposéiert, plus d'Benotzung vun esou fräi verdeelt Komponenten mat Leeschtungsbeschränkungen wéi Fuse. Et gi keng Metadatenservicer, déi d'Performance a Feelertoleranzfäegkeeten vun der Späichere limitéieren wann Dir Dateien a Block verdeelt. Besser Performance Indikatoren kënne mat der "Distributed Replicated" Konfiguratioun beobachtet ginn an d'Zuel vun den Noden soll op d'mannst 6 sinn fir eng zouverléisseg Replika 3 mat optimaler Lastverdeelung ze organiséieren.

Dës Erkenntnisser sinn och mat der Beschreiwung vun der Benotzererfarung verbonnen Glanz a wann Verglach mat ceph, an et gëtt och eng Beschreiwung vun der Erfahrung zu engem Versteesdemech vun dëser méi produktiv a méi zouverlässeg Configuratioun "Replizéiert verdeelt".
Kuerz Verglach vun der SDS Architektur oder Sich no enger passender Späicherplattform (GlusterVsCephVsVirtuozzoStorage)

D'Bild weist d'Laaschtverdeelung beim Schreiwen vun zwee Dateien, wou Kopie vun der éischter Datei iwwer déi éischt dräi Server verdeelt sinn, déi an de Volume 0 Grupp kombinéiert sinn, an dräi Kopie vun der zweeter Datei op der zweeter Grupp Volume1 vun dräi gesat ginn. Serveren. All Server huet eng Scheif.

Déi allgemeng Conclusioun ass datt Dir Gluster benotze kënnt, awer mat dem Verständnis datt et Aschränkungen an der Leeschtung a Feelertoleranz gëtt, déi Schwieregkeeten ënner bestëmmte Konditioune vun enger hyperkonvergéierter Léisung kreéieren, wou Ressourcen och fir d'Rechenlaascht vu virtuellen Ëmfeld gebraucht ginn.

Et ginn och e puer Gluster Performance Indikatoren déi ënner bestëmmte Konditiounen erreecht kënne ginn, limitéiert op Feeler Toleranz.

ceph

Elo kucke mer de Ceph aus den Architekturbeschreiwungen déi ech konnt fannen. Et gëtt och e Verglach tëscht Glusterfs et Ceph, wou Dir kënnt direkt verstoen datt et ubruecht ass Ceph op getrennten Serveren z'installéieren, well seng Servicer all d'Hardwareressourcen ënner Laascht erfuerderen.

Architektur Ceph méi komplex wéi Gluster an et gi Servicer wéi Metadatenservicer, awer de ganze Stack vu Komponenten ass zimlech komplex an net ganz flexibel fir se an enger Virtualiséierungsléisung ze benotzen. D'Daten ginn a Blocken gespäichert, wat méi produktiv ausgesäit, awer an der Hierarchie vun alle Servicer (Komponenten) ginn et Verloschter a Latenz ënner bestëmmte Lasten an Noutbedéngungen, zum Beispill déi folgend Artikel.

Aus der Beschreiwung vun der Architektur ass d'Häerz CRUSH, dank deem d'Plaz fir d'Späichere vun Daten ausgewielt gëtt. Als nächst kënnt PG - dat ass déi schwéierst Abstraktioun (logesch Grupp) ze verstoen. PGs si gebraucht fir CRUSH méi effektiv ze maachen. Den Haaptzweck vu PG ass Objekter ze gruppéieren fir Ressourceverbrauch ze reduzéieren, d'Performance an d'Skalierbarkeet ze erhéijen. Objekter direkt unzegoen, individuell, ouni se an e PG ze kombinéieren wier ganz deier. OSD ass e Service fir all eenzel Disk.

Kuerz Verglach vun der SDS Architektur oder Sich no enger passender Späicherplattform (GlusterVsCephVsVirtuozzoStorage)

Kuerz Verglach vun der SDS Architektur oder Sich no enger passender Späicherplattform (GlusterVsCephVsVirtuozzoStorage)

E Cluster kann een oder vill Datepools fir verschidden Zwecker a mat verschiddenen Astellungen hunn. Poolen sinn an Placement Gruppen ënnerdeelt. Placementgruppen späicheren Objeten op déi Clienten Zougang. Dëst ass wou de logesche Niveau endet, an de physeschen Niveau fänkt un, well all Placementgrupp ass eng Haaptdiskussioun a verschidde Replika-Disken zougewisen (wéi vill hänkt genee vum Pool Replikatiounsfaktor of). An anere Wierder, um logesche Niveau ass den Objet an enger spezifescher Plazéierungsgrupp gespäichert, an um kierperlechen Niveau - op den Disken, déi him zougewisen sinn. An dësem Fall kënnen d'Disks kierperlech op verschiddene Wirbelen oder souguer a verschiddenen Datenzenter lokaliséiert ginn.

An dësem Schema kucken d'Placementgruppen e noutwendege Niveau fir d'Flexibilitéit vun der ganzer Léisung, awer gläichzäiteg als extra Link an dëser Kette, déi onfräiwëlleg e Verloscht vun der Produktivitéit proposéiert. Zum Beispill, wann Dir Daten schreift, muss de System se an dës Gruppen opzedeelen an dann um kierperlechen Niveau an den Haaptdiskussioun an Disken fir Repliken. Dat ass, d'Hash Funktioun funktionnéiert wann Dir en Objet sicht an asetzt, awer et gëtt en Nebenwirkung - et ass ganz héich Käschten a Restriktiounen fir den Hash opzebauen (wann Dir eng Disk bäidréit oder ewechhuelt). En aneren Hash-Problem ass déi kloer vernoléissegt Plaz vun Daten déi net geännert kënne ginn. Dat ass, wann iergendwéi d'Disk ënner erhéicht Belaaschtung ass, dann huet de System net d'Méiglechkeet net drop ze schreiwen (duerch d'Auswiel vun enger anerer Disk), d'Hash-Funktioun verflicht d'Donnéeën no der Regel ze lokaliséieren, egal wéi schlecht d'Disk ass, sou datt de Ceph vill Erënnerung ësst wann Dir de PG nei opbaut am Fall vu Selbstheilung oder Erhéijung vun der Späichere. D'Conclusioun ass datt de Ceph gutt funktionnéiert (och wann et lues ass), awer nëmmen wann et keng Skaléierung, Noutsituatiounen oder Updates gëtt.

Et gi selbstverständlech Optiounen fir d'Performance z'erhéijen duerch Caching a Cache Sharing, awer dëst erfuerdert gutt Hardware an et gëtt nach ëmmer Verloschter. Awer allgemeng gesäit de Ceph méi verlockend aus wéi Gluster fir Produktivitéit. Och wann Dir dës Produkter benotzt, ass et néideg e wichtege Faktor ze berücksichtegen - dat ass en héije Niveau vu Kompetenz, Erfahrung a Professionalitéit mat engem grousse Schwéierpunkt op Linux, well et ganz wichteg ass alles richteg z'installéieren, ze konfiguréieren an z'erhalen, wat dem Administrateur nach méi Verantwortung a Belaaschtung opleet.

Vstorage

D'Architektur gesäit nach méi interessant aus Virtuozzo Storage (Vstorage), déi a Verbindung mat engem Hypervisor op déiselwecht Wirbelen benotzt ka ginn, op der selwechter Drüs, awer et ass ganz wichteg alles richteg ze konfiguréieren fir gutt Leeschtung ze erreechen. Dat ass, sou e Produkt aus der Këscht op all Konfiguratioun z'installéieren ouni d'Empfehlungen am Aklang mat der Architektur ze berücksichtegen ass ganz einfach, awer net produktiv.

Wat ka coexistéieren fir d'Späichere nieft de Servicer vum kvm-qemu Hypervisor, an dëst sinn nëmmen e puer Servicer, wou eng kompakt optimal Hierarchie vu Komponenten fonnt gouf: Client Service montéiert iwwer FUSE (geännert, net Open Source), MDS Metadaten Service (Metadata Service), Service Chunk Service Dateblocken, déi um kierperlechen Niveau gläich wéi eng Disk ass an dat ass alles. Wat d'Geschwindegkeet ugeet, natierlech ass et optimal fir e Feeler-tolerant Schema mat zwee Repliken ze benotzen, awer wann Dir Caching a Logbicher op SSD-Laufwerke benotzt, da kann Feeler-tolerant Kodéierung (läschen Kodéierung oder Raid6) anstänneg op engem Hybrid Schema oder souguer besser op all Flash. Et gëtt e puer Nodeeler mat EC (Kodéierung läschen): wann Dir een Dateblock ännert, ass et néideg d'Paritéitsbetrag nei ze berechnen. Fir d'Verloschter verbonne mat dëser Operatioun ëmzegoen, schreift de Ceph dem EC deferredly an d'Leeschtungsproblemer kënne während enger bestëmmter Ufro optrieden, wann zum Beispill all Block musse gelies ginn, an am Fall vu Virtuozzo Storage gëtt geännert Blocks geschriwwen mat der "Log-strukturéiert Dateisystem" Approche, déi d'Paritéitsrechnungskäschte miniméiert. Fir ongeféier d'Optiounen mat Beschleunigung vun der Aarbecht mat an ouni EC ze schätzen, ginn et Rechner. - d'Zuelen kënnen ongeféier sinn ofhängeg vun der Genauegkeetskoeffizient vum Ausrüstungshersteller, awer d'Resultat vun de Berechnungen ass eng gutt Hëllef bei der Planung vun der Konfiguratioun.

En einfachen Diagramm vu Späicherkomponenten heescht net datt dës Komponenten net absorbéieren Eisen Ressourcen, awer wann Dir all d'Käschte am Viraus berechent, kënnt Dir op Zesummenaarbecht nieft dem Hypervisor zielen.
Et gëtt e Schema fir de Verbrauch vun Hardware Ressourcen vu Ceph a Virtuozzo Späicherservicer ze vergläichen.

Kuerz Verglach vun der SDS Architektur oder Sich no enger passender Späicherplattform (GlusterVsCephVsVirtuozzoStorage)

Wann et virdru méiglech war Gluster a Ceph mat alen Artikelen ze vergläichen, déi wichtegst Linnen aus hinnen ze benotzen, dann ass et mat Virtuozzo méi schwéier. Et ginn net vill Artikelen iwwer dëst Produkt an Informatioun kann nëmmen aus der Dokumentatioun gesammelt ginn op Englesch oder op Russesch wa mir Vstorage als Stockage betruecht an e puer hyperconverged Léisungen an Entreprisen benotzt wéi Rosplatforma an Acronis.

Ech probéieren mat enger Beschreiwung vun dëser Architektur ze hëllefen, sou datt et e bësse méi Text gëtt, awer et brauch vill Zäit fir d'Dokumentatioun selwer ze verstoen, an déi existent Dokumentatioun kann nëmmen als Referenz benotzt ginn andeems Dir d'Tabell iwwerschafft vun Inhalter oder Sich no Schlësselwuert.

Loosst eis den Opnamprozess an enger Hybrid Hardware Konfiguratioun mat den uewe beschriwwenen Komponenten betruechten: d'Opnahm fänkt un an den Node ze goen, aus deem de Client et initiéiert huet (de FUSE Mount Point Service), awer de Metadata Service (MDS) Master Komponent wäert natierlech riicht de Client direkt op de gewënschten Stéck Service (Späichereservice CS Blocks), dat heescht, MDS bedeelegt net un den Opnamprozess, awer riicht de Service einfach op déi néideg Stéck. Am Allgemengen kënne mir eng Analogie ginn fir opzehuelen mat Waasser a Fässer ze schenken. All Faass ass en 256MB Dateblock.

Kuerz Verglach vun der SDS Architektur oder Sich no enger passender Späicherplattform (GlusterVsCephVsVirtuozzoStorage)

Dat ass, eng Scheif ass eng gewëssen Unzuel vun esou Fässer, dat ass de Diskvolumen gedeelt duerch 256MB. All Kopie gëtt op een Node verdeelt, déi zweet bal parallel zu engem aneren Node, etc ... Wa mir dräi Repliken hunn an et sinn SSD Disks fir Cache (fir Logbicher ze liesen an ze schreiwen), da gëtt d'Bestätegung vum Schreiwen nom Schreiwen geschitt. de Logbuch op d'SSD, a parallele Reset vun der SSD wäert op der HDD weidergoen, wéi wann am Hannergrond. Am Fall vun dräi Repliken gëtt de Rekord no Bestätegung vun der SSD vum drëtten Node engagéiert. Et kann schéngen datt d'Zomm vun der Schreifgeschwindegkeet vun dräi SSDs duerch dräi gedeelt ka ginn a mir kréien d'Schreifgeschwindegkeet vun enger Replika, awer d'Kopie sinn parallel geschriwwe ginn an d'Netzlatenzgeschwindegkeet ass normalerweis méi héich wéi déi vun der SSD, an tatsächlech wäert d'Schreifleeschtung vum Netzwierk ofhänken. An dëser Hisiicht, fir richteg IOPS ze gesinn, musst Dir de ganze Vstorage korrekt lueden Methodik, dat ass d'Test vun der realer Belaaschtung, an net Erënnerung a Cache, wou et néideg ass fir d'korrekt Dateblockgréisst, d'Zuel vun de thread, etc.

Deen uewe genannten Opnamprotokoll op der SSD funktionnéiert esou datt soubal d'Donnéeën erakommen, se direkt vum Service gelies ginn an op d'HDD geschriwwe ginn. Et gi verschidde Metadatenservicer (MDS) pro Cluster an hir Zuel gëtt vun engem Quorum festgeluegt, deen no dem Paxos Algorithmus funktionnéiert. Aus der Siicht vum Client ass de FUSE-Montagepunkt e Clusterspeicher Dossier deen gläichzäiteg fir all Wirbelen am Cluster siichtbar ass, all Node huet e montéierte Client no dësem Prinzip, sou datt dës Späichere fir all Node verfügbar ass.

Fir d'Performance vun enger vun den uewe beschriwwenen Approchen ass et ganz wichteg, an der Planungs- an Deploymentstadium, d'Netz richteg ze konfiguréieren, wou et ausgeglach gëtt wéinst der Aggregatioun an der korrekt gewielter Netzwierkkanalbandbreedung. An der Aggregatioun ass et wichteg de richtege Hashing-Modus a Framegréissten ze wielen. Et gëtt och e ganz staarken Ënnerscheed vum SDS hei uewen beschriwwen, dëst ass d'Sicherung mat schnelle Wee Technologie an der Virtuozzo Storage. Wat, nieft der moderniséierter Sicherung, am Géigesaz zu anere Open Source-Léisungen, IOPS wesentlech erhéicht an erlaabt Iech net duerch horizontal oder vertikal Skala limitéiert ze ginn. Am Allgemengen, am Verglach mat den uewe beschriwwenen Architekturen, gesäit dat méi mächteg aus, awer fir sou Genoss, natierlech, musst Dir Lizenzen kafen, am Géigesaz zu Ceph a Gluster.

Fir ze resuméieren, kënne mir d'Top vun den dräi Highlight: Virtuozzo Storage hëlt d'éischt Plaz wat d'Performance an d'Zouverlässegkeet vun der Architektur ugeet, Ceph hëlt d'zweet Plaz, a Gluster hëlt d'drëtt Plaz.

D'Critèrë mat deenen d'Virtuozzo Storage ausgewielt gouf: et ass en optimalen Set vun architektonesche Komponenten, moderniséiert fir dës Fuse Approche mat schnelle Wee, e flexiblen Set vun Hardwarekonfiguratiounen, manner Ressourceverbrauch an d'Fäegkeet fir mat Computeren ze deelen (Computing / Virtualiséierung), dat ass, et ass komplett gëeegent fir eng hyperconverged Léisung , déi hien Deel vun ass. Zweet Plaz ass Ceph well et eng méi produktiv Architektur ass am Verglach zum Gluster, wéinst senger Operatioun a Blocken, souwéi méi flexibel Szenarien an d'Fäegkeet fir a méi grousse Cluster ze schaffen.

Et gi Pläng fir e Verglach tëscht vSAN, Space Direct Storage, Vstorage an Nutanix Storage ze schreiwen, Vstorage op HPE an Huawei Ausrüstung testen, souwéi Szenarie fir Vstorage mat externen Hardwarespeichersystemer z'integréieren, also wann Dir den Artikel gär hätt, wier et flott fir Feedback vun Iech ze kréien, wat d'Motivatioun fir nei Artikele kéint erhéijen, andeems Dir Är Kommentaren a Wënsch berücksichtegt.

Source: will.com

Setzt e Commentaire