Zum Erstellen von RAID-Devices werden für den Linear, RAID-0 und RAID-1 Modus mindestens zwei leere Partitionen auf möglichst unterschiedlichen Festplatten benötigt. Für RAID-4 und RAID-5 sind mindestens drei Partitionen nötig und für den RAID-10 Modus vier. Dabei ist es egal, ob die Partitionen auf (E)IDE- oder SCSI-Festplatten liegen.
Will man Software-RAID mit (E)IDE-Festplatten benutzen, so empfiehlt es sich, jeweils nur eine (E)IDE-Festplatte an einem (E)IDE Kontroller zu benutzen. Im Gegensatz zu SCSI beherrschen (E)IDE-Festplatten keinen Disconnect - können sich also nicht vorübergehend vom BUS abmelden - und können dementsprechend nicht »parallel« angesprochen werden. An zwei unterschiedlichen (E)IDE Kontrollern ist dies jedoch in Grenzen möglich, wenn auch immer noch nicht so gut wie bei SCSI Kontrollern. Besser als an einem Strang ist es aber auf jeden Fall.
Desweiteren können Sie die Überlegung, Hot Plugging mit (E)IDE-Festplatten zu benutzen, gleich wieder ad acta legen. Hierbei gibt es mehr Probleme als Nutzen. Wie das jedoch mit eigenen (E)IDE RAID Kontrollern aussieht, kann ich mangels passender Hardware nicht sagen.
SCSI Kontroller werden entweder als PCI Steckkarte zusätzlich in den Computer eingebaut, oder sind in Form eines SCSI Chips bereits auf dem Mainboard integriert. Letztere so genannte »On Board Controller« hatten bei älteren Mainboards die unangenehme Eigenart, die Interrupt Leitungen für den AGP Steckplatz und den SCSI Chip zusammenzulegen und waren so die Ursache für manche Konfigurations-, Stabilitäts- und daraus resultierend auch Geschwindigkeitsprobleme. Inzwischen funktionieren Mainboards mit integriertem SCSI Chip meist ebenso gut wie externe SCSI Kontroller und stehen in ihrer Leistung einander in nichts nach. Aktuelle Probleme können lediglich aus der mangelnden Treiberunterstützung der verwendeten Distribution resultieren und auf diese Weise eine Linux Installation erschweren.
Das Software-RAID unter Linux bietet zwar die Möglichkeit, einzelne Partitionen
einer Festplatte in einen RAID-Verbund einzubauen, um jedoch einen nennenswerten
Geschwindigkeitsvorteil oder entsprechende Redundanz zu erzielen,
sind generell die RAID-Partitionen auf unterschiedliche Festplatten zu
verteilen. Sinnvoll wäre es, das erste RAID zum Beispiel auf drei
Partitionen unterschiedlicher Festplatten zu legen; /dev/md0
bestünde dann z.B. aus /dev/sda1
, /dev/sdb1
und
/dev/sdc1
. Das zweite RAID würde man ebenso verteilen:
/dev/md1
wäre dann also ein Verbund aus /dev/sda2
,
/dev/sdb2
und /dev/sdc2
. Damit hat man zwei RAID-Verbunde
(/dev/md0
und /dev/md1
), die sich - als einzelnes Device
angesprochen - jeweils über alle drei Festplatten ziehen.
Da es so gut wie immer unsinnig ist, innerhalb eines RAID-Verbundes mehrere
Partitionen auf dieselbe Festplatte zu legen (z.B. /dev/md0
bestehend
aus /dev/sdb1
, /dev/sdb2
und /dev/sdc1
), kann
oft der Begriff RAID-Festplatte mit RAID-Partition synonym verwendet werden.
Die Prozedur wird hier zum einen mit Hilfe der alten RAID-Tools Version 0.4x anhand einer DLD 6.0 und DLD 6.01 beschrieben, zum anderen wird ein aktueller Installationsablauf erläutert, der sich auf den neuen RAID-Patch und die RAID-Tools Version 0.9x bezieht. Der neue Weg hält sich an den Kernel 2.2.10 in Verbindung mit dem passenden RAID-Patch und den RAID-Tools und sollte unabhängig von der von Ihnen benutzten Linux-Distribution funktionieren. Dieser Weg gilt vom Ablauf her auch für alle neueren Kernel der 2.2.xer Reihe. In die Kernel der 2.4.xer Reihe hat der neue RAID-Patch bereits Einzug in den Standard Kernel-Sourcetree erlangt, wodurch diese Kernel nicht mehr aktualisiert werden müssen.
Im allgemeinen ist, vor allem durch die Tatsache, daß die 2.4.xer Kernel nicht mehr gepatcht werden müssen, die Benutzung des neuen RAID-Patches dringend den alten MD-Tools vorzuziehen. Allein der unter Linux sonst unüblich große Versionssprung von 0.4x auf 0.9x zeigt die starken einhergegangenen Veränderungen. Allerdings kann auch das Verfahren mit Hilfe der MD-Tools für ältere Distributionen von Vorteil sein, in denen diese bereits vorkonfiguriert sind oder für eine Situation, in der bereits mit den älteren MD-Tools Version 0.4x eingerichtete RAID-Verbunde vorhanden sind.
Generell sei hier schon gesagt, daß die Lösung durch die MD-Tools und die mit
dem aktuellen RAID-Patch unterschiedliche Wege gehen. Bitte beachten Sie das bei
der Ihnen vorliegenden Distribution und entscheiden Sie sich frühzeitig für
eine Variante. Glauben Sie, zusammen mit einer guten Anleitung mit
fdisk
und patch
zurecht zu kommen, so wählen Sie ruhig den
neuen Weg.
Für den aktuellen Abschnitt, welcher die Verwendung der neuen RAID-Kernelerweiterungen Version 0.9x beschreibt, werden neben einem lauffähigen Linux-System zwei Archive benötigt. Zum einen der zur Kernelversion passende RAID-Patch und zum anderen die aktuellsten RAID-Tools. Beide Archive gibt es im Internet:
ftp.kernel.org:/pub/linux/daemons/raid/alpha/
Aktuelle Distributionen, welche bereits auf einem 2.4.xer Kernel basieren,
enthalten neben den aktuellen RAID-Treibern meistens auch ein RPM-Paket
mit den aktuellen RAID-Tools. Im Falle einer RedHat 7.2 Linux Distribution
heißt das entsprechende Paket raidtools-0.90-23.i386.rpm
und ist
bei einer Standardinstallation bereits eingerichtet. Der gesamte
Einrichtungsteil zur Kernel-Aktualisierung fällt dann angenehmer Weise
weg. Alles andere funktioniert allerdings genauso wie mit dem als Beispiel
angeführten Kernel 2.2.10.
Generell aktualisiert der RAID-Patch Ihren vorhandenen Linux Kernel-Sourcetree wobei die RAID-Tools die zur Verwaltung von RAID-Verbunden benötigten Programme zur Verfügung stellen. Die einzelnen Programme oder Kommandos der aktuellen RAID-Tools vom 24.08.1999 werden hier mit einer kurzen Erläuterung zu Ihrem Verwendungszweck beschrieben:
Dieses Programm testete in älteren Software-RAID Versionen, die noch mit den MD-Tools Version 0.4x erstellt wurden, die Konsistenz eines RAID-Verbundes. Mit dem aktuellen Kernel-Patch übernimmt der Linux-Kernel diese Arbeit und behandelt die RAID-Verbunde genauso wie alle anderen Partitionen. Dieses Programm ist aus Gründen der Rückwärtskompatibilität noch vorhanden.
Dies ist das zentrale Verwaltungsprogramm, um RAID-Verbunde aller RAID-Modi
anhand einer Konfigurationsdatei - meist /etc/raidtab
- zu
initialisieren, erstellen oder upzugraden.
Aus Gründen der Rückwärtskompatibilität kann man mit Hilfe dieses Kommandos Linear und RAID-0 Verbunde starten, welche noch mit den alten MD-Tools Version 0.4x erstellt wurden.
Hiermit wird das sogenannte Hot Plugging, in diesem Fall das Hinzufügen einer RAID-Partition in einen laufenden RAID-Verbund, ermöglicht.
Dies ermöglicht in Analogie zum Kommando raidhotadd
das Entfernen
einer RAID-Partition aus einem aktiven RAID-Verbund.
Um raidhotremove
z.B. auf ein laufendes RAID-Array mit
Spare-Disks anwenden zu können, muß zuerst die zu entnehmende
Festplatte als defekt markiert werden. Ist dies nicht von alleine korrekt
geschehen, muß das Kommando raidsetfaulty
dazu bemüht werden.
Andernfalls erhält man von raidhotremove
lediglich eine Fehlermeldung.
Ist ein RAID-Verbund erst einmal initialisiert, kann er mit diesem Programm
gestartet werden. Durch den neuen RAID-Patch und mit den entsprechenden
Optionen in der /etc/raidtab
kann dies allerdings der Kernel beim
Startup des Rechners bereits automatisch erledigen.
Erlaubt das Deaktivieren eines RAID-Verbundes, um z.B. den Rechner sicher
herunterfahren zu können. Auch dies läßt sich mit den nötigen Einträgen in der
/etc/raidtab
automatisch durch den Kernel erledigen.
Dies ist die zentrale Konfigurationsdatei für die gesamten RAID-Verbunde Ihres
Systems, die erst neu erstellt werden muß. Die Parameter für die einzelnen
RAID-Verbunde werden in den entsprechenden Kapiteln dieser HOWTO beschrieben.
Standardmäßig suchen die RAID-Tools nach /etc/raidtab
. Hier sollte
also diese Datei auch erstmal mit diesem Namen erstellt werden.