Lohnt sich die Verwendung von ZFS und RAID-Z in einem hausgemachten NAS (zum Beispiel FreeNAS)

52425
Kamil Zadora

Die Funktionen von ZFS und RAID-Z unterscheiden sich vielversprechend. Sieht aus, als wäre dies ein perfektes FS für NAS-Lösungen für zu Hause, für Drobo-Dinge des armen Mannes und dergleichen.

Gibt es Nachteile, die ich beachten sollte?

28

11 Antworten auf die Frage

27
Nick Devereaux

Das Schnappschuss eines Dateisystems ist ein erstaunliches Gefühl, so geekig das klingt. Zu wissen, dass Sie sofort zurückrollen können, ist ein beruhigender Gedanke. Momentaufnahmen dauern ebenfalls nur wenige Sekunden. Ein Kollege und ich haben kürzlich einen OpenSolaris-NAS für ein kleineres College (über 200 Studenten) für iSCSI-Speicher für virtuelle Maschinen für Citrix XenServer, Studentendateispeicher und Verwaltungsdateien bereitgestellt. Die Dateien werden geprüft, so dass Sie die Garantie haben, dass bei einem kleinen Fehler auf der Festplattenebene Sie feststellen, dass Ihre Dateien nicht automatisch beschädigt werden.

Mit einem kleinen Budget haben wir einen Server mit 9 Festplatten, 2 für das mit ZFS gespiegelte Betriebssystem, 4 für Daten, 2 Parität (mit ZFS RAIDZ2) und 1 Hot-Spare. Jeder war 1 TB, was ihn auf etwa 2,5 TB oder mehr nutzbar machte (Sie verlieren etwas Platz für die Konvertierung von 1 TB in 1 TB und andere Overhead-ähnliche Dateisystemdaten). Die Momentaufnahme des Stammspeicherpools dauerte weniger als 2 Sekunden. Wenn Sie sich für ZFS entscheiden, fragen Sie sich, wie Sie jemals zurückgehen werden und warum dies kein Standard ist.

Snapshots können auch mit 'zfs send' an einen anderen Computer gesendet werden, auf dem dieselbe Version von ZFS ausgeführt wird. Dies kann über SSH erfolgen. Diese Änderungen werden inkrementell gesendet, sodass keine Verschwendung entsteht.

Der einzige Nachteil besteht darin, die richtigen Befehle zu kennen, obwohl OpenSolaris einen guten Planungsmanager für tägliche Snapshots hat, obwohl ich ihn nicht verwendet habe. Das Teilen über iSCSI, CIFS / SMB oder NFS ist ziemlich trivial - in der neuesten Version, die das neue Framework verwendet, führt COMSTAR jedoch zu Problemen. Stellen Sie sicher, dass Sie die richtige Anleitung für Ihre Veröffentlichung verwenden, wenn Sie diesen Pfad nach unten gehen. 2009.06 hat seit 2008.11 einige Änderungen, die ich empfehle. Ich würde es auch nicht als Desktop benutzen - Gnome und X scheinen ein bisschen Aufmerksamkeit zu benötigen.

Die letzte Sache: Sie benötigen mindestens 512 MB Arbeitsspeicher, um ZFS reibungslos laufen zu lassen. YMMV, aber probieren Sie es aus und sehen Sie, was Sie denken.

Lesen Sie sich die Dokumente durch: http://wikis.sun.com/display/BluePrints/Provisioning+with+iSCSI+and+Solaris+ZFS+in+10+Minutes

Und vielleicht weniger bekannte Solaris-Funktionen http://www.c0t0d0s0.org/pages/lksfbook.html

Und wenn Sie Lust haben, etwas zu testen, besuchen Sie http://www.solarisinternals.com/wiki/index.php/ZFS_Evil_Tuning_Guide

Eine letzte Information für alle, die lesen möchten: Stellen Sie sicher, dass Sie über eine RAID-Karte verfügen und die Funktionen von ZFS so nutzen möchten, dass sie die Festplatten in JBOD bereitstellen können, im Gegensatz zu einer von der Karte vorgegebenen RAID-Konfiguration. Genießen!

Ich verwende Solaris mit RAIDZ2 für meinen persönlichen Dateiserver und es war großartig. Es ist einfach einzurichten, schnell und zuverlässig. Ich würde Solaris nicht als Desktop-Betriebssystem verwenden, aber als Server-Betriebssystem habe ich nichts Besseres gefunden. Amok vor 14 Jahren 5
Ich habe festgestellt, dass Solaris auch ein anständiges arbeitsorientiertes Desktop-Betriebssystem ist, kann es jedoch nicht für den Heimgebrauch empfehlen (wo möglicherweise Zugriff auf weitere Multimedia-Apps erforderlich ist). Brian Knoblauch vor 14 Jahren 2
7
pgs

Wenn Sie unter NAS (Open) Solaris oder FreeBSD auf einer als Dateiserver fungierenden PC-Hardware meinen, dann ja, es sollte in Ordnung sein.

Lesen Sie diese Frage zum Erstellen Ihres eigenen NAS. Möglicherweise finden Sie dedizierte NAS-Software wie FreeNAS, die einfacher einzurichten und zu verwalten ist.

