SnapRAID Schritt-für-Schritt Anleitung für OpenMediaVault

In dieser Anleitung erklären wir euch was SnapRAID ist, wo die Vor- und Nachteile im Vergleich zu einem Software-Raid liegen und wie ihr SnapRAID unter OpenMediaVault korrekt einrichtet.

Wir hatten vor rund einem Jahr schon einmal einen Artikel zu SnapRAID verfasst, seit dem hat sich allerdings viel verändert. Daher haben wir uns entschieden eine komplett neue Anleitung inklusive AUFS Pooling zu verfassen. Doch der Reihe nach.

Was ist SnapRAID überhaupt ?


SnapRAID gibt es bereits seit knapp 5 Jahren. Die Software wird vom italienischen Entwickler Andrea Mazzoleni entwickelt. SnapRAID funktioniert unter Windows, Linux, Unix, MacOS X, BSD und Solaris. Durch diese breite Unterstützung von Betriebssystemen und der Tatsache das SnapRAID komplett kostenlos ist, hat es sich ziemlich schnell verbreitet.

Entwickelt wurde SnapRAID für die Anforderungen in einem privaten Umfeld, etwa einem Heimserver der viele große Dateien (z.B. Videos) bereitstellt die sich nur sehr selten ändern.

Ähnlich wie bei einem Software Raid bietet auch SnapRAID einen Schutz vor Datenverlust sollte eine (oder mehrere) Festplatten ausfallen. Dieser Ausfallschutz ist allerdings nicht sofort vorhanden, sondern wird durch einen „Sync“ Job erzeugt, der regelmäßig ausgeführt werden sollte. Pro 1TB belegter Kapazität benötigt der „Sync“ Job je nach System ca. 1 Stunde.

Zusätzlich erstellt SnapRAID ähnlich zu den Dateisystemen ZFS und btrfs eine Prüfsumme der Dateien und kann so die stille Datenkorruption erkennen und beheben. Dazu werden so genannte „Scrub“ Jobs benutzt. Wer sich mit ZFS oder btrfs auskennt, wird schnell erkennen, dass alle einer ähnlichen Logik folgen, auch hier gibt es diese regelmäßigen Jobs.

Der größte Unterschied im Vergleich zu einem Raid ist, dass SnapRAID die Dateien immer komplett auf einer Festplatte ablegt und nicht über mehrere Festplatten verteilt.

Funktionsweise


Die Konfiguration bzw. Umsetzung von SnapRAID und einem AUFS Pool in einem NAS mit 3 Festplatten (1x Parität, 2x Daten) sieht so aus:

Vorteile von SnapRAID gegenüber einem Software Raid



  • Erkennung von Datenkorruption durch Erstellung von Prüfsummen

  • Alle Dateien werden normal abgelegt, d.h. Zugriff auf alle Daten auch ohne SnapRAID möglich

  • Schutz vor dem gleichzeitigen Ausfall von bis zu 6 Festplatten

  • Die Festplatten in dem SnapRAID Verbund können unterschiedlich groß sein

  • Die Festplatten dürfen schon Daten enthalten

  • Es können jederzeit neue Festplatten hinzugefügt werden um die Kapazität zu erhöhen

  • Irrtümlich gelöschte Dateien können zeitlich befristet (bis zum nächsten „Sync“) wiederhergestellt werden

  • Fallen mehr Festplatten aus als es Paritäten gibt, gehen nur die Daten auf den ausgefallenen Festplatten verloren

  • Für den Zugriff auf eine Datei muss immer nur die Festplatte aktiv sein, auf der die Datei gespeichert wurde

  • Betriebs- und Dateisystemunabhängig

Nachteile



  • Schlechtere Performance, die Geschwindigkeit ist abhängig von der aktuell benutzten Festplatte

  • Ausfallschutz ist erst nach einem „Sync“ gegeben und nicht sofort

  • Höhere Hardwareanforderungen, es wird mehr Arbeitsspeicher benötigt

  • „Sync“ und „Scrub“ Jobs benötigen bei großen Datenmengen viel Zeit

  • Nicht so ausgereift wie ZFS oder btrfs

  • Erkennung von Datenkorruption nicht so gut wie in ZFS oder btrfs weil es mehr Ebenen gibt

