GNU/Linux >> LINUX-Kenntnisse >  >> Linux

RedHat / CentOS :Verwalten von Software-RAID mit mdadm

Grundlagen

mdadm (Administrator mehrerer Geräte) ist ein äußerst nützliches Tool zum Ausführen von RAID-Systemen. Es ist ein Tool zum Erstellen, Verwalten und Überwachen von RAID-Geräten mit dem md-Treiber. Es kann als Ersatz für die Raidtools oder als Ergänzung verwendet werden. Sie können ganze Laufwerke (/dev/sdb, /dev/sdc) oder einzelne Partitionen (/dev/sdb1, /dev/sdc1) als Komponente eines Arrays verwenden.

Die Vorteile der Verwendung von mdadm sind:
1. mdadm kann Ihre Arrays diagnostizieren, überwachen und detaillierte Informationen darüber sammeln.
2. mdadm ist ein einzelnes zentralisiertes Programm und keine Sammlung verstreuter Programme, daher gibt es eine gemeinsame Syntax für jeden RAID-Verwaltungsbefehl.
3. mdadm kann fast alle seine Funktionen ausführen, ohne eine Konfigurationsdatei zu haben und verwendet standardmäßig keine.

mdadm-Softwaretools funktionieren für alle Linux-Distributionen mit derselben Syntax.

mdadm installieren

Stellen Sie sicher, dass Sie ein System-Update durchführen und installieren Sie dann das neueste mdadm-Programm auf Ihrem System:

# yum clean all
# yum update
# yum install mdadm -y

Die Konfigurationsdatei

– Die Datei /etc/mdadm.conf wird verwendet, um zu identifizieren, welche Geräte RAID-Geräte sind und zu welchem ​​Array ein bestimmtes Gerät gehört. Dies ist erforderlich, um Ihre RAID-Geräte beim Booten automatisch zu erstellen.
– Diese Datei ist standardmäßig nicht verfügbar und muss manuell erstellt werden.
– Nachdem Sie die RAID-Geräte erstellt haben, können Sie dies tun Erstellen Sie einfach die Datei mdadm.conf, indem Sie die Ausgabe des Befehls :

umleiten
# mdadm --detail -scan
ARRAY /dev/md0 level=linear num-devices=2 metadata=1.2 name=localhost.localdomain:0 UUID=a50ac9f2:62646d92:725255bd:7f9d30e3
   devices=/dev/sdb,/dev/sdc

Wie in der obigen Ausgabe zu sehen ist, habe ich ein lineares Array md0 mit 2 Geräten /dev/sdb und /dev/sdc.

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

Erstellen der RAID-Geräte

Um die Optionen zum Erstellen eines RAID-Geräts mit mdadm aufzulisten, verwenden Sie die Option –help. Beim Erstellen von RAID mit mdadm gibt es mehrere Optionen. Ich werde einige wichtige auflisten.

# mdadm --create --help
	-C | --create /dev/mdn
	-l | --level  0|1|4|5
	-n | --raid-devices device [..]
	-x | --spare-devices device [..]

Linearer Modus
– Zwei oder mehr Laufwerke werden zu einem physischen Gerät kombiniert.
– Die Laufwerke werden aneinander „angehängt“, sodass das lineare Schreiben auf das RAID-Gerät zuerst Laufwerk 0 füllt, dann Laufwerk 1 und so weiter on.
– Die Festplatten müssen nicht gleich groß sein.
– Auf dieser Ebene gibt es keine Redundanz.
– Die Lese- und Schreibleistung wird bei einzelnen Lese-/Schreibvorgängen nicht erhöht . Aber wenn mehrere Benutzer das Gerät verwenden, mehrere Benutzer gleichzeitig verschiedene Festplatten verwenden, werden Sie einen Leistungsgewinn feststellen.

Um zwei Festplatten im linearen Modus mit mdadm zu erstellen, geben Sie einfach eine einzige Befehlszeile ein:

# mdadm --create --verbose /dev/md0 --level=linear --raid-devices=2 /dev/sdb /dev/sdc
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md0 started.

Derselbe Befehl kann mit der kürzeren Version der Optionen ausgeführt werden:

# mdadm --Cv /dev/md0 --l linear -n2 /dev/sdb /dev/sdc

