Starten Sie einen ZFS-RAIDZ-Zpool mit zwei Datenträgern und fügen Sie dann einen dritten hinzu.

13

Angenommen, ich habe zwei 2-TB-Festplatten und möchte meinen ersten ZFS-Zpool starten. Ist es möglich, eine RAIDZ mit nur diesen zwei Datenträgern zu erstellen, die mir 2 TB nutzbaren Speicherplatz bietet (wenn ich das richtig verstehe), und später eine weitere 2 TB-Festplatte hinzuzufügen, um die Gesamtsumme auf 4 TB nutzbaren Speicherplatz zu bringen? Habe ich Recht oder müssen zunächst drei Festplatten vorhanden sein?

Der Grund, den ich frage, ist, dass ich bereits ein 2-TB-Laufwerk verwende, das voller Dateien ist. Ich möchte zu einem zpool wechseln, möchte aber lieber zwei weitere 2-TB-Laufwerke kaufen, wenn ich kann. Soweit ich weiß, verhält sich RAIDZ ähnlich wie RAID5 (mit einigen großen Unterschieden, die ich kenne, aber in Bezug auf die Kapazität). RAID5 erfordert jedoch mehr als 3 Laufwerke. Ich habe mich gefragt, ob RAIDZ die gleichen Anforderungen hat.

Wenn ich muss, kann ich die drei Laufwerke kaufen und dort anfangen, später die vierte hinzufügen. Wenn ich aber mit zwei anfangen und auf drei wechseln könnte, würde ich 80 US-Dollar sparen.

Gemeinschaft
quelle

Antworten:

13

Eine Methode, die einige Leute verwenden, aber das wird nicht empfohlen:

  1. Erstellen Sie einen Pool mit 2 Laufwerken und einer Sparse-Datei (mit der richtigen virtuellen Größe, die den anderen Laufwerken entspricht), und schalten Sie die Sparse-Datei sofort offline. Dadurch wird ein herabgesetzter RAID-Z1-Pool mit zwei Laufwerken und ohne Redundanz erstellt.
  2. Kopieren Sie die Daten in den beeinträchtigten Pool.
  3. Ersetzen Sie die ausgelagerte Sparse-Datei durch die dritte Festplatte und Resilver.

Die Anzahl der "Geräte", mit denen ein vdev erstellt wird, ist nach der Erstellung permanent. Daher müssen Sie zum Zeitpunkt der Erstellung über drei "Datenträger" verfügen. Mit dieser Methode können Sie einen beeinträchtigten RAID-Z1-Pool erstellen und später die fehlende Redundanz wiederherstellen.

Diese Methode wird nicht empfohlen, da beim Kopieren und Fehlen des 3. Laufwerks keine Redundanz / Parität besteht. Aber es kann funktionieren.

Holger G
quelle
1
Danke für diese Antwort. Wir suchen nicht immer nach der empfohlenen Lösung. Manchmal suchen wir nach JEDER Lösung. Ein Link zu dem, was Sie erklären, wäre nett
jsaddwater
Leider kann ich keine 1-TB-Sparse-Datei auf einem 250-GB-Laufwerk erstellen. Wenn Sie also ein RAIDZ-Array mit 2 1-TB-Laufwerken und einer Sparse-Datei (10 GB) erstellen, wird das Array zu 3 x 10 GB. Nach dem Entfernen der Sparse-Datei konnte ich das Array nicht vergrößern, da ich die Daten vom dritten Laufwerk nicht auf ein kleines Array mit 3 x 10 GB kopieren konnte und das Array nicht im herabgesetzten Zustand vergrößert werden kann. Fang 22.
jsaddwater
6

Leider ist es im Moment nicht möglich :

Es ist nicht möglich, eine Festplatte als Spalte zu einem RAID-Z-, RAID-Z2- oder RAID-Z3-vdev hinzuzufügen. Diese Funktion hängt von der Funktion zum Umschreiben des Blockzeigers ab, die demnächst hinzugefügt wird. Man kann jedoch ein neues RAID-Z-vdev erstellen und es dem zpool hinzufügen.

RAID-Z1 funktioniert möglicherweise nur mit zwei Laufwerken, dies ist jedoch nicht sehr nützlich, wenn zusätzliche Laufwerke später nicht hinzugefügt werden können. RAID-Z (wie RAID 5) wird in Bezug auf den verfügbaren Speicherplatz umso effizienter, je mehr Laufwerke verwendet werden.

sblair
quelle
4
Hier sind wir drei Jahre später, und die Wikipedia-Seite sagt immer noch "bald hinzugefügt werden" ... :(
Icydog
2
@ Icedog sehr bald jetzt ;-)
jlliagre
Was ist mit jetzt? :)
black_puppydog
3