Kurzvergleich SnapRAID vs. mdadm Linux Raid











SnapRAIDNormaler Raid
Max. Parität (HDDs)62 (Raid 6)
Laufende Festplattennur die AktiveAlle
RedundanzSnapshotEchtzeit
Festplattengrößekann unterschiedlich seingleich große HDDs
Lässt sich mit gefüllten Festplatten starten ?JaTeilweise
Geschwindigkeit steigt mit Anzahl der FestplattenNeinJa
Benötigter Arbeitsspeicher1GB je 10TB Kapazität1GB

Erstellen eines Verbundes mit AUFS


Die in SnapRAID eingebundenen Festplatten können nur einzeln angesprochen werden. Ein SnapRAID bestehend aus 2 Datenfestplatten würde Clientseitig wie zwei einzelne Festplatten / Freigaben aussehen. Das bedeutet man müsste seine Dateien manuell auf die beiden Festplatten aufteilen.

Für alle die bereits einen Raid benutzen, wäre dies sicherlich ein absolutes No-Go. Durch die Benutzung einer Pooling Software lassen sich die Festplatten aber einfach zusammenfassen. Für OpenMediaVault / Linux benutzen wir in dieser Anleitung die Software AUFS, die sich durch ihre einfache Handhabe und geringe Größe auszeichnet.

Alternativ könnte man die Software „Greyhole“ benutzen, welche deutlich mehr Features mitbringt, dafür aber sehr groß ist und z.B. einen MySQL Server benötigt. Da wir die zusätzlichen Features von Greyhole (z.B. eine eigene Parität) gar nicht benötigen (das bietet uns ja schon SnapRAID) raten wir zu AUFS.

Anmerkung: SnapRAID kann mittlerweile einen virtuellen Pool mit symbolischen Links erstellen, diese Methode empfinden wir aber als deutlich unkomfortabler als das Pooling mit AUFS.

AUFS ist nur dafür zuständig die einzelnen Datenfestplatten in einem Pool zusammenzufassen. Clientseitig haben wir damit nur eine Festplatte / Freigabe auf die wir unsere Daten kopieren können. Die Verteilung der Daten auf die Festplatten übernimmt dann AUFS.

Für die Datenverteilung gibt es in AUFS mehrere Möglichkeiten / Richtlinien:


  • mfs (most free space) - Die Datei wird auf die Festplatte kopiert, die über den meisten freien Speicherplatz verfügt

  • pmfs - Mischung aus tdp und mfs, Füllt eine Festplatte nach der anderen. Existiert ein Zweig auf mehreren Festplatten, wird die Festplatte mit dem meisten freien Speicherplatz ausgewählt

  • rr (round robin) - Verteilt die Dateien gleichmäßig nach Dateianzahl (nicht Speicherbedarf) auf die Festplatten

  • tdp (top-down-parent) - Füllt eine Festplatte nach der anderen (Default in OpenMediaVault)

Installation von SnapRAID und AUFS unter OpenMediaVault


Nachdem ihr nun wisst wie SnapRAID funktioniert, zeigen wir euch wie ihr SnapRAID und AUFS in OpenMediaVault installiert und richtig konfiguriert.

1. Ihr habt OpenMediaVault in der aktuellsten Version sowie die OpenMediaVault Extras Erweiterung installiert. Wie das funktioniert haben wir in unserer Installationsanleitung für OpenMediaVault beschrieben.

2. In den OpenMediaVault Erweiterungen installieren wir nun SnapRAID und Unionfilesystems. Seht ihr diese beiden Erweiterungen nicht obwohl ihr das OpenMediaVault Extras Plugin installiert habt, klickt einfach noch einmal auf den „Prüfen“ Button.

3. Unter dem Menüpunkt „Reale Festplatten“ sollten alle eure Festplatten zu sehen sein. Sofern das Dateisystem von OpenMediaVault unterstützt wird, dürft ihr auch schon bereits gefüllte Festplatten für SnapRAID verwenden. In dieser Anleitung gehen wir allerdings von leeren Festplatten (Western Digital Red, je 3TB) aus.