RAID 0
– Auch „Stripe“-Modus genannt.
– Die Geräte sollten die gleiche Größe haben.
– Auch in dieser Ebene gibt es keine Redundanz. Bei Ausfall eines Laufwerks ist keine Datenrettung möglich.
– Die Lese- und Schreibleistung wird erhöht, da auf den Geräten parallel gelesen und geschrieben wird.

So erstellen Sie zwei Laufwerke im RAID 0-Modus:

# mdadm --create --verbose /dev/md0 --level=0 --raid-devices=2 /dev/sdb /dev/sdc

RAID 1
– Diese Ebene ist redundant.
– RAID-1 kann auf zwei oder mehr Festplatten mit null oder mehr Ersatzfestplatten verwendet werden.
– Dieser Modus behält eine exakte Spiegelung der Informationen auf einer bei Festplatte auf die andere(n) Festplatte(n).
– Natürlich müssen die Festplatten gleich groß sein.
– Wenn eine Festplatte größer als die andere ist, hat Ihr RAID-Gerät die Größe der kleinsten Festplatte.
– Wenn bis zu N-1 Festplatten entfernt werden (oder abstürzen), sind alle Daten noch intakt. Wenn Ersatzfestplatten verfügbar sind und das System den Absturz überstanden hat, beginnt die Rekonstruktion der Spiegelung sofort auf einer der Ersatzfestplatten, nachdem der Laufwerksfehler erkannt wurde.
– Die Schreibleistung ist oft schlechter als auf einer einzelnen Gerät, da dieselben Daten gleichzeitig auf 2 oder mehr Geräte geschrieben werden müssen.

Sie können RAID 1 mit zwei Festplatten und einer Ersatzfestplatte einrichten:

# mdadm --create --verbose /dev/md0 --level=1 --raid-devices=2 /dev/sdb /dev/sdc --spare-devices=/dev/sdd

RAID 4
– Dieses RAID-Level wird nicht sehr oft verwendet.
– Es kann auf drei oder mehr Laufwerken verwendet werden.
– Anstatt die Informationen vollständig zu spiegeln, behält es die Paritätsinformationen auf einem Laufwerk und schreibt Daten auf RAID-0-ähnliche Weise auf die anderen Festplatten.
– Da eine Festplatte für Paritätsinformationen reserviert ist, beträgt die Größe des Arrays (N-1)*S, wobei S die Größe von ist kleinstes Laufwerk im Array.
– Wenn ein Laufwerk ausfällt, können die Paritätsinformationen verwendet werden, um alle Daten zu rekonstruieren. Wenn zwei Laufwerke ausfallen, gehen alle Daten verloren.

So richten Sie RAID 4 mit 4 Festplatten und einer Ersatzfestplatte ein:

# mdadm --create --verbose /dev/md0 --level=4 --raid-devices=4 /dev/sdb /dev/sdc /dev/sdd /dev/sde  spare-devices=/dev/sdf

RAID 5
– RAID-5 kann auf drei oder mehr Festplatten mit null oder mehr Ersatzfestplatten verwendet werden.
– Die resultierende RAID-5-Gerätegröße beträgt (N-1)*S, genau wie RAID -4.
– Der große Unterschied zwischen RAID-5 und -4 besteht darin, dass die Paritätsinformationen gleichmäßig auf die beteiligten Laufwerke verteilt werden, wodurch das Engpassproblem bei RAID-4 vermieden wird.
– Wenn einer der Festplatten ausfallen, alle Daten sind dank der Paritätsinformationen noch intakt. Wenn Ersatzfestplatten verfügbar sind, beginnt die Rekonstruktion sofort nach dem Geräteausfall. Wenn zwei Festplatten gleichzeitig ausfallen, gehen alle Daten verloren. RAID-5 kann einen Festplattenausfall überstehen, aber nicht zwei oder mehr.
– Lesevorgänge ähneln RAID-0-Lesevorgängen, Schreibvorgänge sind im Allgemeinen teuer, da die Parität geschrieben werden muss, was zum Overhead wird.

So richten Sie RAID 5 mit 3 Festplatten und 1 Ersatzfestplatte mit mdadm ein:

# mdadm --create --verbose /dev/md0 --level=5 --raid-devices=3 /dev/sdb /dev/sdc /dev/sdd --spare-devices=/dev/sde

