Low-End-Hardware-RAID vs Software-RAID [geschlossen]

16

Ich möchte ein Low-End-6-TB-RAID-1-Archiv auf einem alten PC erstellen.

MB: Intel d2500hn 64bit
CPU: Intel Atom D2500
RAM: 4GB DDR3 533 MHz
PSU: Chinese 500W
NO GPU
1x Ethernet 1Gbps
2x SATA2 ports
1x PCI port
4x USB 2.0

Ich möchte ein RAID1-Archiv unter Linux erstellen (CentOS 7, denke ich, dann installiere ich alles, was ich brauche, ich denke ownCloud oder ähnliches) und verwende es in meinem lokalen Heimnetzwerk.

Ist es besser ein 10-20 $ RAID-PCI-Controller oder ein Software-RAID?

Wenn Software Raid besser ist, welche soll ich unter CentOS wählen? Ist es besser, das System auf einen externen USB-Stick zu stecken und 2 Festplatten an den Anschlüssen zu verwenden, oder sollte ich das System auf eine Festplatte stecken und dann RAID erstellen?

Wenn ich ein RAID 5 mit 3 Festplatten ausführen würde, sollte ich Hardware-RAID-PCI oder einen einfachen PCI-SATA-Anschluss wählen?

Igor Z.
quelle
11
Bitte mach kein R5, es ist gefährlich
Chopper3
1
Wurde diese Frage nicht schon einmal beantwortet? ZB serverfault.com/questions/214/raid-software-vs-hardware
Tommiie
3
Dies ist eine Frage zu Meinungen. Es gibt viele Leute, die sich mit Software befassen, und viele, die sich mit Hardware befassen. Meiner Meinung nach kommt es darauf an. Das Linux-Software-RAID ist gut etabliert und hat sich immer wieder bewährt, verursacht jedoch einen sehr geringen Overhead (der insbesondere bei RAID 1 vernachlässigbar ist). RAID 5 sollte nicht verwendet werden, wenn Sie Ihre Daten aufgrund von URE bewerten (siehe youtube.com/watch?v=A2OxG2UjiV4). Faustregel: Wenn Sie RAID 1 verwenden und die Option zwischen billigem Hardware-RAID und Software-RAID haben, entscheiden Sie sich für Software .
Broco
3
@Tom Diese Antworten sind ~ 9y alt und die HW / SW-RAID-Angelegenheit hat sich meiner Meinung nach ziemlich verändert. OP: In Ihrem Fall würde ich die Festplatten in Software-RAID1 einschließlich der CentOS-Installation spiegeln.
Lenniey
2
Die Leute behaupten immer, dass Hardware-RAID die CPU-Auslastung einspart. Die zum Kopieren von Daten erforderliche CPU-Auslastung ist jedoch nahezu Null. Ich kann mir nicht vorstellen, dass die CPU-Auslastung beim Software-RAID ein Problem darstellt.
USR

Antworten:

40

Eine 10-20 $ "Hardware" RAID-Karte ist nichts anderes als ein undurchsichtiger, binärer Treiber-Blob, auf dem eine reine RAID-Implementierung ausgeführt wird. Halte dich fern davon.

Eine 200-Dollar-RAID-Karte bietet ordnungsgemäße Hardware-Unterstützung (dh ein RoC, auf dem ein anderes undurchsichtiges, binäres Blob ausgeführt wird, das besser ist und nicht auf der Haupt-Host-CPU ausgeführt wird). Ich schlage vor, sich von diesen Karten fernzuhalten, da sie keinen Rückschreib-Cache haben und keinen greifbaren Vorteil gegenüber einer Software-RAID-Implementierung bieten.

Eine 300/400-Dollar-RAID-Karte mit einem durch Stromausfall geschützten Rückschreib-Cache ist einen Kauf wert, aber nicht für kleine Atom-basierte PC / NAS.

Kurz gesagt: Ich empfehle dringend , Linux-Software-RAID zu verwenden. Eine weitere Option, die ernsthaft in Betracht gezogen werden sollte, ist eine gespiegelte ZFS-Konfiguration, die jedoch bei einer Atom-CPU und nur 4 GB RAM keine hohe Leistung erwarten lässt.

Weitere Informationen finden Sie hier