4. Unter „Dateisysteme“ erstellen wir für jede Festplatte ein Dateisystem (Ext4) und binden diese ein. In unserem Setup wollen wir ein SnapRAID mit 3 Festplatten (1x Parität und 2x Daten) nutzen. Von den 3x3TB bleiben uns so 6TB für Daten. Damit wir später immer wissen wofür welche Festplatte genutzt wird, benennen wir die Festplatten „Paritaet1“ sowie „Daten1“ und „Daten2“. Das ist vor allem später in AUFS hilfreich.

Bilder werden geladen ...

5. In SnapRAID binden wir nun zunächst die Paritäts-Festplatte (Paritaet1) ein. Wichtig: die Paritätsfestplatte muss die Größte im Verbund sein bzw. mindestens genauso groß wie die größte Datenfestplatte.

Hier aktivieren wir die Punkte „Inhalt“ und „Parität“. SnapRAID legt so genannte Inhaltsverzeichnisse an. Diese enthalten Prüfsummen und andere Informationen zu unseren Dateien. Um möglichst flexibel zu sein empfehlen wir diese Inhaltsverzeichnisse auf allen Festplatten abzulegen, mindestens jedoch auf (Anzahl Paritäten + 1). Die Inhaltverzeichnisse werden benötigt um Dateien wiederherzustellen und sind nicht besonders groß (meistens kleiner 1GB).

6. Anschließend legen wir die beiden Datenfestplatten (Daten1 und Daten2) an. Hier aktivieren wir nun die Punkte „Inhalt“ und „Daten“.

Unser SnapRAID aus den 3 Festplatten sieht nun so aus:

7. Theoretisch ist unser SnapRAID Verbund damit schon fertig. SnapRAID führt in den Standardeinstellungen alle 7 Tage automatisch einen „Sync“ und „Scrub“ Job durch und überpüft alle Daten. Die Einstellungen hierfür finden sich direkt auf der SnapRAID Startseite.

8. Sofern noch nicht vorhanden, solltet ihr in OpenMediaVault unbedingt die Benachrichtigungsfunktion per E-Mail aktivieren. Sollte ein Problem bei einem „Sync“ oder „Scrub“ Job auftreten, informiert euch das NAS dann per E-Mail.

9. Nun erstellen wir uns einen AUFS-Pool, damit auf dem Client nur eine Freigabe sichtbar ist und nicht jede einzelne Datenfestplatte. Navigiert zu dem Menüpunkt „Union-Dateisysteme“ und klickt auf die Schaltfläche „Hinzufügen“.

Unseren Pool nennen wir „TechnikaffeShare“, bei Typ wählt ihr „aufs“ aus. Die Zweige stehen für unsere Festplatten. Wichtig ist, dass ihr hier nur eure Datenfestplatten (Daten1 und Daten2) auswählt und NICHT die Paritätsfestplatte.

Als Richtlinie benutzen wir „mfs“, damit die Daten immer auf die Festplatte kopiert werden die aktuell über den meisten freien Speicherplatz verfügt. Die Richtlinien hatten wir oben in dieser Anleitung ausführlich beschrieben.

Bilder werden geladen ...

10. Nun müssen wir unseren Pool „TechnikaffeShare“ noch freigeben. Klickt dazu auf den Menüpunkt „Freigegebene Ordner“ und auf „Hinzufügen“. Wählt hier den Pool aus (nicht die Festplatten selbst) und setzt die Zugriffsrechte auf „Administrator: lesen/schreiben, Benutzer: lesen/schreiben, Andere: kein Zugriff“. Die Berechtigungen könnt ihr jederzeit über den Reiter „Berechtigungen zurücksetzen“ ändern.

Bilder werden geladen ...

11. Jetzt benötigen wir nur noch ein Benutzerkonto was berechtigt ist auf unseren freigegebenen Pool zuzugreifen. Klickt auf den Menüpunkt „Benutzer“ und dann auf „Hinzufügen“. Nachdem der Benutzer erstellt wurde wählt ihr den Eintrag aus und klickt dann auf „Privilegien“. Hier vergeben wir nun Lese- und Schreibrechte auf unseren freigegeben Ordner.

Bilder werden geladen ...