Dateisystem auf RAID-Geräten erstellen

So erstellen Sie ein ext4-Dateisystem auf dem RAID-Gerät und hängen es ein:

# mkfs.ext4 /dev/md0
# mkdir /data01
# mount /dev/md0 /data01

Stellen Sie sicher, dass Sie einen Eintrag in /etc/fstab machen, damit er über Neustarts hinweg bestehen bleibt.

# vi /etc/fstab
/dev/md0	/data01		ext4	defaults	0    0

Überprüfen der Konfiguration

/proc/mdstat ist eine vom Kernel verwaltete Datei, die Echtzeitinformationen über die RAID-Arrays und -Geräte enthält.

# cat /proc/mdstat 
Personalities : [linear] 
md0 : active linear sdc[1] sdb[0]
      4194288 blocks super 1.2 0k rounding
      
unused devices: [none]

Um detaillierte Informationen zu einem bestimmten Array zu erhalten, verwenden Sie :

# mdadm --detail /dev/md0
/dev/md0:
        Version : 1.2
  Creation Time : Mon Nov  3 06:03:03 2014
     Raid Level : linear
     Array Size : 4194288 (4.00 GiB 4.29 GB)
   Raid Devices : 2
  Total Devices : 2
    Persistence : Superblock is persistent

    Update Time : Mon Nov  3 06:03:03 2014
          State : clean 
 Active Devices : 2
Working Devices : 2
 Failed Devices : 0
  Spare Devices : 0

       Rounding : 0K

           Name : localhost.localdomain:0  (local to host localhost.localdomain)
           UUID : a50ac9f2:62646d92:725255bd:7f9d30e3
         Events : 0

    Number   Major   Minor   RaidDevice State
       0       8       16        0      active sync   /dev/sdb
       1       8       32        1      active sync   /dev/sdc

Stop/Start (zusammenbauen) und RAID-Array entfernen

So stoppen Sie ein vorhandenes Array und entfernen es vollständig aus dem System:

# mdadm --stop /dev/md0
# mdadm --remove /dev/md0

So starten (assemblieren) Sie ein gestopptes Array:

# mdadm --asemble /dev/md0
HINWEIS :Der Assemble-Befehl liest die Datei /etc/mdadm.conf, um das Array zu starten. Falls Sie Ihre Konfiguration vor dem Stoppen des Arrays nicht in mdadm.conf gespeichert haben, würde dieser Befehl fehlschlagen. Sie können den folgenden Befehl verwenden, um die Datei mdadm.conf neu zu erstellen:
# mdadm –examine –scan> /etc/mdadm.conf

Geräte im Array verwalten

Hinzufügen eines Geräts
So fügen Sie dem Array ein neues Gerät hinzu:

# mdadm --add /dev/md0 /dev/sdd

Entfernen eines Geräts
Wir können ein Gerät (-f) aus einem Array fehlschlagen lassen und es dann entfernen (-r):

# mdadm --manage /dev/md0 -f /dev/sdd
# mdadm --manage /dev/mdadm -r /dev/sdd
Ersetzen einer ausgefallenen Spiegelfestplatte in einem Software-RAID-Array (mdadm)


Linux
  1. Ersetzen eines fehlerhaften RAID 6-Laufwerks mit mdadm

  2. Installieren von GRUB2 auf mdadm Software Raid in Debian Wheezy/Jessie

  3. Verwenden Sie iptables mit CentOS 7

  4. Erstellen und migrieren Sie ein vorhandenes funktionierendes RedHat-/CentOS-System auf RAID 1/RAID 10

  5. Ersetzen einer ausgefallenen Spiegelfestplatte in einem Software-RAID-Array (mdadm)

Sichern von SSH auf Redhat/Centos mit WiKID-Zwei-Faktor-Authentifizierung

Verwalten von cgroups mit systemd

Konfigurieren Sie externes RAID auf Ubuntu/Centos/RedHat

Centos vs. RedHat:15 interessante Fakten

Gewusst wie:CentOS 7 – Erstellen einer Partition mit mehr als 2 TB mit PARTED

So konfigurieren Sie einen Linux-Cluster mit 2 Knoten auf RedHat und CentOS