Gorodenkoff/stock.adobe.com

Speicherstrategien für Open Source-NAS-Systeme

Das richtige RAID-Design spielt eine wichtige Rolle, wenn im Unternehmen ein NAS-System im Einsatz ist. Der Beitrag gibt Tipps und zeigt Hintergründe für das optimale Layout.

Die Wahl des richtigen Datenträger-Layouts ist wichtig für die Performance, Kapazität und Ausfallsicherheit eines Open-Source-NAS-Systems. ZFS, das von Plattformen wie TrueNAS Core, TrueNAS Scale, Unraid sowie anderen Lösungen unterstützt wird, bietet zahlreiche Optionen zur Konfiguration von Festplatten. Dabei ist es wichtig, die Anforderungen an Kapazität, Resilienz und Leistung in Einklang zu bringen.

Grundlagen von ZFS: Pools und vDevs

ZFS basiert auf Pools, die aus virtuellen Geräten (vDevs) bestehen. Ein vDev wiederum setzt sich aus mehreren physischen Festplatten zusammen, die in verschiedenen Layouts organisiert werden können. Zu den gängigen Optionen gehören Stripes, Mirrors und RAID-Z-Konfigurationen.

Stripes verteilen die Daten ohne Redundanz über alle Festplatten eines vDev. Dadurch wird die maximale Speicherkapazität genutzt und die höchste Performance erreicht. Der Nachteil ist das hohe Risiko: Fällt eine einzige Festplatte aus, gehen alle Daten verloren. Mirrors hingegen replizieren die Daten über mehrere Festplatten, wodurch eine hohe Ausfallsicherheit entsteht. Eine Spiegelung halbiert jedoch die nutzbare Kapazität.

RAID-Z ist eine spezielle Konfiguration von ZFS, die Paritätsdaten nutzt, um Datenverluste bei Festplattenausfällen zu verhindern. RAID-Z1 erlaubt den Ausfall einer Festplatte, RAID-Z2 toleriert zwei und RAID-Z3 sogar drei gleichzeitige Festplattenausfälle. Dabei werden die Paritätsdaten über alle Festplatten verteilt, was die Speichereffizienz erhöht.

Abbildung 1: Das richtige RAID-Design spielt beim Einsatz von NAS-Systemen eine wichtige Rolle.
Abbildung 1: Das richtige RAID-Design spielt beim Einsatz von NAS-Systemen eine wichtige Rolle.

Optimierung von Kapazität, Resilienz und Leistung

Bei der Planung eines NAS-Systems müssen Kapazität, Resilienz und Leistung in Einklang gebracht werden. Stripes bieten zwar die höchste Speicherkapazität und maximale Lese- und Schreibgeschwindigkeit, eignen sich jedoch nicht für Szenarien, bei denen Ausfallsicherheit gefordert ist. RAID-Z1 bietet ein gutes Gleichgewicht zwischen Kapazität und Ausfallsicherheit, da nur eine Festplatte für Paritätsdaten reserviert wird. RAID-Z2 erhöht die Resilienz durch die Nutzung von zwei Festplatten für Paritätsdaten, was jedoch zulasten der Kapazität geht. Mirrors bieten die höchste Geschwindigkeit beim Wiederherstellen von Daten und eignen sich besonders für Anwendungen, die von schnellen Zugriffszeiten profitieren.

Die Leistung variiert ebenfalls je nach Konfiguration. RAID-Z1 und RAID-Z2 können durch die Berechnung der Paritätsdaten etwas langsamer sein, während Stripes und Mirrors besonders hohe Lese- und Schreibraten erreichen. Ein RAID-Z1-Setup mit vier Festplatten bietet beispielsweise die Kapazität von drei Festplatten, da eine für die Paritätsdaten genutzt wird. RAID-Z2 reduziert die nutzbare Kapazität auf zwei Festplatten, erhöht jedoch die Ausfallsicherheit.

Effizienz bei der Wiederherstellung von Daten

Ein Vorteil von ZFS ist die Effizienz beim Wiederherstellen von Daten nach einem Festplattenausfall, ein Prozess, der als Resilvering bezeichnet wird. Anders als bei traditionellen RAID-Systemen müssen bei ZFS nur die tatsächlich gespeicherten Daten und nicht die gesamte Kapazität der Festplatte rekonstruiert werden. Dadurch ist die Wiederherstellung deutlich schneller, insbesondere bei Spiegelkonfigurationen. Bei RAID-Z1 und RAID-Z2 hängt die Dauer des Resilverings von der Anzahl der Festplatten und der gespeicherten Datenmenge ab. Breitere vDevs mit vielen Festplatten können zu längeren Wiederherstellungszeiten führen, weshalb kleinere vDevs oft bevorzugt werden.

