Moderne Betriebssysteme verfügen über viele Funktionen zur Verbesserung der Datensicherheit und Benutzerfreundlichkeit. In diesem Artikel werden wir RAID LVM und RAID mdadm vergleichen – zwei interessante Technologien, deren Hauptzweck es ist, Ihren Server, Computer oder NAS am Laufen zu halten und Ihre Daten im Falle eines Hardwarefehlers zu sichern.
Inhalt
- Was ist der Unterschied zwischen Lvm und mdadm
- Vergleich von RAID LVM und RAID mdadm
- Ist es möglich, mdadm und LVM gleichzeitig zu verwenden?
- Wie kann man verlorene Daten wiederherstellen?
Was ist der Unterschied zwischen Lvm und mdadm
Lvm und mdadm sind zwei ähnliche und gleichzeitig völlig unterschiedliche Dienstprogramme zur Verwaltung von Festplatteninformationen. Die Ähnlichkeit besteht darin, dass sowohl LVM als auch mdadm Daten auf der Softwareebene zwischen Laufwerken verteilen. Das heißt, Sie können ein Software-RAID-Array oder Lvm-Festplatten nur mit den Fähigkeiten des Betriebssystems erstellen. Es ist keine zusätzliche Hardware erforderlich. Um den Unterschied zu verstehen, erklären wir zunächst jede Technologie einzeln.
LVM (Logical Volume Manager) ist eine abstrakte Schicht zwischen dem Festplattencontroller und dem Betriebssystem. Tatsächlich handelt es sich um ein Subsystem, mit dem der Benutzer den Speicherplatz mehrerer Festplatten zu einem einzigen Volume kombinieren und dann in mehrere logische Laufwerke partitionieren kann.
Angenommen, wir haben zwei 100-GB-Festplatten. Mit LVM können wir sie zu einem 200-GB-Volume (100 GB + 100 GB) kombinieren und dann drei logische Laufwerke erstellen: eines mit 120 GB und zwei mit 40 GB. Auf diese Weise haben wir einen Teil des Speichers der anderen Festplatte genommen und ihn mit der ersten verbunden.
Mit der LVM-Technologie können wir also den Speicher zwischen den Festplatten verteilen, ohne durch die Größe einer der Festplatten begrenzt zu sein. Die einzige Einschränkung besteht darin, wie viel Speicher von allen Festplatten gemeinsam genutzt wird.
Darüber hinaus ermöglicht LVM das Hinzufügen neuer Festplatten zur Erhöhung des verfügbaren Speichers, das flexible Verwalten von Festplatten auf physischer Ebene (Hinzufügen von Festplatten ohne Anhalten des Servers, NAS oder Computers) und das Austauschen von Festplatten durch Anhalten des Speichers nur für die Zeit des physischen Festplattenaustauschs (ohne Anhalten beim Hinzufügen von Festplatten auf der Softwareebene). LVM ist zweifellos eine sehr praktische Funktion. Allerdings bietet LVM keine Redundanz.
Ja, LVM kann eine Art RAID-Array mit seinen eigenen Lösungen implementieren, aber diese werden entweder in der Leistung stark beeinträchtigt sein oder Befehle an das md-Dienstprogramm, d.h. das mdraid-Gerät selbst, weitergeben. Aber darüber werden wir später sprechen.
Sprechen wir nun darüber, was mdadm ist.
Mdadm ist ein spezielles Dienstprogramm des Linux-Betriebssystems, dessen Hauptzweck es ist, RAID-Arrays zu erstellen und zu verwalten. Das heißt, der Hauptzweck von mdadm besteht darin, Redundanz bereitzustellen, d.h. die Daten zu speichern, wenn eine oder mehrere Festplatten ausfallen (abhängig vom ausgewählten RAID-Typ). Tatsächlich kommuniziert mdadm mit den Festplatten und verteilt die Daten auf physischer Ebene zwischen ihnen, ohne etwas mit der logischen Partitionierung der Festplatten zu tun zu haben. Das gesamte RAID-Array aus mehreren Festplatten wird im Betriebssystem als eigenständiges Laufwerk angezeigt, das genauso wie ein reguläres Laufwerk behandelt werden kann.
Vergleich von RAID LVM und RAID mdadm
Wie oben erwähnt, ist es möglich, mit der LVM-Technologie (zum Beispiel LVM RAID 0 oder LVM RAID 5) eine Software-RAID zu erstellen.
LVM RAID bezieht sich auf eine spezielle Methode zum Erstellen einer LV-Partition, bei der ein DM (Device Mapper) Treiber verwendet wird, um LV-Partitionen zu verwalten, und ein MD-Treiber, um Informationen zwischen den Festplatten zu verteilen.
LVM RAID kann auch erstellt werden, indem der MD-Treiber umgangen wird, aber in diesem Fall wird die Leistung eines solchen Arrays stark beeinträchtigt. Außerdem wird es sehr schwierig sein, im Falle eines Festplattenausfalls diese zu ersetzen und die Daten wiederherzustellen.
Bisher scheint alles klar zu sein. Jetzt wollen wir über die Nachteile dieser Lösung sprechen.
Erstens ist es erwähnenswert, dass man beim Arbeiten mit Standard-LVM-Volumes eine sehr große Anzahl von Befehlen und Dienstprogrammen kennen muss, um korrekt mit den Volumes arbeiten zu können, da es keine grafische Shell gibt.
Zweitens ist es beim Arbeiten mit LVM wichtig zu wissen, welche Dateisysteme verwendet werden können (also skalierbare) und welche nicht. Die Wahl des Dateisystems hat Auswirkungen auf das Hinzufügen neuer Festplatten.
Kurz gesagt, LVM ist ziemlich komplex in der Wartung und erfordert vom Benutzer ein gründliches Wissen über das Betriebssystem.
Es ist erwähnenswert, dass das Windows- und Mac OS-Betriebssystem die Arbeit mit LVM nicht unterstützt.
Ein weiterer Nachteil von LVM tritt bei der Verwendung auf SSDs auf. Um dies zu verstehen, schauen wir uns an, wie LVM funktioniert.
Alle Informationen in LVM sind in Extents (dies sind Informationsblöcke) unterteilt, die auf die Festplatte geschrieben werden. Die minimale Größe eines Extents beträgt 4 MB. Es gibt viele Algorithmen, um Extents auf Festplatten zu schreiben. Wir nehmen den einfachsten, genannt „linear“, da er die einfachste Möglichkeit ist, zu verstehen, wie LVM funktioniert.
Bei Verwendung des linearen Algorithmus werden alle Extents in der Reihenfolge auf die Festplatten geschrieben. Wenn nicht genügend Speicherplatz auf der Festplatte vorhanden ist, um die Extents zu schreiben, werden sie in der Reihenfolge auf die zweite Festplatte und so weiter geschrieben.
Das heißt, physisch kann die Datei gleichzeitig auf mehreren Festplatten gespeichert sein, aber das LVM-Subsystem merkt sich die Reihenfolge der Extents und weiß daher, in welcher Reihenfolge sie gelesen werden müssen, um die gewünschte Datei zu öffnen. Schematisch kann dies wie folgt dargestellt werden:
Dies ist jedoch ein Nachteil von LVM – da alle Extents sequentiell geschrieben werden, beginnt die Aufzeichnung auf der nächsten SSD-Festplatte erst, nachdem die erste vollständig gefüllt ist. Wie Sie wissen, wird empfohlen, SSD-Festplatten nicht vollständig zu füllen, da dies die Leistung erheblich beeinträchtigt und die Leistung des Garbage Collectors verringert (mit anderen Worten, die Geschwindigkeit reduziert und die Lebensdauer der Festplatte verkürzt).
Und hier werden viele sagen, dass Sie die Striping-Methode verwenden können (eine Art von RAID 0 in mdadm). Sie haben teilweise recht, da die Belastung auf den Festplatten verringert wird und die Lese-/Schreibgeschwindigkeit proportional zur Anzahl der verwendeten Festplatten zunimmt, da die Informationen gleichzeitig auf alle Festplatten geschrieben werden. Es gibt jedoch auch hier Fallstricke…
Das Problem ist, dass wir zur Erweiterung unseres Volumes ein Vielfaches der bereits verwendeten Festplattenanzahl verwenden müssen. Das heißt, wenn wir 3 Festplatten verwendet haben, können wir 3, 6, 9 usw. Festplatten hinzufügen.
Aber das Wichtigste ist, dass beim Hinzufügen einer neuen Gruppe von Festplatten das Striping nicht zwischen allen Festplatten gleichzeitig erfolgt, sondern innerhalb jeder Festplattengruppe.
Es stellt sich heraus, dass die Aufzeichnung auf einer neuen Gruppe von Festplatten erst beginnt, wenn die erste voll ist. Daraus ergibt sich, dass die erste Festplattengruppe unter Stress arbeiten wird.
Mdadm kann dieses Problem lösen, da seine neuen Versionen das Hinzufügen neuer Festplatten zum RAID 0-Array ohne Probleme ermöglichen, nachdem das Schreiben auf sie mit den zuvor installierten Festplatten gestreift wurde, wodurch die Belastung und der Verschleiß für SSD-Festplatten verringert werden.
Tatsächlich ist mdadm ein sehr funktionsreiches Dienstprogramm, das die RAID-Unterstützung auf Linux-Ebene (daher verwendet LVM den MD-Treiber, um mit Festplatten auf physischer Ebene zu arbeiten) hinzufügt.
Es gibt auch eine grafische Shell für mdadm namens „Webmin“, mit der der Benutzer mit nur wenigen Klicks ein Software-RAID-Array fast beliebigen Typs erstellen kann (einschließlich RAID 10, 50, 60), anstatt eine Vielzahl von Befehlen usw. zu verwenden (was effektiv kein spezielles Wissen über das Betriebssystem erfordert). Wie dies in dem Artikel „Wie erstellt man ein Software-RAID?“ beschrieben wird.
Es ist auch erwähnenswert, dass RAID-Arrays, die mit dem mdadm-Dienstprogramm erstellt wurden, die höchste Leistung haben, da sie keine „Zwischenhändler“ in Form zusätzlicher Treiber und Dienstprogramme haben, um Befehle an die Festplatten zu senden. Dies ist auch der Grund, warum eine ausgefallene Festplatte schneller ersetzt werden kann als bei LVM RAID, da keine zusätzliche Manipulation des LVM-Subsystems erforderlich ist.
Aus diesem Grund empfehlen wir Ihnen, mdadm zu verwenden, um ein Software-RAID zu erstellen, da es sowohl schneller als auch zuverlässiger sein wird.
Zusammenfassend lässt sich feststellen, dass folgende Schlussfolgerung gezogen werden kann:
Die Vorteile von LVM:
- flexible Zuweisung von Festplattenspeicher;
- dynamische Hinzufügung von Festplatten (ohne den Server anzuhalten);
Die Nachteile von LVM:
- Komplexität der Verwaltung (erfordert Kenntnis einer großen Anzahl von Befehlen und Dienstprogrammen);
- es ist sehr schwierig, die Festplatten in einem RAID-Array zu ersetzen;
- mit LVM erstellte Arrays werden langsamer sein;
- es wird nicht empfohlen, sie auf SSD-Festplatten zu verwenden;
- es ist erforderlich zu wissen, welche Dateisysteme verwendet werden können und welche unerwünscht sind;
- viele Betriebssysteme unterstützen LVM nicht;
Die Vorteile von mdadm:
- maximale schnelle RAID-Arrays;
- dynamische Hinzufügung von Festplatten zum RAID-Array (unter Verwendung von Hot-Spare-Festplatten);
- schneller und einfacher Austausch ausgefallener Festplatten;
- einfache Verwaltung (dank der grafischen Shell Webmin);
Die Nachteile von mdadm:
- der Benutzer kann den Festplattenspeicher nicht flexibel zuweisen (tatsächlich begrenzt durch die Größe der Festplatten und den verwendeten RAID-Typ);
Aufgrund des oben Gesagten können Sie die Technologie wählen, die Ihren Anforderungen am besten entspricht. Aber was ist, wenn Sie sowohl die Zuverlässigkeit von RAID-Arrays als auch die Flexibilität von LVM-Volumes wünschen?
Es gibt eine Antwort auf diese Frage, die im nächsten Absatz dieses Artikels ausführlich beschrieben wird.
Ist es möglich, mdadm und LVM gleichzeitig zu verwenden?
Wir haben bereits gesagt, dass der beste Weg, RAID-Arrays zu erstellen, die Verwendung des mdadm-Dienstprogramms ist. Wenn Sie jedoch die Flexibilität haben möchten, Volumes zu erstellen, sowie die Zuverlässigkeit, können Sie LVM über RAID verwenden. Das bedeutet, dass Sie zuerst ein RAID des gewünschten Typs (z. B. RAID 5) erstellen und dann LVM verwenden, um mehrere logische Laufwerke zu erstellen.
Dies bietet Zuverlässigkeit und Geschwindigkeit, und Sie können den Festplattenspeicher nach Belieben partitionieren. Darüber hinaus können Sie bei Bedarf jederzeit eine neue Festplatte zum System hinzufügen, dies können Sie mit mdadm tun.
Der Nachteil ist, dass Sie viele Befehle kennen müssen, um korrekt mit LVM-Volumes zu arbeiten. Obwohl Sie mit Webmin ein RAID-Array mit wenigen Klicks erstellen können, ist LVM immer noch schwierig zu verwalten und daran können Sie nichts ändern.
Wichtiger Hinweis: Wenn Sie sich dafür entscheiden, RAID in Kombination mit LVM zu verwenden, müssen Sie zuerst RAID erstellen und dann die LVM-Volumes darüber erstellen. Wenn Sie dies umgekehrt tun, wird das Array sehr schwierig zu verwalten sein und auch nicht sehr schnell sein. Und wenn eine der Festplatten ausfällt, wird es sehr schwierig sein, sie zu ersetzen.
Wie kann man verlorene Daten wiederherstellen?
Trotz des Einsatzes verschiedener Technologien wie RAID-Arrays kann niemand eine 100%ige Datensicherheit garantieren. Und obwohl der Einsatz von RAID-Arrays das Maß an Datensicherheit erhöhen kann, können verschiedene Erweiterungen wie LVM anstelle neuer Funktionen zum Verlust wichtiger Daten führen. Darüber hinaus ist LVM, obwohl es Ähnlichkeiten mit RAID aufweist, weniger zuverlässig als mdadm RAID.
Selbst diese Technologie kann jedoch keine 100%ige Garantie geben, dass Sie keine Informationen verlieren, da es Controller-Ausfälle gibt und das versehentliche Löschen von Daten oder das versehentliche Formatieren von Arrays nicht ausgeschlossen werden können.
Deshalb muss der Benutzer wissen, was er tun soll, wenn er aus irgendeinem Grund wichtige Informationen verliert. In einer solchen Situation sollte man sofort einen professionellen RAID-Rekonstrukteur verwenden, der eine erfolgreiche Datenwiederherstellung des RAID-Arrays ermöglichen kann.
Wir empfehlen die Verwendung von RS RAID Retrieve – der besten Lösung zum Wiederherstellen eines defekten RAID-Arrays und zur weiteren Datenwiederherstellung.
Das Programm ist einfach und benutzerfreundlich und unterstützt praktisch alle RAID (einschließlich Hybrid) und LVM-Konfigurationen. Darüber hinaus unterstützt RS RAID Retrieve ALLE modernen Dateisysteme sowie NAS-Speicher. Es ermöglicht auch die Datenwiederherstellung von RAID-Arrays, unabhängig vom Betriebssystem, auf dem sie ausgeführt wurden – sei es Windows, Linux, MacOS oder Solaris.
Schließen Sie einfach alle Festplatten des Arrays an einen laufenden Computer an und befolgen Sie eine Reihe einfacher Schritte:
Schritt 1: Laden Sie RS RAID Retrieve herunter und installieren Sie es. Starten Sie die Anwendung nach der Installation. Der integrierte „RAID-Konstrukteur“ wird vor Ihnen geöffnet. Klicken Sie auf „Weiter„
Schritt 2: Wählen Sie die Methode zum Hinzufügen eines RAID-Arrays zum Scannen aus. RS RAID Retrieve bietet drei Optionen zur Auswahl:
- Automatischer Modus – ermöglicht es Ihnen, einfach die Laufwerke anzugeben, die das Array ausmachten, und das Programm bestimmt automatisch deren Reihenfolge, Array-Typ und andere Parameter;
- Suche nach Hersteller – diese Option sollte gewählt werden, wenn Sie den Hersteller Ihres RAID-Controllers kennen. Diese Option ist ebenfalls automatisch und erfordert kein Wissen über die Struktur des RAID-Arrays. Mit den Informationen des Herstellers können Sie die Zeit zum Aufbau des Arrays verkürzen, wodurch diese Option schneller ist als die vorherige;
- Manuelle Erstellung – diese Option sollte verwendet werden, wenn Sie wissen, welchen RAID-Typ Sie verwenden. In diesem Fall können Sie alle Parameter angeben, die Sie kennen, und diejenigen, die Sie nicht kennen, werden automatisch ermittelt
Nachdem Sie die entsprechende Option ausgewählt haben, klicken Sie auf „Weiter„.
Schritt 3: Wählen Sie die Festplatten aus, die das RAID-Array bilden, und klicken Sie auf „Weiter„. Der Prozess zur Erkennung der Array-Konfigurationen wird gestartet. Wenn er abgeschlossen ist, klicken Sie auf „Fertigstellen„.
Schritt 4: Nachdem der Konstrukteur das Array erstellt hat, wird es als normales Laufwerk angezeigt. Doppelklicken Sie darauf. Der Dateiwiederherstellungs-Assistent wird vor Ihnen geöffnet. Klicken Sie auf „Weiter„
Schritt 5: RS RAID Retrieve bietet an, Ihr Array nach wiederherzustellenden Dateien zu durchsuchen. Sie haben zwei Optionen: eine schnelle Suche und eine vollständige Analyse des Arrays. Wählen Sie die gewünschte Option aus. Wählen Sie dann den Dateisystemtyp aus, der auf dem Array verwendet wurde. Wenn Sie diese Informationen nicht kennen, überprüfen Sie alle verfügbaren Optionen, wie auf dem Screenshot. Es ist erwähnenswert, dass RS RAID Retrieve ALLE modernen Dateisysteme unterstützt.
Schritt 6: Der Array-Scanvorgang wird gestartet. Wenn er abgeschlossen ist, sehen Sie die vorherige Struktur von Dateien und Ordnern. Suchen Sie die erforderlichen Dateien, klicken Sie mit der rechten Maustaste darauf und wählen Sie „Wiederherstellung„
Schritt 7: Geben Sie den Speicherort an, an dem die wiederhergestellten Dateien gespeichert werden sollen. Dies kann eine Festplatte, ein ZIP-Archiv oder ein FTP-Server sein. Klicken Sie auf „Weiter„
Nach dem Klicken auf die Schaltfläche „Weiter“ beginnt das Programm mit dem Wiederherstellungsprozess. Wenn er abgeschlossen ist, befinden sich die ausgewählten Dateien am angegebenen Speicherort.
Nachdem alle Dateien erfolgreich wiederhergestellt wurden, erstellen Sie Ihr RAID-Array erneut und kopieren Sie die Dateien zurück.
Wie Sie sehen können, ist der RAID-Datenwiederherstellungsprozess recht einfach und erfordert nicht viel PC-Kenntnisse, was RS RAID Retrieve zur perfekten Anwendung für Profis und Anfänger gleichermaßen macht.