it-swarm.com.de

ZFS-Setup für Anfänger mit Laufwerken unterschiedlicher Größe

Entschuldigung für die Noobie-Fragen, ich habe alle möglichen Lösungswege durchgegoogelt, um mein ZFS-Raid zu erstellen, aber ich kann anscheinend nicht die richtigen Links für die gesuchten Antworten finden.

Dies ist mein erster Versuch für ein RAID, und nach allem, was ich gelesen habe, scheint ZFS der beste Weg zu sein.

  1. Was passiert, wenn ich die zugrunde liegende Hardware hinter dem ZFS-Pool ändern muss? Was passiert wie beim Mobo/Prozessor, wenn das in ein oder zwei Jahren bei mir stirbt? kann ich meinen zfs pool irgendwie portieren?
  2. Ich habe eine ganze Reihe von Laufwerken unterschiedlicher Größe, und ich versuche, den meisten Speicherplatz mit Redundanz herauszuholen. Was ist das beste Setup für diese Konfiguration und wie viel Speicherplatz werde ich durch die Verwendung dieser Laufwerke unterschiedlicher Größe verlieren. Ich erstelle dies nicht für Geschwindigkeitsanforderungen, ich möchte nur einen Dateiserver für mehrere HTPCs. Meine aktuell verfügbaren Laufwerke dafür sind:
    • 1x 500 GB "Hybrid" -Laufwerk
    • 1x 1 TB Laufwerk
    • 1x 3 TB Laufwerk
    • 1x 4-TB-Laufwerk (wird später zum Pool hinzugefügt und enthält derzeit alle Daten der oben aufgeführten Laufwerke.)
  3. Wird das Hinzufügen des 4-TB-Laufwerks zum Pool später ein Problem sein?
  4. Gibt es Empfehlungen für ein Linux-Betriebssystem, auf dem dies alles ausgeführt wird, und sollte ich ein separates Laufwerk für das Betriebssystem verwenden? Ich kenne Ubuntu, RHEL und OpenSUSE/SLES.

Jede Hilfe wird sehr geschätzt, ich lese weiter darüber, nur eine Menge, die ich auf einmal aufnehmen kann. Alle Links, wo ich anfangen soll, wären ebenfalls sehr hilfreich.

24
ivandov

Was passiert, wenn ich die zugrunde liegende Hardware hinter dem ZFS-Pool ändern muss? Was passiert wie beim Mobo/Prozessor, wenn das in ein oder zwei Jahren bei mir stirbt? kann ich meinen zfs pool irgendwie portieren?

Ein ZFS-Pool ist nicht hardwareabhängig. Stellen Sie einfach sicher, dass Ihr HBA (Host Bus Adapter) Ihre Daten nicht auf Hardwareebene verschlüsselt. ZFS funktioniert am besten mit einem HBA wie einem LSI 9211-8i oder einem IBM m1015 Cross-Flash , um die 9211-8i-Firmware zu verwenden, keine vollständige Schlag "Hardware" RAID-Karte.

Ich habe eine ganze Reihe von Laufwerken unterschiedlicher Größe, und ich versuche, den meisten Speicherplatz mit Redundanz herauszuholen. Was ist das beste Setup für diese Konfiguration und wie viel Speicherplatz werde ich durch die Verwendung dieser Laufwerke unterschiedlicher Größe verlieren. Ich erstelle dies nicht für Geschwindigkeitsanforderungen, ich möchte nur einen Dateiserver für mehrere HTPCs. Meine derzeit verfügbaren Laufwerke hierfür sind: 1x 500 GB "Hybrid" -Laufwerk 1x 1 TB -Laufwerk 1x 3 TB -Laufwerk 1x 4 TB -Laufwerk (wird später zum Pool hinzugefügt und enthält derzeit alle Daten der oben aufgeführten Laufwerke.)

Wenn ich Sie wäre, würde ich die kleineren Laufwerke verkaufen und das Geld für größere Laufwerke gleicher Größe einsetzen. Es wird dein Leben viel einfacher machen. Außerdem können Sie einem ZFS-Pool nicht einfach Laufwerke hinzufügen. Es gibt Einschränkungen. Lesen Sie hier .

Wird das Hinzufügen des 4-TB-Laufwerks zum Pool später ein Problem sein?