12. Um eine Samba (SMB) Freigabe z.B. für einen Windows PC zu erstellen, klickt ihr nun auf den Menüpunkt „SMB/CIFS“. Eventuell müsst ihr diesen Dienst noch aktivieren. Anschließend klickt ihr auf den Reiter „Freigaben“ und dann auf „Hinzufügen“.

Wählt den freigegebenen Ordner aus und erstellt die Freigabe. Damit sind auf dem NAS alle erforderlichen Schritte erledigt.

Bilder werden geladen ...

13. Einbinden der Samba Freigabe unter Windows 7/8/10. Im Arbeitsplatz / Explorer wählt ihr nun „Netzlaufwerk verbinden“ aus. Wichtig ist hier, dass ihr „Verbindung bei der Anmeldung wiederherstellen“ und „Verbindung mit anderen Anmeldeinformationen herstellen“ anhakt.

Im nächsten Fenster gebt ihr dann den Namen eures NAS (bei uns „omvn3700“) ein, gefolgt von einem Backslash und eurem Benutzernamen den ihr zuvor auf dem NAS erstellt hab. Hakt nun noch „Anmeldedaten speichern“ an und gebt euer Passwort ein.

Bilder werden geladen ...

Überprüfen ob SnapRAID korrekt arbeitet


Neben den diversen Werkzeugen die SnapRAID zur Überprüfung anbietet (Erklärung weiter unten), kann man selbst sehr leicht prüfen ob die Daten korrekt auf den Festplatten verteilt werden und ob SnapRAID die Paritätsdaten ordnungsgemäß anlegt.

Dazu navigiert ihr wieder zu „Dateisysteme“. Hier überprüft ihr, ob die Datenfestplatten gleichmässig gefüllt sind (sofern ihr bei AUFS die „mfs“ Richtlinie verwendet) und ob die Paritätsfestplatte exakt so viel gefüllt ist wie die am meisten gefüllteste Datenfestplatte.

In unserem Fall (1 Paritäts und 2 Datenfestplatten) ist außerdem der Füllstand des AUFS-Pools identisch mit der Summe der Datenfestplatten.

SnapRAID smart


Auch wenn euch SnapRAID nun vor dem Ausfall einer (oder bei mehreren Paritäten von mehreren) Festplatten schützt, solltet ihr euch regelmäßig über den Zustand eurer Festplatten informieren. Das geht in OpenMediaVault vollautomatisch. Dazu wählt ihr den Menüpunkt „S.M.A.R.T.“ aus und aktiviert die Smart-Überwachung. Da wir zuvor bereits die Benachrichtigungsfunktion aktiviert haben, schickt und OpenMediaVault im Falle eines S.M.A.R.T. Fehlers eine E-Mail.

Zusätzlich könnt ihr ab und zu in die SnapRAID smart Einstellungen schauen. Dort wird nochmal der Zustand jeder Festplatte inklusive dem Ausfallrisiko der Festplatte angezeigt. Bei unseren Western Digital Red Festplatten berechnet SnapRAID die Auswahlwahrscheinlichkeit in den nächsten 365 Tagen mit 5% pro Festplatte.

Da die Wahrscheinlichkeit eines Ausfalls mit der Anzahl der verwendeten Festplatten zunimmt, beträgt die Wahrscheinlichkeit auf einen Ausfall bei 3 Festplatten in unserem Fall 13%. Gut das wir unsere Daten durch eine Paritätsfestplatte schützen!

Bilder werden geladen ...

SnapRAID Werkzeuge


In SnapRAID könnt ihr auch manuell auf die Werkzeuge zugreifen:


  • Synchronisierung - führt sofort einen „Sync“ aus um die Parität zu erzeugen

  • Bereinigung - führt sofort einen „Scrub“ aus und prüft die Datenintegrität

  • Prüfen - Vergleicht alle Daten mit dem letzten Sync Snapshot und listet diese auf. Es werden aber keine Änderungen vorgenommen (dazu wird „Festlegen“ (Reparieren) benutzt)

  • Diff - Listet alle neue Dateien seit dem letzten Sync auf

  • Festlegen (Reparieren) - Vergleicht alle Daten mit dem letzten Sync Snapshot und nimmt ggf. eine Wiederherstellung vor. Im Original heißt der Befehl „Fix“, übersetzt also eigentlich „Reparieren“ und nicht „Festlegen“.

  • Fix Silent

  • Laufwerkpool - Erstellt bzw. aktualisiert den virtuellen Pool (benötigen wir nicht weil wir AUFS benutzen)

  • Undelete - Stellt eine zuvor gelöschte Datei oder ein Verzeichnis wieder her

