ZFS-RAIDZ-Parität

1075

Ich baue eine OpenSolaris-Box, um zu versuchen, ZFS und RAIDZ zu verwenden. Ich beginne einfach mit dem Betriebssystem auf einem Laufwerk und möchte alle meine Daten auf dem RAIDZ-Volume speichern. Ich bin ein bisschen verwirrt, dass RAIDZ mit Parieren umgehen kann. Ich habe einen Pool mit dem Befehl "zpool create pool_1 raidz drive1 drive2 drive3" erstellt, und wenn ich eine Zpool-Liste erstellt habe, wird die verfügbare Größe der drei Laufwerke angezeigt. Ich denke, wenn die Parität automatisch berechnet wurde, sollte sie die Größe von 1 Laufwerk haben. Also habe ich diesen Pool gelöscht und einen mit "zpool create pool_1 raidz drive1 drive2 spare drive3" erstellt, und die verfügbare Größe war das, was ich erwartet hatte. Für mich ist eine Hotspare keine Parität, obwohl es sich um eine Festplatte handelt, die bereit ist, die Parität auszufüllen, falls Ihr Überfall ein Laufwerk verliert. Ich mache nicht

Jede Erklärung dazu wäre sehr dankbar.

2
Ich glaube, ich habe es herausgefunden. Als ich mit dem Erstellen meines Volumes fortfuhr und zfs listete, zeigte der Mount für pool_1 nur die Größe einer Festplatte. Ich denke, ich hatte ursprünglich Recht, dass die Parität genau dort war. Die Größe des Pools hat mich nur verwirrt. Ich habe den Pool mit allen drei Festplatten und keinen Ersatzteilen neu erstellt. Die Poolgröße beträgt 5.44T. In der ZFS-Liste werden jedoch nur 3.56T angezeigt. Jeder möchte bestätigen, dass dies richtig ist, ich würde es schätzen :) vor 13 Jahren 0
Dies ist eine häufige Verwirrung mit ZFS. Der Befehl zpool zeigt die Gesamtkapazität der enthaltenen Laufwerke an. Der Befehl zfs zeigt die effektive Kapazität an. Bekommt die ganze Zeit Leute. mfe vor 13 Jahren 0

2 Antworten auf die Frage

1
Majenko

Die "Poolgröße" eines RAID-Z ist der gesamte für den Pool verfügbare physische Speicherplatz - nicht der Speicherplatz für ein Dateisystem.

Dazu sollten Sie den Befehl "zfs list" prüfen.

# zpool list NAME SIZE ALLOC FREE CAP DEDUP HEALTH ALTROOT storage 5.32T 2.23T 3.09T 41% 1.00x ONLINE -  # zfs list NAME USED AVAIL REFER MOUNTPOINT storage 1.49T 2.00T 38.6K /storage 

Wie Sie zu Recht vermuten, ist RAID-Z (oder RAID-Z1) (N-1) * - Speicherplatz und RAID-Z2 (N-2) * - Speicherplatz, wobei N die Anzahl der Laufwerke und die Größe ist Kapazität eines Laufwerks.

Im Gegensatz zu RAID-5 verwendet RAID-Z nicht ein bestimmtes Laufwerk für die Parität, sondern dreht die Parität um verschiedene Festplatten. Dies macht das System effizienter und verhindert, dass sich die Paritätsfestplatte so schnell abnutzt:

In diesem Beispiel dwhandelt es sich um eine Datenschreiboperation und pwum eine Paritätsschreiboperation. D3 ist die Paritätsscheibe in der RAID 5-Anordnung

Überfall 5:

D1 D2 D3 dw pw dw pw dw pw dw pw  dw pw dw pw dw pw 

Sie können sehen, wie jeder Schreibvorgang auf Datenträger 1 oder Datenträger 2 zu einem Schreibvorgang auf Datenträger 3 führt.

Raid-Z:

D1 D2 D3 dw pw dw pw pw dw pw dw dw pw pw dw pw dw  

Sie können ein gleichmäßigeres Plattenschreibmuster sehen.

Der vdev des spareZpool ist eine reservierte Festplatte, die im laufenden Betrieb gegen alle anderen Festplatten ausgetauscht werden kann - ein Hot-Spare. Diese Diskette wird erst verwendet, wenn Sie es wissen.

RAID-Z schreibt bei jedem Schreibvorgang auf ALLE Geräte im Pool, nicht auf einige, wie oben gezeigt. Die Größe des Streifens wird dynamisch auf der Grundlage der zu schreibenden Datenmenge bestimmt, der Streifen, einschließlich Paritätsbit (s), wird jedoch über alle Geräte geschrieben. Yedric vor 11 Jahren 0
1
Andrew

RAID 4 verwendet ein dediziertes Paritätslaufwerk. RAID 5 streift die Parität.