Ceph? Eine praktische Speicherlösung für Unternehmen jeder Größe
Ceph ist eine komplette Speicherlösung mit einem eigenen Dateisystem, dem Ceph File System (CephFS). Mit Ceph können verteilte Daten in verschiedenen Komponenten des Netzwerks selbst gespeichert werden. Darüber hinaus können die Daten auf verschiedenen physischen Speichermedien gespeichert werden. Ceph garantiert große Flexibilität bei der Auswahl des Speichermediums sowie große Skalierbarkeit.
- Was Sie über Ceph und seine Hauptmerkmale wissen sollten
- Wie Ceph funktioniert
- Zugriff auf gespeicherte Daten
- Alternativen zu Ceph
- Vor- und Nachteile von Ceph
- Vorteile von Ceph
- Nachteile von Ceph
Was Sie über Ceph und seine Hauptmerkmale wissen sollten
Das Konzept von Ceph stammt von Sage A. Weil, der es im Rahmen seines Promotionsprojekts entwickelte und 2006 veröffentlichte. Später leitete er das Projekt selbst mit seiner Firma Intank Storage. 2014 wurde das Unternehmen von RedHat übernommen, Weil verwaltet jedoch weiterhin die Systemarchitektur und bleibt daher in erster Linie für die Entwicklung des Konzepts verantwortlich.
Ceph funktioniert nur auf Linux-Systemen und ist beispielsweise mit CentOS, Debian, Fedora, RedHat / RHEL, OpenSUSE und Ubuntu kompatibel. Es ist nicht möglich, direkt von Windows-Systemen auf Ceph zuzugreifen, aber es kann über eine iSCSI (Internet Small Computer System Interface) zugegriffen werden. Aus diesem Grund eignet sich Ceph besonders für den Einsatz in Rechenzentren, die ihren Speicherplatz Benutzern über Server zur Verfügung stellen, sowie in allen Arten von Cloud- Lösungen , die Software zur Verwaltung von Speicheroptionen verwenden.
Hier fassen wir die wichtigsten Merkmale von Ceph zusammen:
Wie Ceph funktioniert
Ceph erfordert, dass mehrere Computer in einem sogenannten Cluster miteinander verbunden sind (buchstäblich Gruppe oder Heap , dh eine Gruppe von mehreren Computern). Jeder angeschlossene Computer wird als Knoten bezeichnet .
In einem Cluster gibt es je nach den von ihnen ausgeführten Aufgaben verschiedene Knotentypen:
- Überwachen von Knoten : Sie verwalten den Status jedes Knotens im Cluster und überwachen insbesondere den Managerdienst , den Objektspeicherdienst und die MDS- Komponenten ( Metadata Server ). Um eine gewisse Sicherheit zu gewährleisten, wird empfohlen, mindestens drei Überwachungsknoten zu haben .
- Manager : Sie verwalten den Status der Speicherplatzauslastung, die Systemlast und den Auslastungsgrad der Knoten.
- Ceph-OSDs ( Object Storage Devices ) : Dies sind die Back-End-Dienste, die tatsächlich für die Verwaltung der Dateien zuständig sind. Sie sind für das Speichern, Duplizieren und Wiederherstellen von Daten verantwortlich. Es wird empfohlen, mindestens drei OSDs im Cluster zu haben .
- Metadatenserver (MDS) : Sie sind aus Leistungsgründen für das Speichern von Metadaten wie Speicherpfaden, Zeitstempeln und Namen der in CephFS gespeicherten Dateien verantwortlich. Sie werden nach dem POSIX-Standard erstellt und können über Unix-Befehlszeilen wie ls , find und dergleichen angefordert werden .
Die Schlüsselkomponente der Datenspeicherung ist ein Algorithmus genannt ZERSTAMPFUNG ( Controlled Replikation unter Scalable Hashing , das heißt die Replikation unter kontrollierten skalierbaren hashing ). Dieser Algorithmus kann dank einer Zuordnungstabelle ein OSD mit der angeforderten Datei finden.
Die Verteilung der Dateien in Ceph erfolgt pseudozufällig, dh so, als ob sie sich in irgendeiner Weise befinden könnten. In der Realität berechnet CRUSH jedoch anhand der vom Netzwerkadministrator festgelegten Kriterien den am besten geeigneten Speicherort. Dadurch werden auch Dateien dupliziert und auf separaten physischen Medien gespeichert.
Die Dateien werden in sogenannten Platzierungsgruppen verteilt , wobei der Dateiname als Hashwert verarbeitet wird . Ein weiteres Merkmal, auf dem der Speicherort basiert, ist beispielsweise die Anzahl der Duplikate in der Datei.
Der Hash- Wert ist eine Folge von Zeichen, die sich aus der Verarbeitung einer Dateneingabe durch Rechenoperationen ergibt. Eine einfache Darstellung des Prozesses wäre beispielsweise das Hinzufügen der Zahlen, aus denen die Primärdaten bestehen. Tatsächlich werden natürlich hochkomplexe Algorithmen verwendet, die aus langen Datensequenzen einen eindeutigen Fingerabdruck erzeugen. Das Ergebnis ist immer gleich kompakt und enthält keine unerwünschten Zeichen. Daher eignet es sich auch zur Verarbeitung von Dateinamen.
Um die Datensicherheit zu gewährleisten, wird das Journaling auf OSD-Ebene verwendet . Die zu speichernden Dateien werden dort vorübergehend gespeichert, während darauf gewartet wird, dass sie in allen bereitgestellten OSDs korrekt gespeichert sind.
Zugriff auf gespeicherte Daten
Die Basis der Datenspeicherung in Ceph heißt RADOS ( ein zuverlässiger, verteilter Objektspeicher, der aus selbstheilenden, selbstzuordnenden, intelligenten Speicherknoten besteht ), dh ein zuverlässiger und verteilter Speicher, der aus intelligenten Speicherknoten besteht, die sich selbst regenerieren. und sie organisieren sich selbst.
Auf gespeicherte Dateien kann mit verschiedenen Methoden zugegriffen werden:
- librados : Auf sie kann nativ über die librados- Bibliothek über Programmierschnittstellen (APIs) mit Programmier- und Skriptsprachen wie C / C ++, Python, Java oder PHP zugegriffen werden .
- radosgw : Über dieses Gateway können Daten über das Internetprotokoll HTTP gelesen oder geschrieben werden.
- CephFS : Dies ist das proprietäre Dateisystem von Ceph, das dem POSIX-Standard entspricht, ein Kernelmodul für den Zugriff auf Computer bietet und mit FUSE kompatibel ist (Dateisystem-Plug-In, keine Administratorrechte).
- RADOS- Blockgerät: Integriert sich als blockorientierter Speicher über Kernelmodule oder virtuelle Systeme wie QEMU / KVM.
Alternativen zu Ceph
Die bekannteste Alternative ist GlusterFS , das ebenfalls dem RedHat / RHEL Linux-Distributor gehört und kostenlos erhältlich ist. Gluster verfolgt einen ähnlichen Ansatz: Es vereinheitlicht auch die in einem Speicherplatz im Netzwerk verteilten Speicher. Wie zu erwarten, haben sowohl GlusterFS als auch Ceph ihre Vor- und Nachteile.
Es gibt auch andere kostenlose Alternativen wie XtremFS und BeeGfs . Für Windows-Server bietet Microsoft kommerzielle softwarebasierte Speicherlösungen an , einschließlich Storage Spaces Direct (S2D).
Vor- und Nachteile von Ceph
Während Ceph in vielen Situationen die beste Option ist, hat diese Speichermethode nicht nur Vorteile.
Vorteile von Ceph
Ceph ist kostenlos und bereits eine etablierte Option, obwohl es sich um ein relativ junges Projekt handelt. Daher finden Sie im Internet viele Handbücher zur Durchführung von Installations- und Wartungsarbeiten. Darüber hinaus verfügt Ceph über sehr gute Herstelleranweisungen . Die Übernahme des Projekts durch RedHat deutet darauf hin, dass es sich voraussichtlich noch einige Zeit weiterentwickeln wird. Die Skalierbarkeit und die integrierte Redundanz gewährleisten Datensicherheit und Netzwerkflexibilität. Darüber hinaus stellt der CRUSH-Algorithmus die Verfügbarkeit der Daten sicher.
Redundanz bedeutet in diesem Zusammenhang Überschuss . Auf dem Gebiet der Informatik sind die übermäßig gespeicherten, wiederholten Daten überflüssig . Redundanz wird in der Regel absichtlich generiert, um das Überleben der Daten im Fehlerfall zu gewährleisten, was sowohl auf Software- als auch auf Hardwareebene erreicht werden kann : Zum einen Daten oder Informationen, die für die wiederholte Wiederherstellung; Zum anderen können mehrere physische Speichermedien vorhanden sein, um den möglichen Ausfall eines der Computer auszugleichen.
Nachteile von Ceph
Aufgrund der Vielzahl der enthaltenen Komponenten ist ein umfangreiches Netzwerk erforderlich , um die Stärken von Ceph nutzen zu können. Darüber hinaus ist die Installation relativ teuer und dem Benutzer nicht immer klar, wo genau die Daten gespeichert werden.