4
Walter

ZFS auf einem Heim-NAS ist großartig. Ich habe einen FreeBSD-Server, auf dem ZFS seit Jahren ausgeführt wird (jetzt ein Upgrade auf FreeBSD 8.2 mit V15), und die Wiederherstellungsaspekte gehören zu den verborgenen Juwelen.

Ich habe ein System mit einem 2-TB-Laufwerk in einem ZFS-Spiegel, das aus Umweltgründen abstürzte. Als es wieder hochgefahren wurde, dauerte es nur wenige Sekunden, bis ZFS die Probleme mit dem Laufwerk korrigierte. Eine Standard-RAID-Wiederherstellung auf 2-TB-Laufwerken dauert lange. Ich hatte einen weiteren Würfel, weil einige der internen Fans starben. Dieses System hatte ein RAIDZ mit 4 Laufwerken und konnte den gesamten Datenverlust innerhalb von 5 Minuten in einem 2-TB-Setup wiederherstellen.

Wenn Sie FreeBSD mit Samba und ZFS ausführen, können Sie die Snapshots der ersten Antwort mit Recent Files (unter Vista und Windows 7) kombinieren und dann ältere Dateiversionen mithilfe der Windows-Benutzeroberfläche verwenden. Weitere Informationen finden Sie unter http://www.edplese.com/samba-with-zfs.html .

3
Keck

Es sei darauf hingewiesen, dass die Linux-ZFS-Implementierung aufgrund von Lizenzproblemen etwas verkrüppelt ist. Es läuft als Userspace-Programm und hat die Leistung drastisch reduziert, und Iirc hat einen reduzierten Funktionsumfang. Als Betriebssystem werden Solaris und FreeBSD empfohlen, auch wenn Mac OSX nur eingeschränkte Unterstützung bietet.

Follow-up - Der OSX-Port von ZFS ist inzwischen etwas veraltet, ich würde ihn nur für Tests empfehlen

http://www.zfsonlinux.org verwendet ein Kernel-Modul und hat nicht die gleichen Leistungsprobleme. devicenull vor 12 Jahren 1
Die Kernelmodusversionen von ZFS unter Linux sind wesentlich stabiler geworden. Dies ist eine, die Sie für ZFS unter Linux verwenden möchten. Walter vor 9 Jahren 1
3
Barry Kelly

Es kann sich lohnen, wenn Sie Hardware finden, die gut mit Solaris funktioniert. Am Ende habe ich Nexenta aus Gründen der Benutzerfreundlichkeit verwendet - es verwendet (meist) bekannte GNU-Befehlszeilen und Debians Paketmanager.

Hier ist mein Bericht darüber, wie es lief.

1
dlamblin

Ich wollte es schon immer versuchen, denn ein Raid-Z-Host mit einer NFS-Freigabe zu betreiben, klingt wie OpenSolaris. Aber ohne es probiert zu haben, kann ich noch nicht auf die Vor- oder Nachteile eingehen. Natürlich können Sie es nicht direkt unter Windows mounten, es sei denn, Sie führen auch Samba aus und es ist möglicherweise nicht möglich, beides für dasselbe Array auszuführen. Wenn ich es tun würde, würde ich nicht aus dem gleichen Raid-Z-Array booten, das ich freigebe. Sie benötigen also mindestens 4 Laufwerke, und ich denke daran, 6 zu verwenden.

1
Ivan S Kirkpatrick

Ich habe schon länger Solaris, OpenSolaris und OpenIndiana verwendet. ZFS ist eine der attraktivsten Funktionen in diesen Betriebssystemen. Ich bin sehr positiv mit ZFs beeindruckt und habe kürzlich native ZFS auf meiner neuen Ubuntu-Workstation installiert. Die Lizenzierung erfordert, dass der Benutzer es installiert, aber es funktionierte für mich mit den Informationen, die im ZFS-Projekt unter Linux gefunden wurden.

Meine Neuinstallation ist eine 64-GB-SSD für das Betriebssystem und meine / home- und 4 2-TB-Laufwerke, die als raidz konfiguriert sind. Ich habe ZFS-Dateisätze als Verzeichnisse unter meinem Heimatverzeichnis, um zu vermeiden, dass die kleine SSD mit Dateien geladen wird, die ich nicht als Bestandteil von Betriebssystemupgrades verwenden möchte.

Bisher scheint das für mich sehr gut zu funktionieren. Die SSD macht das Betriebssystem sehr ansprechend und der Speicherplatz und die Geschwindigkeit sind auch ziemlich gut. Ich habe vor, das Disk Array an diesem Wochenende zu testen.

Ich bin wirklich beeindruckt von ZFS. Es wurde entwickelt und entwickelt, um das letzte Wort in Dateisystemen zu sein, und meiner Erfahrung nach ist es das bisher.

1
user238853

"Sieht aus, als wäre dies ein perfektes FS für NAS-Lösungen für zu Hause, für Drobo-Dinge des armen Mannes und dergleichen."

Für Zuhause und für kleine, mittlere und große Unternehmen. Sie können sicher sein, dass es bei ZFS nichts "armer Mann" gibt.

