Linux Debian Software RAID-1 Konfiguration

    • Offizieller Beitrag

    Hallo,


    in diesem Tutorial möchte ich euch gerne zeigen, wie ihr bei der Einrichtung eines Linux Systems ein Software RAID einstellen könnt. In diesem Beispiel hier hat unser System 2 gleichgroße Festplatten mit je 20 GB, welche wir in einem RAID-1 haben möchten. Das ganze zeige ich euch anhand einer Debian Installation.


    Inhaltsverzeichnis

    • RAID kurz vorgestellt
    • Voraussetzungen
    • Software RAID-1 Konfiguration

    RAID kurz vorgestellt
    Nachfolgend möchte ich euch mal kurz die meist genutzten und bekanntesten RAID-Systeme vorstellen:

    • RAID-0 (Striping => Verteiltes Schreiben)
      Hier werden sämtliche Daten über alle im RAID-Verbund liegenden Festplatten gleichmäßig verteilt, um die entsprechende Performance heraus zu holen. Nachteil ist jedoch der, dass im Fehlerfall einer Festplatte alle Daten kaputt sind, da Teile der Daten mit dem Defekt der einen Festplatte verloren gegangen sind.


    • RAID-1 (Mirroring => Spiegelung)
      Hier werden die Daten über eine Festplatten geschrieben und zusätzlich auf die zweite Festplatte kopiert, sodass bei einem Ausfall von einer Festplatte die Daten sicherer sind.


      Achtung: Das ist kein Backup, denn wenn ihr euch einen Virus zieht, wird dieser sofort auch auf der anderen Festplatte geschrieben und somit ist hier keinerlei Sicherheit diesbezüglich gegeben!


    • RAID-5 (Leistung + Parität, Block-Level Striping mit verteilter Paritätsinformation)
      Dieses Verfahren wendet die RAID-0 Technologie an und schreibt zusätzlich auf alle Festplatten verteilt noch eine sogenannte Paritätsinformation, sodass im Falle eines Festplatten Ausfalls die Daten wiederhergestellt werden können.


    • RAID-6 (Block-Level Striping mit doppelter verteilter Paritätsinformation)
      Dies ist quasi die Weiterentwicklung von RAID-5. Hier können bis zu zwei Festplatten gleichzeitig ausfallen, da die Paritätsinformationen zur Wiederherstellung einer Festplatte doppelt verteilt geschrieben werden.


    • RAID-DP (Block-Level Striping mit doppelter Paritätsinformation auf separaten Festplatten)
      "Double Parity" ist eine Weiterentwicklung des RAID-4 durch die Firma NetApp. Hier werden zwei Paritätsinformationen mit der selben Formel, jedoch anderen Datenblöcken berechnet. Die erste wird horizontal und die zweite diagonal berechnet.

    Genauere Details, sowie Schaubilder könnt ihr bei Wikipedia nachlesen: RAID – Wikipedia


    Mit RAID-Systemen kann man sehr interessante Konstrukte bauen. Unter anderem auch so etwas: 4 Festplatten, wobei jeweils 2 im RAID-1 zusammengefasst sind und diese 2x2 Festplatten werden danach nochmal in einem RAID-0 zusammengefasst, sodass man a) eine Redundanz und b) eine Performance-Steigerung hat. Dieses Verfahren nennt sich dann auch RAID-10.


    Voraussetzungen für RAID-1

    • 2 Festplatten mit der selben Größe
      Achtung: Bei unterschiedlichen Herstellern oder auch nur Festplattentypen, können sich die Größen bereits unterscheiden, daher sollte man immer die exakt gleichen Festplatten benutzen, um die ganze Kapazität ausnutzen zu können, denn bei RAID-1 wird immer die Kapazität der kleinsten Festplatte genutzt.

    Software RAID-1 Konfiguration

    • Startet die Linux Installation und schreitet bis zum Schritt "Festplatten partitionieren" vor:
    • Wählt den Menüpunkt "Manuell"
    • Richtet folgende Partitionen auf beiden Festplatten ein:
      • 2 GB Typ RAID (Primär)
      • Festlicher Speicherplatz Typ RAID (Primär)
    • Konfiguriert das Software RAID-1 über den Menüpunkt "Software-RAID konfigurieren"
    • Erstellt zwei neue MD-Geräte
      • Ein RAID-1 Verbund aus den beiden kleinen Partitionen
      • Ein RAID-1 Verbund aus den beiden großen Partitionen
    • Als nächstes konfigurieren wir gleich noch den "Logical Volume Manager", um später folgende Vorteile zu haben
      • Einfaches verkleinern und vergrößern von Partitionen im laufenden Betrieb
      • Einfache Erweiterbarkeit der Festplatten, wenn der physische Platz nicht mehr ausreichen sollte
      • Online Verwaltung von Partitionen, ohne Neustart des Betriebssystems
      • Snapshotverwaltung zur Sicherung von "Logical Volumes"
      • Hierzu wählen wir den Menüpunkt "Logical Volume Manager konfigurieren" aus
      • Als erstes erstellen wir eine neue Volume Gruppe namens "vg_root" auf das MD-Gerät, welches am meisten Speicherplatz bietet

        • Hierin werden später die ganzen Volumes alias "Partitionen" liegen (Man unterteilt den gesamten Festplattenspeicher quasi in Bereiche, sogenannte "Volume Groups" und innerhalb so einer Gruppe unterteilt man dann nochmal nach "Logical Volumes", also den eigentlichen Partitionen.)
      • Nun legen wir in der neuen Volume Gruppe zwei "Logical Volumes" an:
        • z.B. "lv_log" (5 GB)
        • z.B. "lv_root" (Restlicher Speicherplatz minus ein paar GB als Reserve)
    • Nachdem die Partitionierung aktuell wie folgt aussieht, legen wir jetzt noch fest, wo wir was eingebunden haben möchten:
    • Um den Mountpoint, sowie das Dateisystem für eine Partition festzulegen, muss man sie einfach auswählen und entsprechend konfigurieren:
      • lv_log: Dateisystem "ext4" mit Mountpoint "/var/log"
      • lv_root: Dateisystem "ext4" mit Mountpoint "/"
      • RAID1 Nr. 1 2 GB: Dateisystem "ext4" mit Mountpoint "/boot"
    • Zum Schluss sollte das Gesamtbild wie folgt aussehen:
    • Jetzt ist es fertig und bereit für die Installation. Beendet nun die Partitionierung, übernehmt die Änderungen und beendet den Installationswizard.

    Da wir hier keinen SWAP eingerichtet haben, müsst ihr die entsprechende Meldung noch bestätigen, denn aktuelle Server werden mehr als genug RAM haben, sodass dieser unnütz/überfällig ist.


    Wem die 2 GB für die /boot Partition bisher nicht reichten, muss die Partition eben von Anfang an auf 8-20 GB hochschrauben. Ein empfohlener Wert wäre hier so 10 GB, wenn ihr euer System öfter mal updatet und immer gerne den Kernel upgraded.

    Viele Grüße,
    Sebbo

    ---

    DevOps Engineer <3