Abbildung 2: Das richtige RAID-Design bei TrueNAS auswählen.
Abbildung 2: Das richtige RAID-Design bei TrueNAS auswählen.

Kosten und Energieverbrauch

Neben den technischen Aspekten spielen auch wirtschaftliche Faktoren eine Rolle. Größere Festplatten bieten in der Regel ein besseres Preis-Leistungs-Verhältnis, haben jedoch längere Wiederherstellungszeiten. Kleinere Festplatten sind flexibler und ermöglichen schnellere Resilvering-Prozesse, sind jedoch teurer und verbrauchen mehr Energie. Ein acht-Festplatten-NAS benötigt beispielsweise etwa 30 Watt mehr Strom als ein System mit vier Festplatten. Bei hohen Strompreisen können sich diese Unterschiede über mehrere Jahre hinweg erheblich auf die Betriebskosten auswirken.

RAID-Z versus RAID 5: Vorteile und Nachteile

Während beide Technologien Paritätsdaten verwenden, um Ausfallsicherheit zu gewährleisten, hat RAID-Z entscheidende Vorteile. Bei ZFS wird die Integrität der Daten durch Prüfsummen gewährleistet, wodurch stille Datenfehler erkannt und korrigiert werden können, eine Funktion, die RAID 5 nicht bietet. Darüber hinaus unterstützt RAID-Z den effizienten Wiederherstellungsprozess durch Resilvering, bei dem nur die tatsächlich gespeicherten Daten und nicht die gesamte Festplattenkapazität rekonstruiert werden. Dies verkürzt die Wiederherstellungszeiten erheblich.

Ein Nachteil von RAID-Z gegenüber RAID 5 ist die höhere Rechenlast für die Paritätsberechnung, was zu leicht reduzierter Schreibperformance führen kann. Zudem kann die initiale Konfiguration komplexer sein, insbesondere für Anwender, die mit ZFS weniger vertraut sind. Trotzdem überwiegen die Vorteile von RAID-Z, insbesondere in Umgebungen, in denen Datensicherheit oberste Priorität hat.

Abbildung 3: Auch Unraid bietet die Möglichkeit verschiedene Speicherlayouts zu wählen.
Abbildung 3: Auch Unraid bietet die Möglichkeit verschiedene Speicherlayouts zu wählen.

Erasure Coding: Flexibilität und Effizienz

Erasure Coding bietet eine weitere Möglichkeit, Datensicherheit und Speichereffizienz zu kombinieren. Dieses Verfahren, das vor allem in modernen verteilten Speicherlösungen wie Ceph oder GlusterFS verwendet wird, teilt Daten in Fragmente auf und ergänzt sie durch Kodierungsinformationen. Im Vergleich zu klassischen RAID-Ansätzen wie RAID-Z oder RAID 5 bietet Erasure Coding eine höhere Flexibilität, da es sich über mehrere Server hinweg anwenden lässt.

Ein großer Vorteil von Erasure Coding liegt in seiner Speichereffizienz. Während Spiegelkonfigurationen den Speicherbedarf oft verdoppeln, kann Erasure Coding denselben Grad an Ausfallsicherheit bei geringerem Speicherverbrauch erreichen. Allerdings erfordert dieses Verfahren eine erhebliche Rechenleistung, insbesondere beim Wiederherstellen von Daten. Die Latenz kann höher sein als bei RAID-Z, was Erasure Coding vor allem für Anwendungen geeignet macht, bei denen Skalierbarkeit und Verteilung wichtiger sind als sofortige Performance. Erasure Coding ist auf Open-Source-NAS-Systemen wie ZFS-basierten Plattformen in der Regel nicht nativ integriert, da ZFS RAID-Z für Redundanz und Datensicherheit verwendet. Allerdings könnte es bei bestimmten Open-Source-Lösungen, die nicht ausschließlich auf ZFS basieren, möglich sein, Erasure Coding manuell zu implementieren. Dies erfordert jedoch zusätzliche Software und eine komplexere Konfiguration. Für typische NAS-Anwendungen bleibt RAID-Z die bevorzugte Wahl, da es einfacher einzurichten ist und speziell für die Anforderungen von NAS-Systemen optimiert wurde.

Erfahren Sie mehr über Storage-Hardware