RAID-Z1 kann mit nur zwei Festplatten verwendet werden, es gibt jedoch keinen Vorteil gegenüber dem Spiegeln - es sei denn, Ihre beiden Festplatten haben unterschiedliche Sektorgrößen, sodass sie nicht gespiegelt werden können (z. B. eine neue 4K-Sektorplatte und eine ältere 512) Byte Festplatte).

Wie bereits erwähnt, wird das Hinzufügen eines Geräts zu einem RAID-Z nicht unterstützt. Wenn Sie einem vorhandenen RAID-Z eine Festplatte hinzufügen möchten, können Sie Ihre Daten nur an einer anderen Stelle sichern, den Pool zerstören und mit der hinzugefügten zusätzlichen Festplatte neu erstellen und dann Ihre Daten wiederherstellen.

jlliagre
quelle
3

Es ist nicht genug "Ruf" vorhanden, um einen Kommentar abzugeben. Geben Sie dies als separate Antwort ein

RE: Holger G Vorschlag

Ich bin damit einverstanden, dass dies NICHT sicher ist. Ich fand diesen Thread auf der Suche nach einer Möglichkeit, zu einem späteren Zeitpunkt von RAIDZ1 auf RAIDZ2 überzugehen, wenn ein zusätzliches Laufwerk erworben werden kann.

Holgers Vorschlag funktioniert für mich also hervorragend - erstelle ein RAIDZ2 mit einem Entwickler als Sparse-Datei, deaktiviere das Dateigerät und habe eine Weile effektiv RAIDZ1 und füge dann irgendwann ein echtes Gerät hinzu, um die Redundanz zu verdoppeln

Funktioniert auch für den Fall, dass das eine Laufwerk die Daten enthält, die in den neuen RAID kopiert werden sollen, wie dies beim OP der Fall ist.

Tjunkie
quelle
RAIDZ2 sind albern - die einzige Situation, in der die Konfiguration nützlich sein könnte, ist ein korrelierter Ausfall von zwei Laufwerken. Schützen Sie sich vor solchen Ausfällen, anstatt zwei Festplatten zu verwenden, indem Sie Festplatten mit gleicher Kapazität verschiedener Hersteller und / oder Modelle verwenden.
Mikhail T.
@MikhailT. - Obwohl es ein guter Rat ist, verschiedene Hersteller zu verwenden, ist es ein schrecklicher Rat, zu sagen, dass RaidZ2 albern ist. Ein Neuaufbau kann sehr wahrscheinlich ein anderes Laufwerk töten.
Antiduh
Bei einer Neuerstellung wird wahrscheinlich ein anderes Laufwerk beendet - nur wenn alle Laufwerke mit dem bereits ausgefallenen Laufwerk identisch sind und daher wahrscheinlich ein korrelierter Fehler auftritt. In diesem Fall hilft es auch nicht, zwei Laufwerke zu haben - wahrscheinlich fallen alle auf einmal aus. Wenn die zu erwartenden Laufwerksausfälle unabhängig voneinander auftreten , kann die Zuverlässigkeit nicht spürbar verbessert werden , wenn mehrere Festplatten der Redundanz geopfert werden .
Mikhail T.
0

Nur ein Punkt, um etwas Licht zu machen:

  • Wenn eine Festplatte ausfallen kann, ohne vorher zu wissen, wann sie ausfällt ... warum können nicht zwei gleichzeitig ausfallen? oder drei oder vier oder fünf, etc.?

Aber denken Sie an diese andere Situation:

  1. Eine Festplatte ist ausgefallen
  2. Sie setzen ein neues und lassen es sicherheitshalber "neu aufbauen"
  3. Während ein solcher "Neuaufbau" durchgeführt wurde (möglicherweise einige Stunden), fällt eine andere Festplatte aus

Du hast alles verloren !!! Dies ist der Hauptgrund dafür, dass ein gleichzeitiger Ausfall von zwei Festplatten toleriert wird.

Aber wenn Sie wirklich paranoid sind (wie ich), werden Sie nur Stripping verwenden, kein anderes RAID-Level.

Bin ich verrückt? Nein, natürlich ... es macht mir nichts aus, wenn eine Festplatte ausfällt und alle Daten verloren gehen! Ich werde wirklich nichts verlieren, nur weil ich wirklich paranoid bin.

Mein paranoides Schema:

  • ZFS mit Stripping (2x, 3x, 4x ... oder 10x Festplatten), nur um die maximale Bandbreite des Busses zu erreichen (SATA III, USB 3.1 Gen 2 usw.)
  • Und andere ähnliche fünf ZFS (ohne Strom, so kann nicht beschädigt werden)

