Einführung
Dieser Artikel Beschreibt die Nutzung eines Software-RAIDs, welches die Interaktion von mehreren Laufwerken in einem Linux-Betriebssystem organisiert, ohne dafür einen Hardware-RAID-Controller zu verwenden.
Von Hetzner mit einem Betriebssystem bereitgestellte Server, oder über den Robot installierte Systeme sind bei mehr als zwei Laufwerken bereits mit dem empfohlenen RAID-Level (1 oder 6) versehen. Weiterhin können Sie das Installimage-Script im Rescue-System verwenden, um angepasste Installationen durchzuführen, dabei unter anderem eine gewünschte Software-RAID-Konfiguration einzustellen und dieses auch mit LVM kombinieren.
Status des Software-RAID auslesen
Verwenden Sie dazu folgenden Befehl:
cat /proc/mdstatAusgabe für ein nicht vorhandenes RAID:
Personalities : [raid1]
unused devices: <none>Ausgabe für ein RAID1:
Personalities : [raid1]
md2 : active raid1 sda3[2] sdb3[1]
234405504 blocks super 1.2 [2/2] [UU]
bitmap: 0/2 pages [0KB], 65536KB chunk
md1 : active raid1 sda2[2] sdb2[1]
523712 blocks super 1.2 [2/2] [UU]
md0 : active raid1 sda1[2] sdb1[1]
33521664 blocks super 1.2 [2/2] [UU]
unused devices: <none>Ausgabe für ein RAID0 (Die /boot-Partition md0 muss immer als RAID1 eingerichtet sein, um davon booten zu können):
Personalities : [raid1] [raid0]
md2 : active raid0 sda3[0] sdb3[1]
883956736 blocks super 1.2 512k chunks
md1 : active raid0 sda2[0] sdb2[1]
52393984 blocks super 1.2 512k chunks
md0 : active raid1 sda1[0] sdb1[1]
523264 blocks super 1.2 [2/2] [UU]
unused devices: <none>Wenn unter einer der Partitionen ein Fortschritts-Balken dargestellt wird, läuft derzeit ein RAID-Resync-Prozess:
md0 : active raid1 sdb1[0] sdc1[1]
2095040 blocks super 1.2 [2/2] [UU]
[====>................] resync = 32.7% (418656/2095040) finish=4.2min speed=131219K/secHinzufügen eines Software-RAID-Arrays
In unserem Beispiel-Szenario sind die Laufwerke /dev/sda bereits /dev/sdb in RAID1-Arrays konfiguriert, welche das Betriebssystem enthalten:
cat /proc/mdstat
Personalities : [raid1]
md2 : active raid1 sda3[2] sdb3[1]
234405504 blocks super 1.2 [2/2] [UU]
bitmap: 0/2 pages [0KB], 65536KB chunk
md1 : active raid1 sda2[2] sdb2[1]
523712 blocks super 1.2 [2/2] [UU]
md0 : active raid1 sda1[2] sdb1[1]
33521664 blocks super 1.2 [2/2] [UU]
unused devices: <none>Es sind jedoch zwei weitere Laufwerke vorhanden (/dev/sdc und /dev/sdd), die wir als Daten-Laufwerk in einem RAID1-Array nutzen möchten. Dazu muss zuerst das RAID-Array hinzugefügt werden:
mdadm --create --verbose /dev/md3 --level=1 --raid-devices=2 /dev/sdc /dev/sddAnschließend sollte die RAID-Konfiguration wie folgt aussehen:
cat /proc/mdstat
Personalities : [raid1]
md3 : active raid1 sdc1[0] sdd1[1]
2095040 blocks super 1.2 [2/2] [UU]
[====>................] resync = 32.7% (418656/2095040) finish=4.2min speed=131219K/sec
md2 : active raid1 sda3[2] sdb3[1]
234405504 blocks super 1.2 [2/2] [UU]
bitmap: 0/2 pages [0KB], 65536KB chunk
md1 : active raid1 sda2[2] sdb2[1]
523712 blocks super 1.2 [2/2] [UU]
md0 : active raid1 sda1[2] sdb1[1]
33521664 blocks super 1.2 [2/2] [UU]
unused devices: <none>Nun kann die neue Partition nach Belieben formatiert (hier EXT4) und eingehängt werden:
mkfs.ext4 /dev/md3
mount /dev/md3 /mntE-Mail-Benachrichtigung bei Ausfall einer Festplatte im Software-RAID
Voraussetzung: Ein Mailserver Ihrer Wahl (z.B. Sendmail) muss bereits installiert und konfiguriert sein.
Debian/Ubuntu/CentOS
Öffnen Sie /etc/mdadm/mdadm.conf bzw. /etc/mdadm.conf (CentOS) in einem Editor und passen Sie folgende Zeile an:
MAILADDR holu@example.comHier kann direkt eine Zieladresse angegeben werden. Alternativ bietet es sich an, alle an root gerichteten Emails via /etc/aliases an eine bestimmte Mailadresse weiterzuleiten.
Optional kann auch die Absenderadresse konfiguriert werden:
MAILFROM mdadm@example.comWichtig bei Debian und Ubuntu ist, dass AUTOCHECK in der Datei /etc/default/mdadm auf true gestellt ist:
# grep AUTOCHECK= /etc/default/mdadm
AUTOCHECK=trueopenSUSE
Öffnen Sie /etc/sysconfig/mdadm in einem Editor und verändern Sie die Variable MDADM_MAIL auf die gewünschte Adresse, an die Benachrichtigungen gesendet werden sollen:
MDADM_MAIL="holu@example.com"Konfiguration prüfen
Ihre Konfiguration lässt sich mittels folgendem Befehl verifizieren, welcher per mdadm eine Test-Mail generiert und an die angegebene Adresse versendet:
mdadm --monitor --test --oneshot /dev/md0Weiterhin sollten Sie noch sicherstellen, dass die Datei /etc/cron.daily/mdadm folgende Zeile enthält, welche für das tägliche Monitoring des RAIDs zuständig ist:
exec --monitor --scan --oneshotSoftware-RAID auflösen
Um ein Software-RAID aufzulösen können folgende Befehle verwendet werden. Falls es sich dabei um die System-Partitionen handelt, sollte dazu das Rescue-System gebootet werden.
mdadm --stop /dev/md0
mdadm --stop /dev/md1
mdadm --stop /dev/md2mdadm --remove /dev/md0
mdadm --remove /dev/md1
mdadm --remove /dev/md2Danach können die Laufwerke wieder normal formatiert werden (zb. mit ext4):
mkfs.ext4 /dev/sda
mkfs.ext4 /dev/sdbDas Ergebnis kann mittels..
cat /proc/mdstat...und...
fdisk -lüberprüft werden. Das Software-RAID sollte nun verschwunden sein.