ZFS-Einsteiger-Setup mit Laufwerken unterschiedlicher Größe

48440
ivandov

Ich entschuldige mich für die Noobie-Fragen. Ich habe bereits alle möglichen Durchläufen durchgesehen, um meinen ZFS-Raid zu erstellen. Ich kann jedoch nicht die richtigen Links für die Antworten finden, die ich suche.

Dies ist mein erster Versuch für ein RAID. 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? Wie beim Mobo / Prozessor, was passiert, wenn das in ein, zwei Jahren bei mir stirbt? kann ich meinen zfs-pool irgendwie portieren?
  2. Ich habe ziemlich viele unterschiedliche Laufwerke und versuche mit Redundanz den größtmöglichen Speicherplatz zu gewinnen. 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 dafür sind:
    • 1x 500 GB Hybridantrieb
    • 1x 1 TB Laufwerk
    • 1x 3 TB Laufwerk
    • 1x 4TB-Laufwerk (wird dem Pool später hinzugefügt und hält derzeit alle Daten der oben aufgeführten Laufwerke)
  3. Wird das Hinzufügen des 4-TB-Laufwerks zu einem Pool später ein Problem sein?
  4. Gibt es Empfehlungen für ein Linux-Betriebssystem, auf denen das ausgeführt werden soll, und sollte ich ein separates Laufwerk für das Betriebssystem verwenden? Ich bin mit Ubuntu, RHEL und OpenSUSE / SLES vertraut.

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

23

6 Antworten auf die Frage

20
ubiquibacon

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

Ein ZFS-Pool ist nicht von der Hardware abhängig. Stellen Sie nur sicher, dass Ihr HBA (Host Bus Adapter) auf Hardwareebene keine Verschlüsselung Ihrer Daten durchführt. ZFS funktioniert am besten mit einem HBA wie einem LSI 9211-8i oder einem IBM m1015 , der für die Verwendung der 9211-8i-Firmware cross-flashed ist, keine vollwertige "Hardware" -ID-Karte.

Ich habe ziemlich viele unterschiedliche Laufwerke und versuche mit Redundanz den größtmöglichen Speicherplatz zu gewinnen. 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 dem Pool später hinzugefügt und hä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 verwenden. 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 zu einem Pool später ein Problem sein?

Möglicherweise. Ich bin in einer ähnlichen Position. Irgendwann in der Zukunft werde ich meine Speicherkapazität erhöhen müssen. Zu diesem Zeitpunkt plane ich den Kauf eines zweiten HBA und eines neuen Arrays größerer Laufwerke. Ich werde dann alle Daten von meinen vorhandenen Laufwerken auf meine neuen Laufwerke übertragen und dann meine vorhandenen Laufwerke verkaufen. Es kann andere (billigere) Wege geben, aber dies auf folgende Weise tun:

  1. Hält alle meine Laufwerke gleich groß
  2. Lediglich die zusätzlichen Kosten für einen zusätzlichen HBA sind nicht schlecht
  3. Erfordert nicht, dass ich meine Laufwerke einzeln austauscht und nach jedem Austausch erneut versilbert.

Gibt es Empfehlungen für ein Linux-Betriebssystem, auf denen das ausgeführt werden soll, und sollte ich ein separates Laufwerk für das Betriebssystem verwenden? Ich bin mit Ubuntu, RHEL und OpenSUSE / SLES vertraut.

Verwenden Sie kein Linux, es bietet keine native ZFS-Unterstützung. Linux-Unterstützung für ZFS wird von ZFS unter Linux und zfs-fuse bereitgestellt . Der aktuelle Stand von ZFS ist im Fluss, da Oracle alles daran setzt, es zu ruinieren. ZFS wird wahrscheinlich in naher Zukunft auf Version 28 verzweigen. Erstellen Sie also Ihren ZFS-Pool nicht mit einer Version größer als 28, es sei denn, Sie sind zu 100% sicher, dass Sie bei einer Oracle-Lösung bleiben möchten. Derzeit unterstützen FreeBSD und seine Spinoffs die ZFS-Version 28.

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

Zusätzliche Gedanken:

Stellen Sie sicher, dass Sie die richtige Parität für Ihren Anwendungsfall auswählen. Stellen Sie insbesondere sicher, dass Sie die URE planen . Grundsätzlich möchten Sie kein RAID 5 (RAID Z1) verwenden, wenn Sie größere Laufwerke als 2 TB verwenden. Es gibt einige andere Faktoren, die zu berücksichtigen sind, die möglicherweise dazu führen, dass auch Ihre Paritätsdaten erhöht werden. Hier ist ein guter Artikel zum Thema.

Aktualisieren:

