lucadp - stock.adobe.com
Das sollten Sie über Ceph-Storage und -Produkte wissen
Ceph ist eine skalierbare verteilte Speicherplattform. Erfahren Sie mehr über die verschiedenen Angebote und wie Sie Herausforderungen meistern können.
Unternehmen setzen in ihren Rechenzentren routinemäßig Ceph-Speicher ein oder erwägen einen solchen Schritt. Die Plattform ist heute aufgrund ihrer Flexibilität, Skalierbarkeit, Zuverlässigkeit und Verfügbarkeit sehr beliebt.
Ceph ist eine Open-Source-Plattform, die Daten über mehrere Speicherknoten verteilt. Unternehmen können sie auf handelsüblicher Hardware einsetzen, was zur Senkung der Infrastrukturkosten beiträgt.
Ceph ist jedoch ein komplexes System, das schwierig zu implementieren und zu warten sein kann. IT-Teams sollten die Funktionsweise genau verstehen und jede Bereitstellung sorgfältig planen. In einigen Fällen greifen Unternehmen auf unterstützte kommerzielle Ceph-Produkte zurück, anstatt zu versuchen, die kostenlose Version selbst zu implementieren.
Wie Ceph-Speicher funktioniert
Herkömmliche Speicherarchitekturen basieren häufig auf einer zentralen Schnittstelle oder einer anderen Komponente, die als Einstiegspunkt zu den zugrunde liegenden Speichersubsystemen dient. Dieser Ansatz kann die Skalierbarkeit einschränken, die Leistung mindern und einen Single Point of Failure schaffen.
Ceph macht einen zentralen Einstiegspunkt überflüssig, indem die Daten auf mehrere Knoten verteilt werden, die direkt miteinander und mit den Client-Systemen interagieren können. Ceph kann auch Objekt-, Block- und Dateispeicherdienstebereitstellen, und das alles innerhalb desselben Clusters.
Zur Erleichterung dieser Vorgänge setzt Ceph die folgenden Software-Abstraktionsschichten ein, um eine vollständige Software-definierte Speicherplattform zu schaffen:
- RADOS (Reliable Autonomic Distributed Object Store). Ein skalierbares, intelligentes Speichersystem, das die Daten im gesamten Ceph-Cluster verteilt und als Grundlage der Plattform dient.
- RADOS-Gateway (RGW). Ein Objektspeicherdienst, der sowohl mit den S3- als auch mit den Swift-Speicher-APIs kompatibel ist.
- RADOS Block Device (RBD). Ein Blockspeicherdienst, der virtuelle Festplatten über Objekte verteilt, um ähnliche Vorteile wie ein SAN zu bieten.
- Ceph-Dateisystem (CephFS). Ein Dateispeicherdienst, der ein Portable OS Interface-kompatibles verteiltes Dateisystem bietet.
- Librados. Eine API, die es Unternehmen ermöglicht, ihre eigenen Schnittstellen zum Ceph-Speicher-Cluster zu erstellen, anstatt die RGW-, RBD- oder CephFS-Schnittstellen nutzen zu müssen.
Durch die Verwendung dieser Abstraktionsebenen kann Ceph ein höheres Maß an Skalierbarkeit und Flexibilität erreichen, als dies mit herkömmlichen Speichersystemen möglich ist. Ceph-Cluster nutzen diese Ebenen, um logische Speicherpools zu erstellen, die vom zugrunde liegenden physischen Speicher entkoppelt sind.
Wie Ceph-Cluster funktionieren
Ein Cluster besteht aus mehreren Knoten, die auf handelsüblichen Servern laufen. Die meisten von ihnen sind Speicherknoten, die mit Festplatten, SSDs oder einer Kombination aus beidem verbunden sind. Die anderen Knoten führen Verwaltungs- und Speichervorgänge aus und arbeiten mit den Speicherknoten zusammen.
Auf den Knoten eines Clusters laufen verschiedene Arten von Daemons, die diese Vorgänge ausführen. Die Daemons können direkt miteinander und mit den Clients, die auf die Daten zugreifen, kommunizieren, so dass es keinen einzigen Ausfallpunkt gibt. Ein Ceph-Cluster stützt sich auf vier Arten von Daemons:
- Ceph Monitor. Dieser Daemon verwaltet eine Masterkopie der Cluster-Maps, die Details über die aktuelle Topologie und den Status des Clusters enthalten.
- Ceph Object Storage Daemon (OSD). Ein Ceph-Cluster umfasst in der Regel zahlreiche Speicherknoten, die den Datenzugriff und die Datenverwaltung erleichtern. Auf jedem Speicherknoten laufen mehrere Instanzen von OSD, die wiederum mit den einzelnen Laufwerken verbunden sind, auf denen die Daten gespeichert sind.
- Ceph-Manager. Dieser Daemon arbeitet mit Monitor zusammen, um Laufzeitmetriken und Cluster-Statusinformationen wie Speichernutzung, Systemlast und Leistungsmetriken zu verfolgen.
- Ceph-Metadaten-Server. Der MDS-Daemon wird nur bei Clustern verwendet, die CephFS implementieren. Der MDS-Daemon speichert und verwaltet Datei-Metadaten, wie zum Beispiel Dateinamen, Zeitstempel und Datenpfade.
Ceph verwendet den CRUSH-Algorithmus (Controlled Replication Under Scalable Hashing) in Verbindung mit den Daemons, um Speicherobjekte zu verfolgen und Informationen über ihren Standort zu berechnen, ohne sich auf eine zentrale Nachschlagetabelle zu verlassen. Der Algorithmus bestimmt, welche Platzierungsgruppen und OSD-Knoten die einzelnen Speicherobjekte enthalten sollen. Auf diese Weise kann CRUSH Daten in großem Umfang auf OSD-Knoten verteilen und durch intelligente Datenreplikation für Ausfallsicherheit sorgen.
Warum die Technologie jetzt so gefragt ist
Unternehmen nutzen Ceph-Speicher aus einer Vielzahl von Gründen. Sie setzen zunehmend auf Cloud-native Architekturen, was sich auf die Verwaltung von Ressourcen und die Bereitstellung von Anwendungen auswirkt. Ceph bietet die Skalierbarkeit und Flexibilität, die für die Anwendung dieser Architekturen in ihren Umgebungen erforderlich sind, wodurch Engpässe, wie sie bei herkömmlichen Speichersystemen auftreten, vermieden werden können.
Die Skalierbarkeit wird mit dem wachsenden Datenvolumen immer wichtiger. Ein Großteil der Daten ist unstrukturiert, beispielsweise Textdateien, Bilder und Videos. Ceph wurde für die Verarbeitung von Daten im Petabyte- oder sogar Exabyte-Bereich optimiert. Die Notwendigkeit, solche riesigen Datenmengen zu verwalten, ist mit dem schnellen Wachstum von KI, maschinellem Lernen und Deep Learning noch wichtiger geworden.
Die Entwicklung hin zu softwaredefiniertem Speicher spielt eine wichtige Rolle bei der Verwaltung von Daten und Speicherressourcen in Rechenzentren, in Edge-Umgebungen und an verschiedenen geografischen Standorten. Software-definierter Speicher wie Ceph bietet die Flexibilität, die erforderlich ist, um sich entwickelnde Speichertopologien und wachsende Datenmengen aufzunehmen sowie moderne Arbeitslasten und Technologien wie Infrastructure as Code (IaC) zu unterstützen.
Darüber hinaus ist Ceph-Speicher kostenlos. Unternehmen können die Plattform an ihre spezifischen Anforderungen anpassen und die Kosten für Lizenzen und Ausrüstung minimieren.
Unternehmen implementieren Ceph-Speicher, um eine Vielzahl von Anwendungen zu unterstützen. Sie können Ceph zum Beispiel bei der Bereitstellung von privaten Clouds, Container-basierten Anwendungen oder disaggregierten Infrastrukturen einsetzen. Einige setzen Ceph zur Unterstützung von Bild- und Video-Repositories ein. Andere nutzen Ceph für die Datensicherung und -archivierung. Unternehmen könnten Ceph auch für ihre VMs oder Datenbanksystemeverwenden.
Herausforderungen bei der Implementierung
Die inhärente Komplexität von Ceph ist eines der meistgenannten Probleme. Unternehmen, die nicht über das notwendige Fachwissen verfügen, können sowohl bei der Einrichtung als auch bei der Verwaltung auf Probleme stoßen. Wenn Unternehmen Ceph nicht sorgfältig planen und implementieren, kann es bei Client-Anwendungen zu Engpässen und Latenzproblemen kommen. Die Behebung dieser Probleme ist oft zeitaufwändig und kostspielig.
Einige Nutzer berichten von einem Mangel an breitem Community-Support, zumindest im Vergleich zu anderen Systemen. Andere verweisen auf inkonsistente oder veraltete Dokumentation oder auf das völlige Fehlen von Dokumentation. Diese Probleme in einem kritischen Speichersystem können weitreichende Auswirkungen auf Workloads haben, die auf die Daten angewiesen sind.
Ceph erfordert außerdem ein umfassendes Netzwerk, um alle Funktionen ordnungsgemäß zu implementieren und die erforderliche Leistung zu erbringen. Ein hochleistungsfähiger Cluster ist nur mit der richtigen Netzwerkkonfiguration möglich. Die Einrichtung eines solchen Netzwerks kann viel Zeit und Ressourcen in Anspruch nehmen.
Eine Ceph-Implementierung erfordert in der Regel ein öffentliches Netzwerk für die Client-Kommunikation und die Überwachung sowie ein Speicher-Cluster-Netzwerk für den OSD-Betrieb. Um die richtige Netzwerktopologie zu finden, benötigt ein Unternehmen möglicherweise zusätzliches Fachwissen und Ressourcen, um die ordnungsgemäße Implementierung sicherzustellen.
Anbieter und Produkte
IT-Teams können Ceph-Speicher in ihren Rechenzentren nach Bedarf implementieren, ohne sich um die Lizenzkosten kümmern zu müssen. Es handelt sich jedoch auch um ein komplexes System, weshalb viele Unternehmen auf kommerzielle Produkte zurückgreifen, um die Bereitstellung und laufende Wartung zu vereinfachen.
Mehrere Anbieter offerieren inzwischen Produkte, die auf Ceph-Technologien basieren. Vor allem drei Anbieter haben sich an die Spitze der Bewegung gesetzt und bieten jeweils ihre eigene Version der Ceph-Plattform an.
- Canonical Ceph. Diese Plattform wurde für Implementierungen im Petabyte-Maßstab entwickelt und trägt gleichzeitig dazu bei, Unternehmen zu entlasten, die nicht über das für die Implementierung von Ceph erforderliche interne Know-how verfügen. Die Canonical Ceph-Tools ermöglichen IT-Teams die Verwaltung des gesamten Lebenszyklus von Ceph in Bezug auf Bereitstellung, Konfiguration und Betrieb.
- IBM Speicher Ceph. IBM bietet eine herstellerunterstützte Ceph-Distribution an, die Teil seines Portfolios an softwaredefinierten Speichern ist. IBM Storage Ceph ermöglicht IT-Teams den Aufbau von Data Lakehouses für IBM watsonx.data und für KI-Workloads der nächsten Generation.
- Red Hat Ceph Storage. Die Ceph-Version von Red Hat bietet eine vereinfachte Speicherplattform, die für Datenanalyse, KI und maschinelles Lernen sowie andere aufkommende Workloads entwickelt wurde. IT-Teams können die Plattform auf branchenüblicher Hardware ihrer Wahl implementieren und dabei Technologien wie OpenShift und Kubernetes nutzen.
Darüber hinaus vertreibt SoftIron eine auf Ceph basierende Storage-Suite. Mirantis bietet eine Ceph-basierte Plattform für Cloud-Umgebungen an. Zu den weiteren Anbietern von Ceph-Produkten gehören SUSE, Rook, Aspen Systems und Virtunet Systems.