Möglicherweise. Ich bin in einer ähnlichen Position. Irgendwann in der Zukunft muss ich meine Speicherkapazität erhöhen. Zu diesem Zeitpunkt plane ich den Kauf eines zweiten HBA und eines neuen Arrays größerer Laufwerke. Ich übertrage dann alle Daten von meinen vorhandenen Laufwerken auf meine neuen Laufwerke und verkaufe dann meine vorhandenen Laufwerke. Möglicherweise gibt es andere (billigere) Möglichkeiten, dies zu tun:

  1. Hält alle meine Laufwerke gleich groß
  2. Hat nur die zusätzlichen Kosten für einen zusätzlichen HBA, was ohnehin keine schlechte Sache ist
  3. Ich muss meine Laufwerke nicht einzeln austauschen, sondern muss sie nach jedem Austausch neu versilbern.

Gibt es Empfehlungen für ein Linux-Betriebssystem, auf dem dies alles ausgeführt wird, und sollte ich ein separates Laufwerk für das Betriebssystem verwenden? Ich kenne Ubuntu, RHEL und OpenSUSE/SLES.

Verwenden Sie kein Linux, es hat keine native ZFS-Unterstützung. Die Linux-Unterstützung von ZFS kommt von ZFS unter Linux und zfs-Fuse . Der aktuelle Stand von ZFS ist im Fluss, da Oracle sein Bestes versucht, es zu ruinieren. ZFS wird wahrscheinlich in naher Zukunft auf Version 28 verzweigen. Machen Sie Ihren ZFS-Pool also nicht mit einer Version größer als 28, es sei denn, Sie sind zu 100% sicher, dass Sie sich an eine Oracle-Lösung halten möchten. Derzeit unterstützen FreeBSD und seine Spinoffs ZFS-Version 28.

Da Sie ein selbsternannter ZFS-Neuling sind, würde ich FreeNAS empfehlen. Ich benutze es jetzt schon eine Weile und bin ziemlich zufrieden damit. Es wird definitiv die einfachste Einrichtung für Sie ermöglichen.

Zusätzliche Gedanken:

Stellen Sie sicher, dass Sie die richtige Paritätsstufe für Ihren speziellen Anwendungsfall auswählen. Stellen Sie insbesondere sicher, dass Sie um URE planen. Grundsätzlich möchten Sie RAID 5 (RAID Z1) nicht verwenden, wenn Sie Laufwerke mit mehr als 2 TB verwenden. Es sind noch einige andere Faktoren zu berücksichtigen, die Sie möglicherweise auch dazu auffordern, das Niveau Ihrer Paritätsdaten zu erhöhen. Hier ist ein guter Artikel zu diesem Thema.

Update:

Es ist 1,5 Jahre her, seit ich diese Antwort gepostet habe und in dieser Zeit habe ich ZFS unter Linux (speziell Ubuntu-Server) eine weitere Chance gegeben. Es ist ein langer Weg zurückgelegt, seit ich es zuerst ausprobiert habe, und ich bin soweit ziemlich glücklich. Mein Grund für den Wechsel waren die Installationsbeschränkungen für FreeNAS und das Jailing-System. Ich wollte meinen Server nicht nur für einen NAS -Server verwenden, und FreeNAS macht das schwierig. Das Gefängnissystem ist gut und sehr sicher, aber ich brauchte nicht wirklich diese Sicherheitsstufe in meinem Haus und ich wollte nicht jedes Mal, wenn ich eine Datei entpacken wollte, mit dem Einloggen in ein Gefängnis fertig werden. Ich denke, FreeNAS ist immer noch eine gute Wahl, wenn Sie gerade erst mit ZFS beginnen (wegen der Weboberfläche) oder wenn Sie nur eine NAS Appliance möchten (d. H. Keine andere Serverfunktionalität erforderlich).

20
ubiquibacon

1: Es ist kein Problem, etwas zu ändern. Der Pool sollte unabhängig von der CPU, dem Mainboard oder ähnlichem importierbar sein.

2: ZFS funktioniert am besten mit Geräten gleicher Größe. Wenn Sie Redundanz wünschen, wird bei Geräten, die größer als das kleinste sind, zusätzliche Größe verschwendet. Schließlich können Sie einem RAIDZ kein Gerät hinzufügen (z. B. die Festplatte 4 TB). Wenn Sie nur Metadatenredundanz wünschen (was ich bezweifle), können Sie einen Streifen mit all Ihren Festplatten erstellen und die 4TB- Festplatte später zum Pool hinzufügen.