So verwenden Sie alle diese ZFS:

  • Haben Sie nur zwei von ihnen gleichzeitig (nur um Änderungen zu synchronisieren) ... wie ein Master mit fünf Slaves

Paranoide Sichtweise:

  • Wenn ein ZFS ausfällt ... wie von einem Sturm getroffen, verbrannt, gestohlen usw. ... habe ich immer noch fünf Kopien mehr an verschiedenen Orten (Bank, Bunker, Internetwolke, Freundeshaus, Ferienhaus usw.)

Um einige von ihnen zu synchronisieren ... muss ich ein ZFS bei mir tragen und die Synchronisierung auf dem anderen physischen Ort / Land / etc ... durchführen, also verwende ich einen von Thoose Slaves.

Denken Sie, wenn ich über Festplatten auf einem ZFS spreche, kann auf einem anderen ZFS 3.1 Gen2 64GiB USB-Stick sein! Es ist nicht erforderlich, dass Größe, Typ usw. identisch sind.

Wirklich paranoide Sicht.

Für diejenigen, die nicht so paranoid sind, und die es unterstützen können, alle zu verlieren ... es gibt RaidZ-Levels ... ich ziehe es vor, mich selbst zu "spiegeln".

Ein weiterer Vorteil von do manual 'syncs' ist, dass Sie selbst versagen:

  • Sie haben ein hypotetisches, perfektes, nie versagendes ZFS-System, aber Sie entscheiden sich, eine Datei zu löschen ... einige Tage, nachdem Sie festgestellt haben, dass Sie die zu löschende Datei verpasst haben, und eine Datei, die Sie nicht löschen wollten (aus menschlichem Versehen). Sie haben kein Glück, es sei denn, Sie haben ein BackUp

Also ... noch einmal ... wenn Sie ein BackUp benötigen, warum nicht das ZFS mit maximaler Geschwindigkeit durch einfaches Striping beschleunigen? ... müssen Sie immer noch ein BackUp durchführen.

Nun, die Antwort kann lauten:

  • Systempartition für ein 24-Stunden-Online-System

Für Datenpartitionen sehe ich keine Notwendigkeit für RaidZ-Levels im Vergleich zu einem externen USB-ZFS-Klon, der zum Anschließen bereit ist, sobald das verwendete Haupt-ZFS ausfällt. Hängen Sie einfach den ZFS-Hauptpunkt aus und hängen Sie das andere gute ZFS ein. Erstellen Sie dann mit einem anderen Computer das beschädigte Offline-ZFS neu.

Wenn Sie zwei Computer haben, haben Sie das, was Sie brauchen, um 7x24h mit nur wenigen Sekunden (Boot-Zeit) Ausfallzeit.

Für Heimanwender, die möchten, dass ihre Fotos sicher sind ... verwenden Sie mehr als zwei ZFS und lassen Sie mindestens einen oder zwei von ihnen niemals gleichzeitig mit dem Rest verbinden. Paranoid? Überhaupt nicht.

Ich lerne nur auf die harte Tour, wie Dinge wirklich schief gehen können!

Nur um zu klären ... was passiert ...

  1. Ich habe den PC normal benutzt
  2. Die Daten fielen aus
  3. Ich nahm die Festplatten heraus und platzierte die, die in Ordnung waren
  4. Daten auf ihnen wurden auch in weniger als zehn Sekunden beschädigt
  5. Ich habe alle meine Daten verloren (nicht vollständig, da ich ein bisschen paranoid war und BackUp auf DVD-Medien habe)

Das Problem lag wirklich im Controller (auf dem Mainboard integriert), nicht auf den Festplatten. Es wurden Daten bei Lese- / Schreibvorgängen geändert.

Seitdem ... befinden sich meine Daten nicht mehr auf internen SATA-Festplatten ... nur noch auf externen USB 3.1 Gen 2-Gehäusen, die ich ein- und ausstecken kann (jede Festplatte in einem eigenen Gehäuse) ... und wenn eine ausfällt ... Ich teste alle Dinge, bevor ich etwas mit realen Daten an diesen PC anschließe ... RAM, Prozessor, USB-Anschluss usw. ... mit einem Dummy-USB-Gehäuse, um Muster zu testen ... wenn das in Ordnung ist ... dann teste ich das ausgefallene Festplatte ... ob es in einem anderen Gehäuse funktioniert oder nicht, auf einem anderen PC oder nicht, etc ... um wirklich zu wissen, wer den Fehler verursacht ... wirklich paranoid, ich weiß!

