Howto:mdadm

Hallo und willkommen zu meiner kleinen Einführung in das Linux-Software-Raid-Tool mdadm.

Inhaltsverzeichnis

Einleitung

Was ist Raid

Gebräuchlich sind als RAID-Level (Finktionen)

  • Linear (Append) alle Partitionen werden zu einer großen Partition aneinander gehängt. Daten werden nacheinander auf die Platten geschrieben. Bei Ausfall einer Platte Datenverlust ab ausgefallener Platte.
  • RAID 0 ( Striping - Mode) ist das verbinden von mindestens zwei Festplatten zu einer großen Festplatte. Vorteile sind das schnellere Schreiben und Lesen leider kann hier keine Ausfallsicherheit von Festplatten gewährleistet.
  • RAID 1 (Mirroring - Mode) ist das Spiegeln von mindestens zwei Festplatten. So wird gewährleistet, dass wenn eine Festplatte ausfällt, die Daten immernoch auf einer anderen vorhanden sind und somit nicht verloren gehen.
  • RAID 5 (XOR - Mode) ist das Verbinden von mindestens drei Festplatten zu einem Raid-Verbund. Bei diesem Raid-Modus werden die Unterschiede der einzelnen Festplatten untereinander gespeichert. So kann beim Ausfall einer Festplatte mit Hilfe der anderen beiden die Daten wieder zurückgesichert werden.
  • RAID 4 (Striping & Dedicated Parity) wie RAID 0, jedoch wird eine zusätzliche Partition mit Paritätsinformationen benutzt. Es wird eine höhere Datensicherheit erreicht, allerdings steigt die CPU-Auslastung.
  • RAID 5 (Striping & Distributed parity) wie RAID 0, jedoch werden die Paritätsinformationen auf alle Platten verteilt. Es sinkt die Kapazität (5x1GiB ergibt 4GiB). Der Datendurchsatz beim Schreiben ist etwas geringer, beim Lesen ähnlich RAID 0.
  • RAID 10 (Mirroring & Striping) Kombination aus RAID 0 und RAID 1. Die Kapazität sinkt auf 50%. Der Datendurchsatz wird stark gesteigert.

Mehr Informationen kann unter Wikipedia (http://de.wikipedia.org/wiki/RAID) Nachgelesen werden.

Installation und Einrichtung

Installation von mdadm unter Debian GNU Linux

apt-get install mdadm

Einrichten von mdadm

Im Verzeichnis /etc/mdadm befindet sich die Konfigurationsdatei mdadm.conf

Diese Datei sieht folgendermaßen aus.

 DEVICE /dev/sd[abcd]1
 ARRAY /dev/md0 devices=/dev/sda1,/dev/sdb1,/dev/sdc1,/dev/sdd1

(wird später unten automatisch angelegt)

Festplatten partitionieren

cfdisk /dev/sda
cfdisk /dev/sdb
cfdisk /dev/sdc

--> Bei jeder Platte Typ: FD (Linux raid autodetect) Partition anlegen

Partitionieren des RAID-Dateisystem

cfdisk /dev/md0

--> Ext3 Partition anlegen.

Raid anlegen

mdadm --create --verbose /dev/md0 --level=5 --raid-devices=3 /dev/sda1 /dev/sdb1 /dev/sdc1

Konfiguration aktualisieren

mdadm --detail --scan > /etc/mdadm.conf

RAID starten

mdadm -As /dev/md0

RAID stoppen

mdadm -Ss /dev/md0

RAID-Status

Der Status vom Raid lässt sich per /proc/mdstat ermitteln:

cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4]
md0 : active raid6 sda1[0] sdd1[3] sdc1[2] sdb1[1]
      976767872 blocks level 6, 64k chunk, algorithm 2 [4/4] [UUUU]
      [>....................]  resync =  1.3% (6416640/488383936)  finish=102.4min speed=78416K/sec

unused devices: <none>

RAID-Sync pausieren

Wenn man z.B. beim Backup ein eventuelles Resync verhindern will, muss man die Werte für speed_limit_min bzw. speed_limit_max in /proc/sys/dev/raid/ auf 0 (per echo) setzen. Man kann dann die Pause wieder aufheben, in dem man wieder die Standardwerte setzt:

echo 1000 > /proc/sys/dev/raid/speed_limit_min
echo 200000 > /proc/sys/dev/raid/speed_limit_max


Von "http://www.lug-wr.de/wiki/index.php/Howto:mdadm"

Diese Seite wurde bisher 24333 mal abgerufen. Diese Seite wurde zuletzt geändert um 11:14, 20. Jun 2010. Inhalt ist verfügbar unter der GNU Free Documentation License 1.2.