Login
Newsletter
Werbung

So, 3. September 2006, 00:00

Projekt »Virtueller hochverfügbarer Linux-Server«, Teil 2

Hardware-Auswahl und Aufbau

Endlich - ein neuer Kernel

Im Verlauf der Installation werden wir mehrere Kernel-Patches benötigen, vorläufig genügt aber der Patch für dm-raid 4/5. Zusätzlich benötigen wir die kompletten Kernelquellen für den aktuellen Kernel (2.6.17.8 zum Zeitpunkt der Installation). Beim Auspacken der Kernelquellen kam dann die erste Überraschung: Partition voll. Normalerweise belegen die Kernelquellen rund 200 MB, doch xfs wollte wohl etwas mehr. Eine spätere Untersuchung zeigte aber, dass xfs nicht viel mehr Platz braucht als ext2. Vorläufig benötigte ich aber eine Lösung, die dann so aussah: Ich nahm die vorerst ungenutzte Partition /dev/mapper/vg02-rootc (1,5 GB), formatierte sie mit ext2 und hängte sie unter /var/src/linux ein.

Das Patchen, Konfigurieren, Compilieren und Installieren des Kernels sollte reibungslos verlaufen. Ob man die Debian-Tools dafür nutzt oder alles von Hand macht, ist Geschmackssache. Ich verwendete letzteres. Man muss nur daran denken, auch die Initial Ramdisk zu aktualisieren. Dafür stellt Debian ein Kommando bereit, das ungefähr so aufgerufen wird:

update-initramfs -c -k 2.6.17.8

DM-RAID

Nach einem entsprechenden Eintrag in der GRUB-Konfigurationsdatei /boot/grub/menu.lst sollte der neue Kernel problemlos booten. Nun kann man aus den drei vorbereiteten Volumes /dev/vg00/appa, /dev/vg01/appb und /dev/vg02/appc ein RAID5-Array über den Device-Mapper konstruieren. Dazu legt man eine Datei /etc/dmtab an, die nur eine Zeile enthält (hier auf zwei Zeilen verteilt):

0 1433600000 raid45 core 1 8192 raid5_la 0 3 2
/dev/vg00/appa 0 /dev/vg01/appb 0 /dev/vg02/appc 0

Diese Zeile herauszufinden, kostete mich einige Stunden an Recherchen. Es gibt zwar eine Dokumentation von Heinz Mauelshagen in Form einer Vortragsfolie, doch die Einzelheiten muss man sich zusammenreinen. So ist die zweite Zahl die Anzahl der Sektoren der neuen Partition. Den Rest kann man anhand der Folie nachvollziehen.

Mit folgendem Kommando wird die Partition zum Leben erweckt:

dmsetup create app /etc/dmtab

Zuvor muss man dmsetup mit apt-get dmsetup installiert haben. Das Resultat ist eine neue Partition /dev/mapper/app mit rund 700 GB Größe. Diese kann man mit einem Dateisystem seiner Wahl formatieren, z.B. mkfs.xfs /dev/mapper/app. Ich mounte die Partition nach /app, und df -T meldet den Erfolg:

/dev/mapper/app xfs 716668928 528 716668400 1% /app

Um das Array permanent zu machen, müssen wir in einer init-Datei festlegen, dass dmsetup aufgerufen werden muss. Dies scheint von Debian noch nicht vorgesehen zu sein, so dass ich mir damit behalf, dass ich die obige Zeile mit dmsetup in /etc/init.d/lvm einbaute, und zwar ans Ende des start-Zweiges.

Funktionstests

Online-Resizing der Partitionen

Ursprünglich hatte ich die Root-Partition nur 1 GB groß gemacht. Selbst ich war erstaunt, als ich feststellte, dass ich die Root-Partition ohne Unmount oder Reboot vergrößern konnte, also im laufenden Betrieb:

# df /dev/mapper/vg00-roota
Dateisystem 1K-Blöcke Benutzt Verfügbar Ben% Eingehängt auf
/dev/mapper/vg00-roota
 1019200 610992 408208 60% /
# lvresize -L 1500 /dev/vg00/roota
# xfs_growfs -d /
df /dev/mapper/vg00-roota
Dateisystem 1K-Blöcke Benutzt Verfügbar Ben% Eingehängt auf
/dev/mapper/vg00-roota
 1531200 695936 835264 46% /

Wiederherstellung des RAID

Was passiert, wenn das RAID einen Schaden hat? Diesen Test muss ich auf später verschieben, da ich bisher nicht herausfinden konnte, wie man in diesem Fall vorgeht.

Kommentare (Insgesamt: 0 )
Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten
Werbung