Es ist 1,5 Jahre her, seit ich diese Antwort gepostet habe, und in dieser Zeit habe ich ZFS unter Linux (speziell für Ubuntu-Server) eine weitere Chance gegeben. Es ist ein langer Weg gegangen, seit ich es zum ersten Mal ausprobiert habe und ich bin bis jetzt ziemlich glücklich. Mein Grund für den Wechsel waren die Installationsbeschränkungen für FreeNAS und das Inhaftierungssystem. Ich wollte meinen Server für mehr als nur einen NAS-Server verwenden, und FreeNAS macht das schwer. Das Gefängnissystem ist gut und sehr sicher, aber ich brauchte dieses Sicherheitsniveau in meinem Haus nicht wirklich, und ich wollte nicht jedes Mal, wenn ich eine Datei entpacken wollte, mich in ein Gefängnis einloggen. Ich denke, FreeNAS ist immer noch eine gute Wahl, wenn Sie gerade erst mit ZFS beginnen (wegen der Webschnittstelle) oder wenn Sie nur eine NAS-Appliance möchten (dh keine anderen Serverfunktionen erforderlich sind).

Vielen Dank für Ihre ausführliche Antwort. Ihre Betriebssystemempfehlung ist etwas, das ich auf jeden Fall weiter untersuchen muss. Was die Erstellung eines neuen Arrays mit größeren Laufwerken angeht, ist es nach dem Gelesenen möglich, vorhandene Laufwerke in einem Array durch größere Laufwerke zu ersetzen, um deren Kapazität zu erhöhen. Ich glaube, ich verstehe das richtig. Ist das etwas, was Sie in Betracht ziehen? ivandov vor 10 Jahren 0
Ja, das ist möglich, aber ich denke, Sie müssen alle tun. Lesen Sie die Kommentare [hier] (http://forums.freenas.org/threads/zpool-not-growing-after-replacing-all-drives-in-pool-with-larger-drives.10415/), die von einem Mann geschrieben wurden, der genau das getan. Ich habe auch meine Antwort mit einem zusätzlichen Gedanken aktualisiert. ubiquibacon vor 10 Jahren 0
4
jlliagre

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 derselben Größe. Wenn Sie Redundanz wünschen, werden Geräte, die größer als das kleinste sind, mit ihrer zusätzlichen Größe verschwendet. Schließlich können Sie einem RAIDZ kein Gerät (z. B. die 4-TB-Festplatte) hinzufügen. Wenn Sie nur Metadatenredundanz wünschen (was ich bezweifle), können Sie einen Streifen mit allen Ihren Festplatten erstellen und die 4-TB-Festplatte später dem Pool hinzufügen.

Alternativ können Sie zunächst einen 500-GB-Pool erstellen, der eine Spiegelung mit Datenträger 1 und Datenträger 2 enthält, und Datenträger 3 für später aufbewahren. Anschließend können Sie einen zweiten Spiegelspeicher hinzufügen, wenn Sie den 4-TB-Datenträger mit Datenträger 3 und Datenträger 4 zur Verfügung stellen, der einen 3,5-TB-Pool bildet .

3: Ja, siehe Nr. 2

4: Keine Empfehlung.

1
Juan Sanchez

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 zwingt zfs, unterschiedliche Größen zu verwenden, z. B. 500gb 1tb 250gb hd

1
additionalinfo

Es stellt sich heraus, dass Sie nicht mit Ashift = 12 in zfs-fuse 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 
0
Steven Schlansker

ubiquibacons Antwort deckt alle Ihre direkten Fragen ab, aber ich dachte, ich würde etwas "aus erster Hand" erfahren.

ZFS unter FreeBSD ist mein primäres Erfahrungsgebiet, obwohl die meisten ZFS-Implementierungen so ähnlich sind, dass die Ressourcen möglicherweise analog sind. Ich habe mich für FreeBSD für meine Installation entschieden, weil es mir ein allgemeines Betriebssystem gibt, das ich für alle möglichen abweichenden Zwecke verwenden kann, im Gegensatz zu einer freundlicheren, aber speziellen Lösung wie FreeNAS. ZFS, richtig konfiguriert, kann ein hervorragendes System sein. Falsch konfiguriertes ZFS kann ein totaler Schmerz sein. Es ist ein relativ neues Dateisystem und wird nicht so gut verstanden wie ältere, besser etablierte Dateisysteme (wie UFS2 in FreeBSD oder ext2 / 3/4 unter Linux. Die Mailinglisten sind ziemlich aktivund es lohnt sich wahrscheinlich, sie zumindest zu scannen, um zu verstehen, was von Ihnen erwartet wird, falls Sie auf Probleme stoßen. Die Menschen sind im Allgemeinen freundlich und sehr hilfsbereit, solange Sie bereit sind, herauszufinden, was los ist. Für diese generelle "Neuheit" erhalten Sie nette Funktionen wie die Komprimierung, die in vielen Situationen mit wenig Verlust aktiviert werden kann, und gefährliche Funktionen wie die Deduplizierung, für die viele Ressourcen erforderlich sind, können ohne Kopieren nicht ausgeschaltet werden alle Ihre Daten aus und können Ihren Computer nicht mehr bootfähig machen (wie bei mir an einem glücklichen Tag).

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

@Stevan Können Sie "Performance-Probleme aufgrund mehrerer Pools auf denselben physischen Festplatten" aufzeigen? satch_boogie vor 5 Jahren 0
0
Gianni Fiumetta

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

Möglicherweise gibt es einige Leistungsprobleme, da sich mehrere Pools auf denselben physischen Datenträgern befinden, Sie können jedoch den Großteil des Speicherplatzes auf Ihren Datenträgern verwenden.