XRAID mit RAID-Implementierung für XFS vorgestellt

Christoph Hellwig, der Maintainer der DMA-, KVM-, Slab Allocator- und PowerPC-Subsysteme im Linux-Kernel, stellte die erste öffentliche Version von XRAID vor, einer Implementierung von deklasterisiertem RAID mit Paritätskontrolle, die in das XFS-Dateisystem integriert ist. Das Projekt wurde ins Leben gerufen, um die Verwendung von RAID auf zonierten Speichergeräten, wie etwa SMR-Festplatten (Shingled Magnetic Recording), zu ermöglichen und eine hochleistungsfähige RAID-Implementierung zur Gewährleistung der Datenintegrität bereitzustellen. Neben zonierten Geräten unterstützt XRAID auch den Betrieb auf herkömmlichen Festplatten und SSDs und zeigt bei letzterem einen signifikanten Leistungszuwachs im Vergleich zu mdraid (bis zu 20 Mal bei Schreibvorgängen).

Für die Verteilung von Informationen auf die Speicher in XRAID kommt eine deklasterisierte Paritätskontrolle zum Einsatz, die an dRAID in OpenZFS erinnert, wobei keine separaten Speicher für Hot Spares zugewiesen werden, sondern Daten, Paritätsinformationen und freier Reserveplatz gleichmäßig auf alle Speicher verteilt werden. Der Prozess des Lesens, Schreibens und der Wiederherstellung im Falle von Ausfällen umfasst alle vorhandenen Speicher, was die Durchsatzrate erhöht, die Belastung einzelner Festplatten verringert, spürbare Leistungseinbußen bei Ausfällen vermeidet und den Neuanordnungsprozess nach dem Hinzufügen oder Ersetzen von Speichern erheblich beschleunigt.

Deklastiserte RAID vereinfachen auch die Erstellung von fehlertoleranten Arrays mit einer sehr großen Anzahl von Festplatten. Bei der Wiederherstellung nach Ausfällen bestimmt XRAID dynamisch die Reihenfolge des Neuanordnens der Speicher und bearbeitet zunächst Bereiche mit größerem Verlust an redundanten Informationen und ordnet die Datenbereiche vor den Abschnitten mit Paritätsinformationen neu an.

XRAID wurde ursprünglich mit Blick auf die Verwendung von zonierten Speichern entwickelt, bei denen der Speicherplatz in Zonen unterteilt wird, die Gruppen von Blöcken oder Sektoren bilden. In solchen Geräten ist nur eine sequenzielle Datenaddition erlaubt, wobei die gesamte Gruppe von Blöcken vollständig aktualisiert wird. Zum Beispiel wird das Zonierungsschreiben in SMR-Festplatten (Shingled Magnetic Recording) angewendet, bei denen die Breite der Spur kleiner ist als die Breite des Magnetkopfes, und das Schreiben erfolgt mit teilweiser Überlappung der benachbarten Spur, d.h. jede erneute Beschriftung erfordert eine Neuschreibung der gesamten Spurgruppe.

Um zonierte Geräte zu unterstützen, nutzt XRAID den in XFS und dem Linux-Kernel implementierten Block-Allocator für zonierte Geräte (zoned allocator), der das RT-Subvolumen (RealTime subvolume) verwendet, um die getrennte Speicherung von Daten und Metadaten zu organisieren (in Zonen mit sequenzieller Aufzeichnung wird nur der Inhalt von Dateien gespeichert, während die Metadaten des Dateisystems in normalen Zonen oder auf zusätzlichen SSD-Speicherplätzen abgelegt werden).

Im XRAID werden die RAID-Mechanismen zur Paritätskontrolle nur für den Inhalt von Dateien angewendet, während die Redundanz für Metadaten durch die Nutzung bereits vorhandener Treiber im Linux-Kernel realisiert wird, beispielsweise durch Spiegelung mithilfe von MD RAID, was effektiver für kleine Objekte ist, die vor Ort aktualisiert werden. Die RAID-Implementierung wird in XFS bis zu den Handhabern des zonierten Eingangs/Ausgangs integriert, die physische Zonen der darunterliegenden Speichergeräte in Form von logischen Zonen darstellen, ähnlich wie bei einem mehrschichtigen Blockgerät.

Die Arbeit an XRAID ist seit anderthalb Jahren im Gange, und obwohl die Implementierung noch nicht bereit ist, um in den Kern integriert zu werden, ist sie bereits für Tests durch ein breites Publikum geeignet. In der vorgeschlagenen Implementierung werden von 0 bis 2 Paritätslevels unterstützt (der Code zur Unterstützung von 3 oder mehr Ebenen befindet sich in der Entwicklung). Zur Verwaltung von XRAID wurde dem xfsprogs-Toolkit ein neues Dienstprogramm 'xraid' hinzugefügt, und die Unterstützung von XRAID wurde in mkfs implementiert. Darüber hinaus wurden der Inspektionssoftware für zonierte Speicher Zonar Funktionen zur Visualisierung der Zuordnung logischer Zonen zu physischen Zonen hinzugefügt.

Die Testergebnisse der Leistungsbewertung von XRAID im Vergleich zu mdraid und btrfs wurden veröffentlicht, durchgeführt für ein XRAID-Array in einer Konfiguration aus zwei WD DC-SN650 SSDs für Metadaten (Mirror auf Basis von mdraid), sechs regulären WD DC-HC590 26 TB SATA-Festplatten und 6-21 zonierten WD DC-HC690 30 TB Festplatten (SMR).





Es wurden auch Tests von XRAID auf herkömmlichen unzonierten SSDs in einer Konfiguration mit einer 4 TiB Samsung PM9D3a für Metadaten und fünf 4 TiB Samsung PM9D3a für RAID (4 + 1) durchgeführt.





Quelle: opennet.ru
Zuverlässiges Hosting für Websites mit DDoS-Schutz kaufen, VPS VDS Server 🔥 Zuverlässiges Hosting für Websites mit DDoS-Schutz kaufen, VPS VDS Server - ProHoster