Shodanshok
quelle
Danke, ich werde mdadm benutzen, raten sie mir, das system auf einen externen usb und zwei festplatten zu legen, die als speicher dienen, oder sollte ich das system installieren und dann das raid erstellen, das die festplatte hinzufügt? Vielen Dank
Igor Z.
@ IgorZ. Mir ist nicht klar, wie Sie Ihre Laufwerke anschließen möchten. Nach Ihrer Einschätzung haben Sie anscheinend nur 2 SATA-Anschlüsse, sodass ich das Betriebssystem auf einer USB-Festplatte oder einem Flash-Laufwerk installieren würde.
Shodanshok
RoC? SoC wäre ein System-on-a-Chip, dh "ein kleiner Computer", aber was ist ein RoC?
ilkkachu
POC. Konzeptioneller Beweiß?
BaronSamedi1958
1
RoC bedeutet R Hilfe o n C hip. Grundsätzlich ein Marketingbegriff zur Kennzeichnung eines eingebetteten Systems, auf dem ein RAID-bezogenes Betriebssystem mit Hardware-Offload für die Paritätsberechnung ausgeführt wird.
Shodanshok
11

Gehen Sie zu ZFS. Ernsthaft. Es ist so viel besser als Hardware-RAID, und der Grund ist einfach: Es verwendet Streifen mit variabler Größe, sodass Paritäts-RAID-Modi (Z1 & Z2, RAID5 & RAID6) eine Leistung auf RAID10-Niveau erbringen, die immer noch äußerst kosteneffizient ist. + Sie können einen Flash-Cache (ZIL, L2ARC usw.) verwenden, auf dem mehrere dedizierte PCIe-Lanes ausgeführt werden.

https://storagemojo.com/2006/08/15/zfs-performance-versus-hardware-raid/

Es gibt ZFS unter Linux, ZoL.

https://zfsonlinux.org/

BaronSamedi1958
quelle
3
Normalerweise würde ich hier voll und ganz zustimmen, aber er hat nur 4 GB RAM, so dass ZFS möglicherweise nicht optimal funktioniert ...
Josh
1
+1. Jedenfalls ist ZRAID im Vergleich zu Mirroring + Striping für niedrige IOPS bekannt: Im Grunde hat jedes vdev der obersten Ebene die IOPS-Leistung einer einzelnen Festplatte. Sehen Sie hier
shodanshok
Als ich das letzte Mal nachgesehen habe, benötigte ZFS 1 GB RAM pro TB RAID, sodass das OP nicht über genügend RAM verfügt. Hat sich das geändert?
Mark
2
Einverstanden. ZFS ist die beste Wahl für die Archivdaten. Die Leistung hängt immer von der Stripe-Größe und der Größe der Blöcke ab, die auf die Festplatte geschrieben werden. Die Berechnung ist also kompliziert, die Leistung lässt sich jedoch sehr einfach optimieren :) Außerdem wurde ZFS nicht für Virtualisierung oder intensive E / A-Vorgänge entwickelt Arbeitsbelastung.
Strepsils
1
2Mark: Das ist deduplizierte Kapazität.
BaronSamedi1958
3

Hier ist ein weiteres Argument für Software auf einem billigen System.

Sachen gehen kaputt, Sie wissen, dass Sie aus diesem Grund RAID verwenden, aber RAID-Controller gehen auch kaputt, ebenso RAM, Prozessor, Netzteil und alles andere, einschließlich Software. Bei den meisten Fehlern ist es einfach genug, die beschädigte Komponente durch eine gleichwertige oder bessere zu ersetzen. Eine 100-W-Stromversorgung ausblasen, eine 150-W-Stromversorgung nehmen und loslegen. Ähnliches gilt für die meisten Komponenten. Bei einem Hardware-RAID gibt es jetzt drei Ausnahmen für dieses Muster: RAID-Controller, Festplatten und Motherboard (oder andere Upstream-Geräte, wenn keine Erweiterungskarte vorhanden ist).

Schauen wir uns die Schlachtzugskarte an. Die meisten Schlachtzugskarten sind schlecht dokumentiert und inkompatibel. Sie können eine Karte der Firma xyz nicht durch eine von abc ersetzen, da diese Daten unterschiedlich speichern (vorausgesetzt, Sie können herausfinden, von wem die Karte stammt). Die Lösung besteht darin, eine Ersatzkarte zu haben, die exakt mit der Produktionskarte identisch ist.

Festplatten sind nicht so schlecht wie RAID-Karten, aber da RAID-Karten physische Anschlüsse zu den Laufwerken haben, müssen Sie kompatible Laufwerke verwenden, und erheblich größere Laufwerke können Probleme verursachen. Bei der Bestellung von Ersatzlaufwerken ist besondere Sorgfalt geboten.

Motherboards sind in der Regel schwieriger als Laufwerke, aber weniger als RAID-Karten. In den meisten Fällen reicht es aus, nur zu überprüfen, ob kompatible Steckplätze verfügbar sind, aber bootfähige Raids sind möglicherweise kein Ende der Kopfschmerzen. Die Möglichkeit, dieses Problem zu vermeiden, sind externe Gehäuse, dies ist jedoch nicht billig.