Als Beispiel bietet Oracle erhebliche Unterstützung für ZFS:

http://www.oracle.com/technetwork/server-storage/solaris11/technologies/zfs-338092.html

Mit ZFS können Sie Drobo-ähnliche Funktionen selbst, mit ein wenig Recherche und zu geringeren Kosten neu erstellen.

Meine erste Empfehlung ist, dass Sie sich mit den verschiedenen Versionen von ZFS vertraut machen. Mit den Unterschieden zwischen OpenSolaris, OpenIndiana, Oracle Solaris, BSD und Linux, die sich aus verschiedenen Lizenztypen ergeben, kann es etwas kompliziert werden. Wenn Sie einen dedizierten ZFS-Computer haben, können Sie abhängig von der gewünschten Version das richtige Betriebssystem installieren, das dies unterstützt.

Zu den Unterschieden gehört die Unterstützung der Verschlüsselung und des Bootens von ZFS-Partitionen.

-1
Omry

Ich habe vor kurzem eine Home-Storage-Box konfiguriert, ich habe Raid 10 (Mirror + Strip) für Raidz gewählt. Die Nachteile von Raidz sind:

  1. Wenn Ihre Festplatten nicht gleich groß sind, verwenden Sie nur die kleinste Festplatte pro vdev. Wenn Sie beispielsweise zwei 1-TB-Platten und zwei 1,5-TB-Platten haben, behandelt ein Raidz-Pool mit allen 4 Festplatten die 1,5-TB-Platten als 1-TB-Platten.

  2. Raidz sind ziemlich statisch. Wenn Sie eine Raidz von 4 Festplatten haben, können Sie nicht einfach eine fünfte Festplatte hinzufügen. Sie müssen einen neuen raidz vdev von 4 Festplatten hinzufügen. Dadurch sind Raidz-Setups weniger flexibel als Raid10-Setups, bei denen Sie jederzeit ein anderes Paar Festplatten in den Pool legen können.

Der Nachteil von raid10 ist, dass Sie 50% des Speichers verlieren. Bei den heutigen Speicherpreisen ist dies jedoch keine so große Sache.

Ein Nachteil ist, dass NFS-Kompatibilität mit Linux nicht großartig ist. Um es funktionieren zu lassen, musste ich Linux mit nfs3-Protokoll über TCP installieren, und es wurden keine weichen Timeouts eingestellt (ich hatte Timeouts und sie verursachten Probleme).

Für Windows-Dateifreigabe habe ich Samba verwendet und nicht den eingebauten CIFIS-Dienst. Aus irgendeinem Grund konnte ich Cifs nicht richtig zum Laufen bringen.

Eine schöne Sache ist, dass Sie Linux-Boxen mit rsync auf die geöffnete Solaris-Box sichern und dann einen zfs-Snapshot erstellen können. Ich habe ein Tool namens zync geschrieben, das den Prozess automatisiert:

ZFS kann wie RAID0, RAID1, RAID5 oder RAID6 verwendet werden, da es Spiegelung, Striping und RAID5 / 6-Parität unterstützt. Amok vor 14 Jahren 1
Erfordert ein Standard-RAID-Setup (wie RAID 1 und RAID 5) nicht, dass alle Laufwerke dieselbe Größe haben? XRAID und andere benutzerdefinierte RAID-Setups unterstützen solche Funktionen. Erstellen Sie im angegebenen Beispiel zwei Pools, einen mit 2 1-TB-Laufwerken und einen mit 2 1,5-TB-Laufwerken. Walter vor 12 Jahren 0
-3
Bender

Große Funktionen und Redundanz können Ihnen ein falsches Sicherheitsgefühl vermitteln. Denken Sie daran, dass ZFS sehr kompliziert ist. Wenn irgendwann einmal etwas schief geht, können Sie möglicherweise nicht auf Ihre Daten zugreifen, und es gibt nur sehr wenige Leute, die helfen können.

Gleiches gilt für die meisten Hardware-RAIDs ... Brian Knoblauch vor 14 Jahren 0
ZFS ist etwas einzigartig. Hardware-RAIDs, so zerbrechlich sie auch sind, haben ein wesentlich einfacheres Layout auf der Festplatte. Und es gibt noch mehr Leute, die Daten von defekten RAID-Arrays wiederherstellen können. Außerdem gibt es einige Tools zur Datenwiederherstellung für gängige Dateisysteme. :) Bender vor 14 Jahren 1
Ich habe es mit FreeBSD verwendet und hatte Systemausfälle aufgrund von Stromausfällen (UPS stürzt ab, der Saft ist leer, bevor das System heruntergefahren wird), und das wirklich glatte Ding ist, dass das System alle Daten wiederherstellt, wenn das System wieder hochgefahren ist im Hintergrund, während das System ausgeführt wird (anstatt mehrstündige RAID-Wiederherstellungen zu erfordern). Das Entwurfsziel scheint zu sein, um zu verhindern, dass alle Daten manuell wiederhergestellt werden müssen, indem rohe Bytes vom Laufwerk gelesen werden. Walter vor 12 Jahren 0