Btrfs über Mdadm Raid6?

4034
Benjamin Dubois

Ich habe ein Btrfs-RAID-6-Array, und ich habe derzeit genügend freien Speicherplatz, um es neu zu erstellen, um den Datenverlustfehler zu vermeiden, der derzeit das Dateisystem mit diesem RAID-Level betrifft.

Meine Idee ist, das Array mit mdadm neu zu erstellen und das md-Gerät mit btrfs zu formatieren. Ich habe aber ein paar Fragen:

  • ist btrfs über mdadm raid6 zuverlässig?
  • funktionieren der Bitrot-Schutz und die Momentaufnahmen weiterhin?
  • Gibt es einige Nachteile bei diesem Setup?
  • gibt es bessere möglichkeiten?

Danke im Voraus !

5

3 Antworten auf die Frage

5
Deltik

Im Jahr 2016 sollte Btrfs RAID-6 nicht verwendet werden .

Auf der Btrfs- Statusseite können Sie erkennen, dass RAID56 als instabil gilt. Die Schreiblücke ist immer noch vorhanden und die Parität wird nicht geprüft. Durch das Scrubbing werden Daten überprüft, jedoch keine Datenverschlechterung repariert.

Um Ihre Fragen zu beantworten:

ist btrfs über mdadm raid6 zuverlässig?

Sie möchten, dass sich ein Btrfs-Volume auf md RAID-6 befindet, was bedeutet, dass Btrfs das RAID nicht kennen. Dies ist so zuverlässig wie ein Dateisystem, das als Btrfs formatiert ist. Hierbei handelt es sich standardmäßig um eine duplizierte Kopie der Metadaten und nur um eine einzige Kopie Ihrer Daten.

funktionieren der Bitrot-Schutz und die Momentaufnahmen weiterhin?

Mit Ihrem vorgeschlagenen Setup erkennt Btrfs verrottete Bits, kann diese jedoch nicht beheben, da nur eine Kopie Ihrer Daten vorhanden ist. Wenn etwas mit Ihrem MD-RAID-6-Array passieren würde, würden Sie Datenverlust erwarten.

Momentaufnahmen funktionieren jedoch weiterhin, aber auch ohne Reparaturen während des Schrubbens.

Gibt es einige Nachteile bei diesem Setup?

Sie vertrauen darauf, dass md Ihre Daten intakt hält, aber md weiß nicht, was Ihre Daten sind. Dies ist die Aufgabe von Btrfs. Btrfs können eine Inkonsistenz auf md-Ebene nicht reparieren.

Hier ist mein persönliches Beispiel, was passieren würde, wenn mit md RAID-6 etwas schief gehen würde.

gibt es bessere möglichkeiten?

Wenn Sie nach einer Alternative zu BTRFS RAID-6 suchen, sollten Sie ZFS RAID-Z2 in Betracht ziehen, das eine zuverlässige Implementierung von RAID-6 bietet, die die Integrität überprüft und Ihre Daten sowie Snapshots repariert.

Was die Nachteile von ZFS RAID-Z2 angeht, kann es nicht verkleinert oder umgeformt werden. Die Größenänderung sollte nur für eine Festplatte durchgeführt werden, was sehr lange dauern kann.

Siehe auch: Überblick über ZFS

Ich weiß, dass btrfs raid5 / 6 nicht verwendet werden sollte, deshalb möchte ich es ersetzen. für zfs, was ich in der Dokumentation sehe, ist es nur in sid verfügbar. Was ist mit Btrfs über Mdadm? Benjamin Dubois vor 8 Jahren 1
@ BenjaminDubois: Ich habe meine Antwort überarbeitet, um Ihre Absichten zu reflektieren. Ich denke, die Dokumentation zu ZFS unter Linux wird für Debian immer noch aktualisiert. [ZFS unter Linux wird von Debian jessie unterstützt.] (Https://www.howtoforge.com/tutorial/how-to-install-and-configure-zfs-on-debian-8-jessie/) Deltik vor 8 Jahren 0
Danke für diese ausführliche Antwort. Ich werde einen Blick auf dieses ZFS-Tutorial werfen. Jetzt muss ich die Struktur meines Arrays überdenken, da es in naher Zukunft wachsen wird. Benjamin Dubois vor 8 Jahren 0
0
totedati

Nun, ein Raid1-Btrfs auf Raid6-Mdadm in zwei Teile kann eine Lösung sein. Sie können jede Festplatte in zwei gleiche Partitionen aufteilen, eine Partition pro Festplatte in 6 HDD-Sets in zwei Raid6-Mdadm-Volumes gruppieren und dann aus diesen beiden Raid6-Mdadm-Volumes eine Raid1-Btrfs erstellen

0
Jeff

Synology verwendet Btrfs, und an ihrem suchen Wissensdatenbank, sieht es aus wie sie mdadm für RAID verwenden. Wie Deltic in seiner Antwort erwähnt, wusste btrfs nichts über das RAID-Setup und konnte sich nicht davon erholen, und ich ermutige die Leute, den Links in seinen Kommentaren zu folgen, was mdadm ist und was es nicht ist. Ich bin jedoch der Meinung, dass Sie mdadm RAID 5 oder 6 verwenden sollten, um nach einem Laufwerksausfall eine Wiederherstellung durchführen zu können.