MD Software-RAID Level 1 ist die Spieglung einer Partition, durch einrichten eines Festplattenverbund von zwei (oder mehr) Festplatten zu einem logischen Laufwerk mittels mdadm (Programmpaket zum Verwalten von Multi-Disk-Arrays unter Linux), bei dem die Daten gleichzeitig auf alle Festplatten dupliziert werden. Dies schützt durch Redundanz vor dem Ausfall einer Festplatte.
- Die Literatur empfiehlt aus Sicherheitsgründen, für die RAID-Festplatten unterschiedliche Hersteller oder zumindest unterschiedliche Produktionslinien vom selben Hersteller einzusetzen. Damit, sollte ein Hersteller Fertigungsprobleme gehabt haben, nicht alle Festplatten innerhalb kürzester Zeit ausfallen.
- Tritt ein Problem auf, wird die Fehlermeldung per E-Mail versandt (Die E-Mail wird die Ausgabe von
cat /proc/mdstat
enthalten). Das setzt allerdings voraus, dass ein Mail Transfer Agent (MTA) eingerichtet ist.
- Das RAID ersetzt keine Datensicherung. Ein RAID schützt nur vor dem Ausfall einer Festplatte — nicht vor unbeabsichtigtem löschen von Dateien und Fehler am Dateisystem.
Software-RAID Level 1 mit dem Debian-Installer erstellen
Um die Installation einfach und überschaubar zu halten, habe ich jeweils nur eine Partition (/dev/sd[ab]1) für das RAID genommen und LVM mit jeweils einem LV für / (Root-Partition) und Swap eingerichtet.
Anders als beim Laptop, das mobile ist und auf Reisen etc. schon mal verloren gehen kann oder gestohlen wird, halte ich auf dem Desktop zu Hause ein verschlüsseltes System mit cryptsetup/LVM für nicht notwendig.
Festplatten partitionieren und als RAID konfigurieren
Zwei Partitionen für die Benutzung als RAID einrichten:
Software-RAID Level 1 erstellen
RAID Level 1 mit den zwei Partitionen erstellen:
Typ des Software-RAID wählen. Wir wählen RAID1:
Anzahl der Partitionen für das RAID Level 1 auf 2 setzen:
Die zwei Partitionen die wir oben für die Benutzung als RAID eingerichtet haben auswählen:
Anzahl der Reserve-Partitionen setzen. Wir haben keine Reserve-Partition:
RAID fertigstellen:
Die (neue) RAID1-Partition für die Benutzung als LVM einrichten:
LVM (Logical-Volume-Manager) konfigurieren
LVM konfigurieren und eine VG (Volume-Gruppe) mit zwei LVs (logisches Volume) für / (Root-Partition) und Swap erstellen:
VG debian auf der RAID1-Partition erstellen:
Zwei LVs für Swap und / (Root-Partition) erstellen:
Fertige Partitionierung übernehmen
Das fertige Partitions-Schema:
Bootloader installieren
Um GRUB auf beide Festplatten zu installieren, kann später im nach hinein dpkg-reconfigure grub-pc
ausgeführt werden und dort dann alle Festplatte für die Installation ausgewählt werden.
Fehlerhafte Festplatte ersetzen
Schritt-für-Schritt Anleitung zum Austausch einer defekten Festplatte im Software-RAID Level 1:
- Alle Partitionen der defekten Festplatte als fehlerhaft aus dem RAID entfernen:
mdadm /dev/mdN --set-faulty /dev/sdXN --remove /dev/sdXN
- Die physische Festplatte auswechseln.
- Bootloader und Partitionstabelle kopieren:
# Bootloader kopieren
dd if=/dev/sdY of=/dev/sdX bs=512 count=1
# MBR-Partitionstabelle (MPT) kopieren
sfdisk -d /dev/sdY > /tmp/mpt.out
sfdisk /dev/sdX < /tmp/mpt.out
# neue Partitionstabelle einlesen
blockdev --rereadpt /dev/sdX
Hinweis: Für GUID-Partitionstabellen (GPT) muss sgdisk(8) verwendet werden:
sgdisk --backup=/tmp/gpt.out /dev/sdY
sgdisk --load-backup=/tmp/gpt.out /dev/sdX
- Partitionen der neuen Festplatte dem RAID hinzufügen:
mdadm /dev/mdN --add /dev/sdXN
Das als fehlerhaft entfernen und hinzufügen von Partitionen, kann während des Betriebs passieren. Nur zum Auswechseln der physischen Festplatte muss eine Ausfallzeit eingeplant werden. Es müssen alle Partitionen der defekten Festplatte als fehlerhaft entfernt und anschließend neu hinzugefügt werden.
Mit folgendem Befehl kann die Synchronisierung des RAID verfolgt werden:
watch mdadm --detail /dev/mdN
Der Irrtum abwarten zu müssen bis die Synchronisierung abgeschlossen sei ist falsch. Das RAID kann sofort benutzen werden.
Aus einem Live-System auf das RAID zugreifen
Unter GRML, KNOPPIX etc. ein Software-RAID starten.
Das Skript mdadm-startall, startet Software-RAID Systeme automatisch:
# Alle RAID-Systeme starten
apt-get update # Paketquellen aktualisieren
apt-get install mdadm # Werkzeug zum Verwalten von RAID-Systemen installieren
modprobe md_mod # RAID framework laden (RAID-Treiber)
mdadm-startall # Alle RAID-Systeme starten
Nun sollten alle RAID-Systeme (Meta-Devices: /dev/md*) gestartet worden sein und können mit den üblichen Programmen — cryptsetup(8), lvm(8), mount(8) usw. — wie herkömmliche Partitionen gehandhabt werden.
Hinweis: In neueren Versionen vom Programmpaket mdadm, scheint das Skript mdadm-startall zu fehlen.
RAID-Systeme mit dem Debian-Installer starten
Der Rettungsmodus des Debian-Installer startet RAID-Systeme ebenfalls.
RAID-Systeme überprüfen
Um ein konstantes Monitoring zu betreiben, wird das Tool checkarray benötigt. Dies kann in die Crontab eingetragen werden:
@hourly /usr/share/mdadm/checkarray --cron --all --quiet
Quellen und weiterführendes