Hinzufügen von Laufwerken zu einem RAID 10-Array

19291
stuartc

Wie würde ich ein RAID10-Array mit mdadm anbauen?

Natürlich müsste ich jeweils 2 Laufwerke hinzufügen, oder müssten es 4 Laufwerke sein?

Ich habe das Gefühl, es ist nur eine schlechte Idee.

Oder wäre es nur klüger, sich für RAID5 zu entscheiden?

10
Wenn jemand mich fragt, ob er RAID 10 benötigt, bedeutet dies normalerweise, dass er es nicht benötigt. Warum nicht Raid 5 oder Raid 6? surfasb vor 13 Jahren 0
Ich habe auf eine bessere Schreibleistung als RAID5 gehofft. Aber ich denke, das Fehlen von Flexibilitätsregeln führt dazu. stuartc vor 13 Jahren 0
Im Allgemeinen bietet RAID 5/6 eine bessere Schreibleistung als RAID 10/01. Weil Sie Schreibvorgänge auf alle Laufwerke statt nur auf die Hälfte der Laufwerke verteilen. surfasb vor 13 Jahren 0
@surfasb "RAID 5/6 bietet eine bessere Schreibleistung als RAID 10" Nein, das wird nicht der Fall, da das Verteilen der Schreibvorgänge über mehrere Laufwerke mehr als durch [die Schreibstrafe von RAID5 / 6] überbewertet wird (http: // rickardnobel.se/raid-5-write-penalty/) Jack Douglas vor 10 Jahren 5
@ JackDouglas: Sehr gute Informationen. surfasb vor 10 Jahren 0
Sie können RAID10 jetzt mit mdadm umformen. Getestet mit mdadm-4.0-5 in Fedora 27. Nick vor 6 Jahren 0

6 Antworten auf die Frage

11
Cieniek

Für das Wachstum von RAID 10 benötigen Sie mdadm in Version min. 3.3 und Kernelversion min 3.5. Sie benötigen auch eine gerade Anzahl von Datenträgern - ungepaarte Festplatten können nur als Ersatzlaufwerk arbeiten oder schließlich in einen verschlechterten Modus übergehen (nicht getestet).

Hier ist ein Beispiel für das Wachstum von RAID 10 von 4 Laufwerken auf 6 mit mdadm 3.3-2ubuntu2 @ Linux 4.2.0-10-generic. Mit ext4-Daten getestet, Dateisystem wurde nicht gemountet, ext4 wurde nach dem RAID-Wachstum ohne Probleme erweitert.

~$ cat /proc/mdstat md126 : active raid10 sdd1[1] sdc1[0] sdf1[3] sde1[2] 976428032 blocks super 1.2 512K chunks 2 near-copies [4/4] [UUUU] bitmap: 0/8 pages [0KB], 65536KB chunk  ~$ sudo mdadm /dev/md126 --add /dev/sdi1 /dev/sdj1 mdadm: added /dev/sdi1 mdadm: added /dev/sdj1 ~$ sudo mdadm --grow /dev/md126 --raid-devices=6  ~$ cat /proc/mdstat md126 : active raid10 sdj1[5] sdi1[4] sdd1[1] sdc1[0] sdf1[3] sde1[2] 1464642048 blocks super 1.2 512K chunks 2 near-copies [6/6] [UUUUUU] bitmap: 0/6 pages [0KB], 131072KB chunk 
9
edong23

Ich weiß, dass das über ein Jahr alt ist, aber jemand könnte das hilfreich finden ...

Sie können ein RAID-10-Array erweitern, jedoch nicht so, wie Sie es wünschen. Sie müssten mehrere Raid-Ebenen verschachteln. Dies kann mit mdadm auf zwei Laufwerken in RAID 10 durchgeführt werden, was je nach Layout eine ziemlich gute Leistung darstellt. Sie müssten jedoch mehrere 2 Festplatten-RAID 10-Arrays erstellen und diese dann an den logischen Knoten anschließen. Fügen Sie dann weitere hinzu, und streifen Sie darüber. Wenn dies Ihr Anwendungsfall ist (Sie müssen viel erweitern), ist es ratsam, ein Paritätsarray zu verwenden, das vergrößert werden kann.

Dies sind die Einschränkungen, die Sie mit RAID 10 erhalten, während Sie insgesamt eine bessere Lese- / Schreibleistung erzielen. Und eine Klarstellung, Raid 5/6 bedeutet absolut nicht "Bessere Schreibleistung im Allgemeinen ...". RAID 5/6 hat seine eigenen Vor- / Nachteile wie RAID 10, aber die Schreibleistung ist kein Vorteil für RAID 5/6.

Sie haben auch nicht die Größe Ihrer Laufwerke angegeben, aber passen Sie auf neue große Laufwerke auf RAID 5 auf. Wenn Sie jedoch vorsichtig sind, können Sie sich von einem nicht behebbaren Lesefehler erholen, Sie riskieren jedoch Ausfallzeiten und die Möglichkeit, sich überhaupt nicht wiederherstellen zu können.

--edit zum Hinzufügen von Informationen - Verwenden Sie Tools wie hdparm (hdparm -i) und lshw, um die Seriennummern zusammen mit dem Gerätenamen (/ dev / sda) zu erhalten, wenn Sie einen Fehler haben. Dadurch wird sichergestellt, dass Sie das richtige Gerät entfernen, wenn Sie es ersetzen. Pfeil nach oben zu Travis 'Kommentar, da er sehr korrekt ist und ein schönes Layout hat, aber wie üblich die Vor- und Nachteile jeder Lösung.

9
Jack Douglas

Einige großartige Neuigkeiten aus der Veröffentlichung von mdadm 3.3:

Dies ist eine wichtige neue Version, also sei nicht überrascht, wenn es ein paar Probleme gibt ...

Einige Highlights sind:

...

  • RAID10-Arrays können umgeformt werden, um die Anzahl der Geräte zu ändern, die Chunk-Größe zu ändern oder das Layout zwischen "Near" und "Offset" zu ändern. Dies ändert immer data_offset und wird fehlschlagen, wenn kein Platz für data_offset zum Verschieben vorhanden ist.

...

Laut dieser Antwort zu U & L benötigen Sie mindestens Linux 3.5.

Ich experimentierte mit mdadm raid10 und mdadm v3.3.2 mit gemischten Ergebnissen. Ich stellte fest, dass ich kein Raid10 erstellen konnte, das ich mit einer früheren Version von Mdadm erstellt hatte. Ein mit v3.3 erstelltes raid10 konnte ich umformen / wachsen lassen. Wenn Sie also in der Lage sind, ein Raid10 anzubauen (aber nicht), ist es möglicherweise eine gute Idee, das neue Raid10 mit dem neuesten mdadm zu erstellen. adalle vor 9 Jahren 3
6
Travis

I know it's more work and could get confusing, but you can always stripe multiple mirrors.

For example I just setup a 4 drive raid 10 array and latter want to add another 4 drive raid 10 array. Just use mdadm to create a new raid 10 array on the new drives. You could then either create another raid 0 array using the two existing raid devices. However I would use the features of lvm to create the stripe, thus keeping mdadm configs and /dev/md devices in an easy to understand state. Either method would work, and there are probably more but that's what I could do off the top of my head.

Eine großartige Möglichkeit, ein wachsendes Dataset zu verwalten, viel einfacher als die meisten anderen. Tricky Part verfolgt, welche Laufwerke in welchem ​​Spiegel ausgefallen sind. Aber ein toller Vorschlag! stuartc vor 12 Jahren 0
4
Stingray

Das letzte Mal, als ich nachgesehen habe, lässt mdadm Sie nicht zulassen. Ich habe mir jetzt die Manpage von mdadm angesehen und sagt noch immer: Derzeit unterstützte Wachstumsoptionen, einschließlich der Änderung der aktiven Größe von Komponentengeräten und der Anzahl der aktiven Geräte in den RAID-Stufen 1/4/5/6, Ändern der RAID-Stufe zwischen 1, 5, und 6, Ändern der Chunk-Größe und des Layouts für RAID5 und RAID5 sowie Hinzufügen oder Entfernen einer Write-Intent-Bitmap.

Vielen Dank! Ich schätze, auch ein weiterer guter Hinweis, dass dies nicht schnell passieren wird. Ich kann auch keine Hardware-RAID-Karte finden, die dies tut. RAID5 ist es .. stuartc vor 13 Jahren 0
RAID5 kann bei manchen Workloads schmerzhaft langsam sein. Was hast du vor zu machen? Stingray vor 13 Jahren 2
Meistens nur das Speichern von Medien, aber auch das Bereitstellen einer NFS-Freigabe für die Fotobearbeitung, so hofften einige gute Schreibgeschwindigkeiten sowie Lesevorgänge. stuartc vor 13 Jahren 0
4
drumfire

Sie können kein RAID10-Array vergrößern, das stimmt. Sie können jedoch mit zwei Laufwerken beginnen (auf Kosten der Redundanz zu diesem Zeitpunkt) und später zwei weitere hinzufügen. Ich habe diese Methode verwendet, um von einem RAID5-Array mit vier Laufwerken zu RAID10 mit vier Laufwerken zu wechseln.

Ich habe RAID5 abgebaut und eine Disc aus dem Array entfernt. Dies gab mir zwei Discs, die frei verwendet werden konnten. Dann erstellte ich ein RAID10-Array mit etwas in der Richtung von "mdadm --create --level 10 / dev / md0 / dev / sda1 missing / dev / sdc1 missing". Dies war genug, um das Array zu starten.

Nachdem ich die Daten von dem degradierten RAID5-Array auf das RAID10-Array verschoben hatte, fügte ich dem RAID10-Array zwei der RAID5-Disks hinzu und fügte die zusätzlichen als Ersatz hinzu.

Es ist wahrscheinlich eine gute Idee, wenn jemand, der mehr Wissen hat als ich, über die möglichen Auswirkungen auf die Leistung sprechen kann. Der Hauptgrund für meinen Beitrag ist jedoch, zu zeigen, dass es möglich ist, mit RAID10 und zwei Laufwerken zu beginnen.

Hinweis: Lesen Sie den folgenden Forumsbeitrag, in dem Sie gefragt werden, ob die Reihenfolge der Festplatten in mdadm von Bedeutung ist .