Alternativ können Sie zuerst einen Pool mit 500 GB erstellen, der einen Spiegel mit Datenträger 1 und Datenträger 2 enthält, und den Datenträger 3 für einen späteren Zeitpunkt aufbewahren. Anschließend können Sie einen zweiten Spiegel hinzufügen, wenn der Datenträger 4 TB mit Datenträger 3 und Datenträger verfügbar ist 4 Erstellen Sie einen Pool mit 3,5 TB.

3: ja, siehe # 2

4: Keine Empfehlung.

4
jlliagre

Wenn Sie ein RAID mit ZFS mit unterschiedlichen Festplattengrößen erstellen möchten, müssen Sie "zpool create (Name Ihres Pools) raidz1 -f sdb sdc sdd" verwenden. Das -f-Argument erzwingt, dass ZFS unterschiedliche Größen verwendet, z. B. 500 GB, 1 TB, 250 GB, HD

1
Juan Sanchez

Es stellt sich heraus, dass Sie mit ashift = 12 in zfs-Fuse nicht erstellen können:

# zpool create -n -o ashift=12 test /dev/disk/by-id/scsi-SATA_......
property 'ashift' is not a valid pool property

Aber es funktioniert mit dem von github zfs + spl 0.6.5.x:

# dd if=/dev/zero of=/tmp/testfile bs=1M count=64
# zpool create -o ashift=12 test /tmp/testfile
# dd if=/dev/zero of=/tmp/testfile8 bs=1M count=64
# zpool create -o version=8 test8 /tmp/testfile8
1
additionalinfo

Eine Ad-hoc-Lösung besteht darin, die Festplatten in Gruppen von Partitionen gleicher Größe zu partitionieren und dann mehrere Pools mit Partitionsgruppen gleicher Größe zu erstellen.

Es kann einige Leistungsprobleme geben, weil sich mehrere Pools auf denselben physischen Datenträgern befinden. Sie können jedoch den größten Teil des Speicherplatzes auf Ihren Datenträgern verwenden.

0
Gianni Fiumetta

die Antwort von Ubiquibacon deckt alle Ihre direkten Fragen ab, aber ich dachte, ich würde eine Erfahrung aus erster Hand machen.

ZFS unter FreeBSD ist mein Haupterfahrungsgebiet, obwohl die meisten ZFS-Implementierungen ähnlich genug sind, dass die Ressourcen möglicherweise analog sind. Ich habe mich bei der Installation für FreeBSD entschieden, weil ich damit ein Allzweck-Betriebssystem habe, das ich für alle von mir gewählten Zwecke verwenden kann, im Gegensatz zu einer freundlicheren, aber speziell dafür vorgesehenen Lösung wie FreeNAS. Richtig konfiguriertes ZFS kann ein großartiges System sein. Falsch konfiguriertes ZFS kann ein totaler Schmerz sein. Es ist ein relativ neues Dateisystem und wird nicht so gut verstanden wie ältere, etabliertere Dateisysteme (wie UFS2 in FreeBSD oder ext2/3/4 unter Linux: Die Mailinglisten sind ziemlich aktiv und es lohnt sich wahrscheinlich, sie zumindest zu scannen, um zu verstehen, was von Ihnen erwartet wird, wenn Sie auf eine davon stoßen Die Leute auf ihnen sind im Allgemeinen freundlich und sehr hilfsbereit, solange Sie bereit sind, herauszufinden, was los ist. Für diese allgemeine "Neuheit" erhalten Sie nette Funktionen wie Komprimierung , die unter vielen Umständen mit wenig Verlust aktiviert werden kann, und gefährliche Funktionen wie Deduplizierung , die viele Ressourcen erfordern kann , kann nicht ausgeschaltet werden, ohne alle Ihre Daten zu kopieren, und kann dazu führen, dass Ihr Computer nicht mehr gestartet werden kann (wie bei mir, an einem glücklichen Tag).

Es ist ein großartiges Dateisystem, wenn einer der Vorteile die Kompromisse überwiegt. Ich war insgesamt mit meinem zufrieden.

0