GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Intel Matrix Storage Manager vs. Linux-Software-RAID

Übersicht

Es gibt drei gängige RAID-Typen:

  • Software RAID :Dies bedeutet, dass Ihr BIOS und andere Betriebssysteme denken, dass Sie wirklich zwei separate Festplatten haben, aber rein auf Softwareebene verwendet Ihr Betriebssystem ein betriebssystemspezifisches On-Disk-Format für RAID (Spiegelung, Striping, Paritätsbits, was auch immer) . Die gesamte Verarbeitung erfolgt durch die CPU ohne Hardwareunterstützung.

  • BIOS RAID :Auch als „Fake RAID“ oder „Host RAID“ bekannt, bedeutet dies, dass Ihre Motherboard-Firmware (genauer gesagt Ihr SATA/SAS-Controller) explizit die Erkennung von RAID-Geräten unterstützt. Auf logischer Geräteebene (lun ), werden Ihre mehreren Festplatten für das Betriebssystem als ein einziges Laufwerk angezeigt. Dies ist im Grunde der SATA / SAS-Controller, der sagt:"Ich habe wirklich nur eine Festplatte. Nun, es sind eigentlich zwei, aber pssst, es ist nur eine, vertrauen Sie mir." Mit anderen Worten, das Betriebssystem kann sagen dass es sich um ein RAID-Setup handelt, aber das Betriebssystem * nicht für das Format der RAID-Parität/Striping/usw. auf der Festplatte verantwortlich ist. Aber auch in diesem Modus führt die CPU alle Berechnungen für Paritätsbits und Striping durch. Das Motherboard, das BIOS und der SATA-Controller haben gerade genug Logik, um die Geräte physisch zu "kombinieren" und ein On-Disk-Format für das RAID zu definieren. Aber ihnen fehlt ein dedizierter Prozessor, um die Berechnungen durchzuführen, und sie sind von der Software im Betriebssystem abhängig, um die CPU anzuweisen, sie auszuführen, weshalb Sie Linux immer noch über Ihr BIOS-RAID informieren müssen. (Intel Matrix / RST ist eine Art BIOS-RAID).

  • Hardware RAID :Hier haben Sie einen dedizierten Chip, dessen einziger Zweck darin besteht, die für RAID erforderlichen Daten zu verarbeiten. Der Chip kann ziemlich leistungsfähig sein; Einige Hardware-RAID-Controller haben tatsächlich einen CPU-ähnlichen Dual-Core-Chip an Bord, obwohl er speziell für die Ausführung eines eingebetteten Betriebssystems optimiert ist, das SEHR schnell RAID-Berechnungen durchführt, wie z. B. Paritätsbits für RAID-5 oder Striping für RAID -0. Die Festplatten sind physisch mit der RAID-Karte verkabelt, die einen SATA/SAS-Controller, normalerweise einen Lese- und Schreib-Cache in DRAM oder Flash, native Befehlswarteschlangen und einen integrierten Zentralprozessor bereitstellt, der die mathematischeren Berechnungen durchführt. Diese Hardware-Chips kosten zwischen 150 US-Dollar auf der Einstiegsebene bis zu mehreren Tausend für industrielle Rechenzentrums-RAID-Backplanes.

Kompatibilität

