BSD-Wiki

Mitschrift einer FreeBSD-Installation

Benutzer-Werkzeuge

Webseiten-Werkzeuge


raid

Allgemein

Über RAID-Systeme können Festplatten in einem „Bündel“ zusammen gepackt werden. Je nach RAID-Level kann somit die Performace gesteigert oder die Ausfallsicherheit der Festplatten erhöht werden. Die Beschreibung der verschiedenen RAID-Level ist in entsprechender Lektüre zu finden.

GPT und RAID

Das Partitionsschema GPT legt seine Daten nicht nur in den ersten Sektoren der Festplatte ab (wie dies z.B. MBR tut) sondern als Backup ebenfalls in den letzten Sektoren der Festplatte. Die Tatsache, dass die Metadaten des GEOM-Softraides ebenfalls in den letzten Sektoren abgelegt werden führt hier zu Problemen wenn eine bereits partitionierte Festpaltte in ein RAID überführt werden soll. In diesem Fall ist es notwendig die noch unpartitionierte, rohe Festplatte zunächst in den RAID zu setzen und im Nachgang die Partitionierung des RAIDs vorzunehmen.

RAID1 / Mirror

RAID1 dient der Erhöhung der Ausfallsicherheit von Festplatten indem die Daten gespiegelt (mirroring) werden. Die Lesezugriffe können durch RAID1 beschleunigt werden, die Schreibzugriffe werden jedoch nicht schneller.

Bestehendes System in ein RAID1 wandeln

Im Weiteren wird beschrieben wie ein auf eine MBR-Partitionierte Festplatte installiertes FreeBSD ohne RAID in einen RAID1-Mirror verwandelt wird. Dies ist in dieser Weise nicht möglich wenn die Festplatte mit GPT partitioniert wurde (Siehe Hinweise in entsprechendem Abschnitt). Hierzu wird die Software-RAID-Lösung GEOM_MIRROR verwendet welche ein Bestandteil von FreeBSD ist.

Das installierte System soll der gezeigten Struktur entsprechen:

/dev/ad4s1a on /
/dev/ad4s1e on /tmp
/dev/ad4s1f on /usr
/dev/ad4s1d on /var

Als zweite RAID-Platte zusätzlich zu ad4 soll die Platte ad8 dienen.

BACKUP

Zunächst muss ein Backup des Systems erzeugt werden!! Die Umwandlung in ein RAID ist nicht ohne Risiken für die Daten!

Erzeugen des Mirrors

Da der Mirror auf einer Boot-Platte erzeugt werden soll wird dieser Schritt über ein Live-System durchgeführt. Das Umwandeln einer Partition in einen RAID ist ein kritischer Eingriff in die Datenstruktur einer Festplatte und sollte nicht im aktiven Betrieb dieser Platte erfolgen!

Ins Live-System booten

Es wird ein aktuelles FreeBSD-Livesystem gebootet. Zum Beispiel ein selbst erstelltes FreeBSD auf USB-Stick.

Nach der neuerlichen Kontrolle ob die Devicenamen stimmen(!!) wird nun ein neues GEOM_MIRROR-Device angelegt. Das Device trägt den Namen gm und erhält das Laufwerk /dev/ad4 als erstes RAID-Laufwerk. Somit ist sicher gestellt, dass alle später hinzu kommenden Laufwerke die Daten von ad4 übernehmen.

# gmirror label -vb round-robin gm0 /dev/ad4

Anschließend wird gmirror geladen. Hiermit wird das RAID initialisiert und das benötigte Kernelmodul geladen.

# gmirror load

Nun sollte das RAID unter /dev/mirror erzeugt sein.

Anpassen der loader.conf

Damit das System mit dem Spiegel starten kann muss noch die /boot/loader.conf angepasst werden. Hierzu ist das Device zu mounten. Anschließend wird /boot/loader.conf wie folgt ergänzt um das notwendige Kernelmodul beim Systemstart zu laden. Ohne dieses kann das System nicht auf den RAID-Verband zugreifen.

geom_mirror_load="YES"

Anpassen der fstab

Da der RAID unter dem Namen /dev/mirror/gm0 angelegt wurde ist nun noch die /etc/fstab wie folgt anzupassen.

Sei dies ist originale /etc/fstab

/dev/ad4s1b     none                                swap      sw        0   0
/dev/ad4s1a     /                                   ufs       rw        1   1
/dev/ad4s1e     /tmp                                ufs       rw        2   2
/dev/ad4s1f     /usr                                ufs       rw        2   2
/dev/ad4s1d     /var                                ufs       rw        2   2

so ist sie folgend anzupassen:

/dev/mirror/gm0s1b     none                                swap      sw        0   0
/dev/mirror/gm0s1a     /                                   ufs       rw        1   1
/dev/mirror/gm0s1e     /tmp                                ufs       rw        2   2
/dev/mirror/gm0s1f     /usr                                ufs       rw        2   2
/dev/mirror/gm0s1d     /var                                ufs       rw        2   2

Booten in den Mirror

Nachdem alle Änderungen durchgeführt wurden kann nun in den Mirror gestartet werden. Hierzu wird der Rechner einfach neu gestartet.

Spiegelplatten hinzufügen

Im neu gestarteten System sollten nun die Systempartitionen über /dev/mirror laufen.

Um nun die zweite Platte ad8 in den RAID aufzunehmen (und erst wirklich den RAID herzustellen) wird diese nun hinzugefügt:

# gmirror insert gm0 /dev/ad8

Nun wird die neue Platte an den RAID-Verband ansynchronisiert. Auf diesem Weg können später noch mehr Platten hinzugefügt werden. Um den Status des RAIDs und der Synchronisierung zu sehen kann folgender Aufruf verwendet werden.

# gmirror status
raid.txt · Zuletzt geändert: 2017/10/02 13:40 (Externe Bearbeitung)

Impressum