Ein kurzer Vergleich der SDS-Architektur oder die Suche nach einer geeigneten Speicherplattform (GlusterVsCephVsVirtuozzoStorage)

Dieser Artikel soll Ihnen helfen, die richtige Lösung für sich selbst auszuwählen und die Unterschiede zwischen Sicherheitsdatenblättern wie Gluster, Ceph und Vstorage (Virtuozzo) zu verstehen.

Der Text verwendet Links zu Artikeln mit einer detaillierteren Offenlegung bestimmter Probleme, sodass die Beschreibungen so kurz wie möglich sind und wichtige Punkte ohne unnötiges Wasser und Hintergrundinformationen verwenden, die Sie auf Wunsch unabhängig im Internet erhalten können.

Tatsächlich erfordern die behandelten Themen natürlich Texttöne, aber in der modernen Welt lesen immer mehr Menschen nicht viel)))), sodass Sie schnell lesen und eine Auswahl treffen können und wenn es unklar ist, den Links zu folgen oder unverständliche Wörter zu googeln))), und dieser Artikel als transparenter Umschlag für diese tiefen Themen, der die Füllung zeigt - die wichtigsten Punkte jeder Entscheidung.

Glanz


Beginnen wir mit Gluster, das von Herstellern von hyperkonvergenten Plattformen mit SDS auf Basis von Open Source für virtuelle Umgebungen aktiv verwendet wird und auf der RedHat-Website im Speicherbereich zu finden ist. Dort können Sie zwischen zwei SDB-Optionen wählen: Gluster oder Ceph.

Gluster besteht aus einem Stapel von Übersetzern - Diensten, die die gesamte Arbeit des Verteilens von Dateien usw. erledigen. Brick - ein Dienst, der eine Festplatte bedient, Volume - ein Volume (Pool) - das diese Bricks kombiniert. Als nächstes kommt der Dienst zum Verteilen von Dateien in Gruppen aufgrund der Funktion DHT (Distributed Hash Table). Wir werden den Sharding-Service nicht in die Beschreibung aufnehmen, da die folgenden Links die damit verbundenen Probleme beschreiben.

Bild

Bei der Aufnahme liegt die gesamte Datei im Baustein und ihre Kopie wird parallel auf den Baustein auf dem zweiten Server geschrieben. Außerdem wird die zweite Datei bereits in die zweite Gruppe von zwei Bricks (oder mehr) auf verschiedenen Servern geschrieben.

Wenn die Dateien ungefähr gleich groß sind und das Volume nur aus einer Gruppe besteht, ist alles in Ordnung. Unter anderen Bedingungen ergeben sich aus den Beschreibungen die folgenden Probleme:

  • Der Platz in den Gruppen wird nicht gleichmäßig genutzt. Dies hängt von der Größe der Dateien ab. Wenn in der Gruppe nicht genügend Speicherplatz zum Schreiben der Datei vorhanden ist, wird eine Fehlermeldung angezeigt. Die Datei wird nicht geschrieben und nicht an eine andere Gruppe weitergegeben.
  • Beim Schreiben einer Datei geht IO nur an eine Gruppe, der Rest ist inaktiv.
  • Sie können nicht die E / A des gesamten Volumes abrufen, wenn Sie eine einzelne Datei schreiben.
  • , , .

Aus der offiziellen Beschreibung der Architektur geht auch hervor, dass Gluster unfreiwillig als Dateispeicher auf dem klassischen Hardware-RAID fungiert. Es gab Entwicklungsversuche, Dateien in Blöcke zu zerlegen, aber dies ist alles ein Add-On, das Leistungsverluste bei einem vorhandenen Architekturansatz sowie die Verwendung frei verteilter Komponenten mit Leistungsbeschränkungen wie Fuse zur Folge hat. Es gibt keine Metadatendienste, die die Speicher- und Verteilungsfunktionen von Dateien beim Verteilen von Dateien in Blöcke einschränken. Mit der Konfiguration "Distributed Replicated" kann eine bessere Leistung beobachtet werden, und die Anzahl der Knoten muss mindestens 6 betragen, um eine zuverlässige Replik von 3 mit optimaler Lastverteilung zu erstellen.

Diese Schlussfolgerungen beziehen sich auch auf die Beschreibung der Erfahrung mit Gluster und im Vergleich zu Ceph , und es gibt auch eine Beschreibung der Erfahrung zum Verständnis dieser produktiveren und zuverlässigeren "Replicated Distributed" -Konfiguration .
Bild

Das Bild zeigt die Lastverteilung beim Aufzeichnen von zwei Dateien, wobei Kopien der ersten Datei auf den ersten drei Servern angeordnet sind, die zu einer Gruppe mit Volume 0 zusammengefasst sind, und drei Kopien der zweiten Datei auf die zweite Gruppe Volume1 von drei Servern fallen. Jeder Server hat eine Festplatte.

Die allgemeine Schlussfolgerung lautet, dass Sie Gluster verwenden können, jedoch mit dem Verständnis, dass die Leistung und die Fehlertoleranz eingeschränkt sind, was unter bestimmten Bedingungen zu einer hyperkonvergenten Lösung führt, bei der Ressourcen auch für die Rechenlast virtueller Umgebungen benötigt werden.

Es gibt auch einige Gluster-Leistungsindikatoren, die unter bestimmten Bedingungen durch Begrenzung der Fehlertoleranz erreicht werden können.

Ceph


eph , . Glusterfs Ceph, Ceph , .

eph Gluster , . , , (), latency .

CRUSH, . PG — ( ) . PG , CRUSH . PG — -, . , , PG . OSD – .





. -. - , . , , - - ( ). , -, — , . .

- , , . . , – ( , ). – , . - , ( ), , , Ceph PG self-healing . , Ceph ( ), , .

-, . Ceph Gluster . – , linux, , , .

Vstorage


Virtuozzo storage(Vstorage), , , , . , .

kvm-qemu, , : FUSE(, open source), MDS (Metadata service), Chunk service, . , SSD, (erase coding raid6) all flash. EC(erase coding) : . eph EC , , Virtuozzo Storage “log-structured file system”, . EC , . – , .

, , , .
eph Virtuozzo storage.



Gluster Ceph , , Virtuozzo . Vstorage .

, , .

: ( FUSE), (MDS) ( CS), MDS , . . , 256.



, - , 256. , .… SSD , ( ), SSD, SSD, HDD, . SSD . , SSD , Latency , SSD, . , IOPS Vstorage , , , , ..

SSD, , , HDD. (MDS) , Paxos. FUSE, , , .

, , , . . SDS, fuse fast path Virtuozzo Storage. fuse open source , IOPS- . , eph Gluster.

: Virtuozzo Storage, Ceph Gluster.

, Virtuozzo Storage: , Fuse fast path, , compute(/), , . Ceph, Gluster, , .

Die Pläne beinhalten den Wunsch, einen Vergleich zwischen vSAN, Space Direct Storage, Vstorage und Nutanix Storage zu schreiben, Vstorage auf HPE, Huawei-Geräten sowie Vstorage-Integrationsszenarien mit externen Hardwarespeichersystemen zu testen. Wenn Ihnen der Artikel gefallen hat, wäre es schön, Feedback von Ihnen zu erhalten Dies könnte die Motivation für neue Artikel basierend auf Ihren Kommentaren und Vorschlägen erhöhen.

Source: https://habr.com/ru/post/undefined/


All Articles