Im Allgemeinen ist jeder RAID-Typ an einen bestimmten Aspekt „gebunden“, sodass Kompatibilitätsprobleme auftreten, wenn sich dieser Aspekt ändert.

  • Software-RAID ist an das Betriebssystem gebunden, das das RAID-Format definiert hat. Manchmal wird das RAID-Format zwischen zwei verschiedenen Versionen desselben Betriebssystems beschädigt, was zu Inkompatibilität führt. Obwohl es konzeptionell möglich ist, dass jedes Software-RAID-Format von jedem anderen Betriebssystem unterstützt wird, da es sich nur um Software handelt In der Praxis stellen die meisten Betriebssysteme inkompatible RAID-Formate dar, die nur dieses Betriebssystem erkennen kann. Die bekannteste Kompatibilität sind jedoch die vom Linux-Kernel nativ verwendeten RAID-Formate (md wie Sie im OP besprechen), das auch das Software-RAID von Windows namens Dynamic Disks erkennen kann.

  • BIOS-RAID ist an das Motherboard gebunden, das Sie besitzen. Es kann möglich sein, Laufwerke, die mit einem bestimmten BIOS-RAID-Format formatiert sind, auf ein anderes Motherboard mit einer ähnlichen BIOS-RAID-Lösung zu verschieben; B. Intel RST auf ein anderes System mit RST. Aber Sie müssen dies sorgfältig recherchieren, bevor Sie einen Schritt machen, um sicherzustellen, dass es kompatibel ist, wenn Sie Wert darauf legen, dass es kompatibel ist.

  • Hardware-RAID ist an diesen spezifischen Hardware-Controller oder eine Reihe von Hardware-Controllern gebunden, die vom Hersteller ausdrücklich als kompatibel angegeben sind. Einige Anbieter pflegen ein sehr konsistentes Hardware-RAID-Festplattenformat, das von vielen Generationen von Controllern unterstützt wird. andere ändern das Format häufiger. Auch hier müssen Sie von Fall zu Fall recherchieren.

Leistung

Die Leistung hängt weitgehend vom Wie ab Sie konfigurieren die grundlegenden Parameter des RAID-Arrays und weniger auf die spezifische Lösung. Im Allgemeinen haben Hardware-RAID-Controller die höchste „Obergrenze“ für die maximale Leistung; Sie belasten Ihre CPU auch nicht annähernd so stark wie die anderen Lösungen. Aber wenn Sie den falschen RAID-Typ für Ihre Arbeitslast, die falsche Stripe-Größe oder den falschen Caching-Ansatz wählen, kann ein Hardware-RAID-Controller auch extrem langsam sein, langsamer als eines der Laufwerke, die im Nicht-RAID-Modus laufen. Gleiches gilt für die anderen Lösungen, die ebenfalls extrem langsam sein können.

  • Software-RAID eignet sich am besten für die RAID-1-Konfiguration, da die Spiegelung eine einfache Kopie derselben Daten auf zwei Laufwerke ist und keine Paritätsbits berechnet werden müssen. RAID-5 auf Software-RAID ist schrecklich.

  • Die Leistung von BIOS-RAID ist im Allgemeinen mit Software-RAID vergleichbar, aber bestimmte BIOS-RAID-Controller und Festplattenformate sind bekanntermaßen fehlerhaft oder leistungsschwach. Im Allgemeinen, wenn Sie zwischen Software-RAID und BIOS-RAID wählen müssen, ist ersteres etwas leistungsversprechender, insbesondere wenn Sie eine neuere Linux-Distribution ausführen.

  • Hardware-RAID-Leistung kann aufgrund der optimierten Verarbeitungsleistung des Prozessors des RAID-Controllers wahnsinnig schnell sein, der, wie gesagt, für hohen Durchsatz ausgelegt ist und tatsächlich als Multi-Core-Chip geliefert werden kann – also ist dies ein ernsthaftes Eisen. Der Hauptnachteil ist, dass Sie an Flexibilität verlieren – Sie können die Laufwerke nicht einfach in einen anderen Computer ohne einen Hardware-RAID-Controller stecken – und an Kosten. Hardware-RAID ist die beste Stufe, um RAID-5 oder RAID-6 zu verwenden, insbesondere wenn Sie viele Festplatten haben (4 oder mehr).

Insgesamt

Obwohl BIOS RAID unterstützt wird von Linux, kann ich Ihnen die Verwendung nicht empfehlen.

Nun zur direkten Beantwortung Ihrer Fragen, nachdem ich Ihnen die langatmige Antwort gegeben habe:

Was bietet mir RSTe im Vergleich zu regulärem Linux-Software-RAID?