Aber aus Erfahrung lernen:

  • Niemals darauf vertrauen, dass ein Festplattenfehler von der Festplatte selbst verursacht wird ... testen Sie ihn ... es kann sich um den Controller, die Kabel, die Stromversorgung usw. handeln.
  • Oder schlimmstenfalls könnte es der RAM sein

Apropos RAM, ich hatte einen nicht so alten PC (BIOS-basierter 64-Bit-Prozessor), dass wenn (denke an drei identische RAM-Module, nenne sie A, B und C):

  • Ich habe A auf den PC gelegt. Funktioniert perfekt (egal auf welchem ​​der vier Slots).
  • ich setze B auf den PC funktioniert einwandfrei (egal auf welchen der vier Slots)
  • Ich setze C auf den PC funktioniert einwandfrei (aber nur auf einem der vier Slots, auf dem anderen Baum führt es zu vielen Fehlern, BSODs usw.)
  • Ich stelle A & B, es verursacht eine Menge Fehler, BSODs usw
  • Ich habe A & C auf den PC gestellt. Funktioniert perfekt (egal auf welchem ​​der vier Slots).
  • Ich habe B & C auf den PC gebracht. Funktioniert perfekt (egal auf welchem ​​der vier Slots).
  • Ich habe A & B & C auf den PC gelegt, es verursacht eine Menge Fehler, BSODs usw

Wenn ich solche Module auf einem anderen PC teste, funktionieren alle sehr gut, kein Problem, kein Defekt usw.

Dinge können wirklich verrückt werden ... und wenn Sie nicht alle Kombinationen testen, können Sie nicht wissen, was ausfällt ... ja wirklich paranoid, alle Kombinationen von drei RAM-Modulen auf vier Steckplätzen zu testen ... aber was ich entdeckt hatte, ließ mich blind ... das fehlgeschlagene Modul funktioniert perfekt, wenn ein anderes vorhanden ist, aber nicht, wenn zwei weitere vorhanden sind ... ja, ich habe es auch mit drei weiteren getestet und bin durchgefallen!

Oh, ja, alle gleichen Marken, Sorten, etc ... identisch ... der einzige Unterschied ist ein Aufkleber, den ich für solche Marken auf sie aufgeklebt habe! Und ja, zur gleichen Zeit gekauft, kamen sie auf den gleichen herstellerverschlossenen Kunststoffkoffer.

Manchmal kann ein ZFS-Fehler durch RAM verursacht werden. Unabhängig davon, wie viele RaidZ-Ebenen Sie haben, können Sie alle verlieren.

Oh, fast vergessen ... ECC-Speicher verwenden, sonst kann ZFS nicht vertraut werden! Verwenden Sie keine Festplatte mit internem Cache, internem RAID usw., es sei denn, sie wurde für Schreibvorgänge in der gesendeten Reihenfolge (oder für alle bei einem Stromausfall) entwickelt.

Ich benutze nur Festplatten mit genügend interner Energiekapazität, um den gesamten Cache nach einem plötzlichen Stromausfall auf die Platten zu schreiben!

All diese Punkte / Schwächen lassen mich zu einem Schluss kommen:

  • Am besten beschleunige die Dinge und mache deine eigenen BackUPs
  • Haben Sie einige 100% Kopien Offline und ohne Strom
  • Halten Sie etwas bereit, um Strom zu erhalten und das ausgefallene Teil auszutauschen

Aus diesem Grund habe ich> 2 PCs mit> 10 USB-Festplatten (5 ZFS-Kopien * 3 Festplatten, jeweils abisoliert) ... ich habe das Beste von beidem ... sicher und schnell! Aber ich bekomme den schlimmsten Teil ... muss alle von Zeit zu Zeit synchronisieren ... aber Datensicherheit ist der wichtigste Teil! Ich möchte auch nicht viel auf solche Synchronisierungen warten (auch bekannt als Striping kommt in Arbeit).

Und wenn ein 3 * -HDD-Streifen ausfällt ... kann ich testen, welcher der drei für einige Stunden / Tage / Wochen ausgefallen ist ... während ich eine andere ZFS-Kopie online habe und arbeite ... nachdem ich sicher bin, dass der andere ausfällt zwei sind OK, ich kaufe ein neues (vielleicht 30 bis 45 Tage vor Ankunft) und erstelle ein solches 3 * HDDs ZFS neu und lege Daten darauf, um die fünfte Kopie wieder zu haben.

Gar nicht billig! Aber natürlich nicht als Hauptpreis für ein Rechenzentrum ... und ohne Stromrechnung (die meisten Festplatten sind stromlos, nur 3 oder 6 gleichzeitig).

Ich hoffe, jemand findet die Idee nützlich (ich benutze sie täglich).

Claudio
quelle