Wiederherstellung nach Festplattenausfall


Wir haben eine Festplatte (die für Parität) im Betrieb abgezogen um so einen Ausfall zu simulieren. SnapRAID bemerkt die fehlerhafte Festplatte zunächst nicht und arbeitet munter weiter. Spätestens beim nächsten S.M.A.R.T. Intervall bzw. beim nächsten Aufruf dies Diff-Skriptes hätte uns das NAS aber per E-Mail über den Ausfall informiert.

Wir haben Schritt für Schritt notiert wie ihr bei einem Festplattenausfall vorgehen solltet:


  1. NAS herunterfahren und defekte mit neuer Festplatte ersetzen

  2. Neue Festplatte unter „Dateisysteme“ einrichten (Ext4), Name = Name der ausgefallenen Festplatte + Zusatz wie „Neu“

  3. Neue Festplatte unter „Dateisysteme“ einbinden (siehe Bild1)

  4. Neue Festplatte in SnapRAID hinzufügen, mit „Inhalt“ und „Parität“ bzw. „Inhalt“ und „Daten“, je nachdem ob eine Paritäts- oder Datenfestplatte ersetzt wurde (Bild2)

  5. Alte (defekte) Festplatte aus SnapRAID entfernen

  6. In SnapRAID auf den Reiter „Konfiguration“ wechseln und den „Aktualisieren“ Button klicken um die neue Konfiguration zu laden (siehe Bild4)

  7. In SnapRAID nun auf „Werkzeuge“ klicken und „Festlegen/Reparieren“ auswählen (dieser Vorgang dauert ca. 2 Stunden pro 1TB Kapazität des Verbundes) (Bild5)

  8. Nach der Wiederherstellung können alle Dateien nochmal mit „Prüfen“ überprüft werden. Dies ist nicht unbedingt notwendig aber ratsam

  9. Abschließend muss ein neuer „Sync“ Job ausgeführt werden um den Verbund zu aktualisieren. Dieser Sync sollte maximal 1 Minute dauern, da alle Dateien nach der Wiederherstellung aktuell sind

  10. Über „Status“ kann man sich noch einmal vergewissern ob alles in Ordnung ist (Bild6)

  11. Unter „Dateisysteme“ könnt ihr nun die alte Festplatte löschen

  12. Wurde eine Paritätsfestplatte ersetzt, ist die Wiederherstellung hier abgeschlossen. Handelte es sich um eine Datenfestplatte, müsst ihr diese nun eurem AUFS-Pool hinzufügen und die alte Festplatte aus dem Pool entfernen

Bilder werden geladen ...

Fazit


SnapRAID ist für Privatanwender eine gute Alternative zu einem klassischen Software Raid. In einem Heim-NAS bietet es zudem kaum Nachteile, da der Performancegewinn eines normalen Raids in einem 1Gbit Netzwerk nicht ausgespielt werden kann.

Wer auf etwas Ausfallsicherheit verzichten kann und überwiegend große Dateien sichert, den können wir SnapRAID empfehlen. In den vergangenen Jahren hat sich viel getan und die Bedienung ist nun einfacher und schlüssiger als zuvor. Auch das AUFS-Plugin in OpenMediaVault ist einfacher geworden: ein Pool ist mit nur 2 Klicks erstellt.

In Kombination mit dem OpenMediaVault Autoshutdown, Wake-On-Lan und SnapRAID lässt sich eine Menge an Energie einsparen, weil alle Komponenten nur dann aktiv sind wenn sie auch gebraucht werden. Das kann bei 3 Festplatten schon 50 Euro im Jahr ausmachen.

Wer jetzt Lust bekommen hat ein NAS mit OpenMediaVault und SnapRAID aufzubauen, dem möchten wir noch unsere NAS Bauanleitungen ans Herz legen.