Siehe obige Vergleiche zwischen Software-RAID und BIOS-RAID. „RSTe“ ist eine Instanz von BIOS RAID; Linux md RAID ohne -e imsm ist eine Instanz von Software-RAID.

Wird im RSTe-Modus der eigentliche RAID-E/A-Pfad (d. h. Spiegelung und Striping) vom Linux-md oder vom BIOS verwaltet.

Wenn Sie den Datenpfad meinen, wird er immer von der CPU (und damit vom Betriebssystem) verwaltet, es sei denn, Sie haben eine dedizierte Hardware-RAID-Karte. Ich glaube nicht Diese sind auf jedem Motherboard erhältlich, obwohl mich einige High-End-Server-Chipsätze überraschen könnten ...

Insbesondere wenn ich "Matrix-RAID" verwende (d. h. das RAID deckt bestimmte Partitionen statt der gesamten Festplatte ab), muss ich Grub manuell auf beiden MBRs installieren?

Nein. Tatsächlich müssen Sie GRUB nie auf beiden MBRs installieren. Gehen wir von Fall zu Fall vor:

  • Software-RAID:Wählen Sie einfach willkürlich eine Festplatte aus, auf der GRUB installiert werden soll, und stellen Sie sie in der BIOS-Reihenfolge so ein, dass sie zuerst startet. Denken Sie daran, dass Sie einzelne Partitionen spiegeln können, wenn Sie möchten, sodass die Festplatten im Software-RAID nicht Bit für Bit identisch sein müssen. Man kann einen MBR mit einem Bootloader haben und man kann nichts im MBR haben.

  • BIOS-RAID:Das BIOS teilt Ihnen mit, dass es sich um eine "Festplatte" handelt (es nennt es tatsächlich ein RAID-Array), sodass Sie nicht auswählen können, wo GRUB installiert werden soll. Wenn Sie Linux darauf installieren, werden der MBR (einschließlich Bootloader) und jeder andere Sektor beider Festplatten zwischen die beiden Festplatten kopiert. Im Gegensatz zu Software-RAID erzwingt BIOS-RAID also, dass beide Festplatten Block für Block identisch sein müssen, da Sie sie nicht als zwei logische Geräte trennen können. der Festplattencontroller sagt Sie sind EIN logisches Gerät, nicht zwei. Sie können also nicht einfach sagen "Ich möchte einige Daten auf Laufwerk 0 schreiben, aber nicht auf Laufwerk 1". Nicht möglich. Aber mit Software-RAID ist das durchaus möglich.

  • Hardware-RAID:Das BIOS teilt Ihnen mit, dass es sich um eine "Festplatte" handelt, und soweit es das BIOS betrifft, ist es sich nicht einmal besonders bewusst, dass Sie es mit mehreren Festplatten zu tun haben. Der RAID-Controller vollständig abstrahiert alle Details des RAID vom Betriebssystem und BIOS, außer in dem Maße, in dem Sie einige Hardware-RAID-Controller mithilfe eines benutzerdefinierten Protokolls innerhalb des Betriebssystems konfigurieren können. Aber die Geräte sind komplett untrennbar von der Softwareschicht, ähnlich wie bei BIOS RAID.

Bearbeiten: Aktualisierung für weitere Fragenantworten

Ein paar Dinge verstehe ich immer noch nicht. Zunächst zu einem BIOS-RAID:Ich kann es mit mdadm erstellen, sodass Linux die zugrunde liegenden Festplatten nicht wirklich vor mir verbirgt.

Es ist seltsam und schwer zu erklären. Grundsätzlich erscheinen die Scheiben auf bestimmten Ebenen als eine und auf anderen Ebenen als zwei. Aber ich wette, dass mit BIOS RAID nicht jede Festplatte ihren eigenen separaten Geräteknoten hat, z. /dev/sda und /dev/sdb . Wenn ja, dann ist Ihr BIOS-RAID anders als das, was ich gesehen habe.