All diese Probleme können gelöst werden, indem man Geld auf das Problem wirft, aber für ein billiges System ist dies nicht wünschenswert. Auf der anderen Seite sind Software-Raids immun gegen die meisten (aber nicht alle) dieser Probleme, da sie jedes Block-Gerät verwenden können.

Der einzige Nachteil eines Software-Raids auf einem billigen System ist das Booten. Soweit ich weiß, ist der einzige Bootloader, der raid unterstützt, grub und unterstützt nur raid 1, was bedeutet, dass Ihr / boot auf raid 1 gespeichert werden muss, was kein Problem ist, solange Sie nur raid 1 und nur ein kleines Problem in verwenden die meisten anderen Fälle. Grub selbst (insbesondere der Bootblock der ersten Stufe) kann jedoch nicht auf dem Schlachtzug gespeichert werden. Dies kann verwaltet werden, indem eine Ersatzkopie auf den anderen Laufwerken abgelegt wird.

hildred
quelle
Ich habe mein bootfähiges RAID 1 so eingerichtet, dass /bootauf jeder eine Partition und auf jeder eine Datenpartition für erstellt wurde /(anstatt die gesamte Festplatte dem Array zuzuweisen). Solange Sie auf jedem Laufwerk eine separate Startpartition erstellen und auf jedem Laufwerk ausführen grub-install, sollten alle bootfähig sein und md sollte in der Lage sein, das herabgesetzte Array bereitzustellen. Ich stelle mir vor, es würde auch mit anderen Varianten als RAID 1 funktionieren.
Nstenz
@nstenz, du hast mein Setup fast genau beschrieben. Die Datenpartition bekam raid6 und LVM und Boot bekam RAID 1.
Hildred
1
  1. Wie bereits erwähnt, hat Hardware-RAID und verschiedene Nachteile keinen Vorteil. Meine Hauptgründe für den Vorzug von Software-RAID sind, dass es einfacher und portabler ist (und daher mit größerer Wahrscheinlichkeit eine erfolgreiche Wiederherstellung nach verschiedenen Fehlerszenarien erzielt).

  2. (Auch wie andere gesagt haben) 3-Platten-RAID 5 ist ein wirklich schlechtes RAID-Schema - es ist fast das Schlimmste aller Welten, mit sehr geringem Nutzen. Eine Art Kompromiss zwischen RAID 0 und RAID 1, der etwas besser ist als einer der beiden, aber das ist das einzig Gute, was man dazu sagen kann. RAID ist zu viel besseren Schemata übergegangen, wie RAID 6.

  3. Mein Rat (Hardware):

    • Holen Sie sich eine 4-Port-SATA-Karte für diesen PCI-Steckplatz, sodass Sie sechs SATA-Ports zur Verfügung haben - einen für ein Startlaufwerk und fünf für Datenlaufwerke. Ich sehe einen für ~ $ 15, der als Hardware-RAID angekündigt wird, aber Sie können diese Funktionen einfach ignorieren und als reines SATA verwenden.

    • Besorgen Sie sich eine kleine SSD für das Boot-Laufwerk. Ich weiß, dass es immer noch die Meinung gibt, dass "SSDs zu teuer sind", aber es stimmt kaum noch und überhaupt nicht im Kleinen - 120 GB sind weit mehr, als Sie für dieses Boot-Laufwerk benötigen, und Sie können sich eine für dieses Laufwerk zulegen ~ 25 $.

    • Eine optionale, aber sehr schöne Ergänzung (wenn Ihr PC-Gehäuse 3 x 5,25 "Laufwerksschächte hat) ist die Anschaffung eines Laufwerksschachtkonverters: Sie können 3 5,25" (optische) Laufwerksschächte in 5 Hot-Swap-fähige Frontloader-Festplatten (3,5 ") verwandeln. Sie müssen die Maschine also nicht auseinandernehmen (oder sogar herunterfahren), um Laufwerke auszutauschen. (Suchen Sie nach "Backplane 5 in 3".)

    • Verwenden Sie 5 Festplatten jeder Größe in RAID 6 (doppelte Redundanz, 3 Festplattengrößen, verwendbarer Speicherplatz).

  4. Mein Rat (Software): Suchen Sie in OpenMediaVault nach der OS / File-Server-Software. Es ist eine "Appliance Distribution", die perfekt für genau diese Art der Nutzung geeignet ist - Debian-basiert (eigentlich ein Linux-Port des BSD-basierten FreeNAS) mit allem, was für einen NAS-Server vorkonfiguriert ist. Das Einrichten und Verwalten von Software-RAID (sowie von LVM, Netzwerkfreigaben usw.) ist sehr einfach.

dgould
quelle