über Grub und MBRs:Wenn ein RAID Partitionen statt Festplatten abdeckt, kann ich immer noch die darunter liegenden Festplatten sehen. Der MBR ist nicht unter RAID und daher müssen Sie den Bootloader zweimal installieren, um im Falle eines Festplattenausfalls booten zu können. Ist das richtig?

Es tut nicht weh um eine weitere Kopie zu installieren, aber im Falle eines Festplattenfehlers wird das Booten Ihre geringste Sorge sein. Kurz gesagt, gehen Sie voran und tun Sie es, wenn Sie wollen, aber es ist kaum das Wichtigste. Die Installation von Grub von einer Live-CD auf eine Festplatte ist einfach.

Festplatten in RAID (insbesondere wenn sie von derselben Marke und demselben Modell sind, in derselben Fabrik hergestellt werden und direkt nebeneinander bei derselben Temperatur in Betrieb sind) fallen wahrscheinlich in schneller Folge aus, eine direkt nach der anderen. Wenn also eine Festplatte ausgefallen ist, ist es wahrscheinlich nicht in Ordnung, einfach die Achseln zu zucken, eine neue Festplatte einzulegen und die Wiederherstellung zu starten:Es besteht eine gute Chance, dass während der Wiederherstellung die letzte Festplatte, die eine konsistente Kopie der Daten enthält, selbst ausfällt. An diesem Punkt, wenn Sie die letzte verbleibende Festplatte erreicht haben, würde ich empfehlen, einen Experten zu bitten (oder es selbst zu tun, wenn Sie sich mit Hardware auskennen), die Platten von der ursprünglichen Festplatte zu entfernen und eine neue Festplatte des gleichen Herstellers/Modells zu kaufen , Platten reinlegen und mit der neuen Platte die Daten auslesen. Dies ist teuer und zeitaufwändig, aber die ausfallsicherste Art, Ihre Daten aufzubewahren.

Das sind also fünf Fragen, die ich für Sie beantwortet habe; Wenn Sie in diesen Informationen einen Wert gefunden haben, markieren Sie die Antwort bitte entsprechend. Danke.


Die Antwort von Allquixotic ist zu lang:

  1. Was bietet mir RSTe im Vergleich zu regulärem Linux-Software-RAID?

Boot-Unterstützung und ein etwas anderer Funktionsumfang. Im Kern ist es ein Datenformat. – Sie könnten es sogar ohne Intels RST Option ROM verwenden (dann haben Sie keine spezielle Boot-Unterstützung). Was das Format impliziert, steht im mdadm Manpage.

  1. Im RSTe-Modus wird der eigentliche RAID-E/A-Pfad (d. h. Spiegelung und Striping) vom Linux-md oder vom BIOS verwaltet.

Von Linux md (d. h. der gesamte Kernel).

Damit bleibt eine Frage offen:Warum ist Intels RST nur auf einige Chipsätze beschränkt? Sie nehmen überhaupt nicht am RAID teil. Bestenfalls speichern sie ein wenig, was dem Option ROM mitteilt, die Ausführung auf nicht unterstützten Chipsätzen abzulehnen.


Linux
  1. Was ist Ihr Lieblings-Linux-Paketmanager?

  2. Mdadm für vorhandenes Intel Rapid Storage Array konfigurieren?

  3. Wie verschiebe ich ein Linux-Software-RAID auf eine neue Maschine?

  4. Der beste Weg, um Linux-Software von RAID 1 auf RAID 10 zu erweitern

  5. Ist es möglich, SSD TRIM (discard) auf ext4 + LVM + Software-RAID unter Linux zum Laufen zu bringen?

Ist Linux ein Betriebssystem oder ein Kernel?

Logical Volume Manager (LVM) im Vergleich zur Standardpartitionierung unter Linux

Verwenden Sie das Task-Manager-Äquivalent in Linux

Linux-RAID

Network Manager unter Linux mit Beispielen

Die 15 besten zu verwendenden Linux-Referenz-Manager-Software