Hinweis:

Software-RAID-Array auf Oracle Linux erstellen

Einführung

Ein Redundanzarray mit unabhängigen Datenträgern oder RAID-Geräten ist ein virtuelles Gerät, das aus zwei oder mehr realen Blockgeräten erstellt wurde. Durch diese Funktion können mehrere Geräte (in der Regel Laufwerke oder Partitionen einer Festplatte) zu einem einzigen Gerät kombiniert werden, um ein einzelnes Dateisystem aufzunehmen. Einige RAID-Ebenen umfassen Redundanz, sodass das Dateisystem einen gewissen Grad an Gerätefehlern überlebt.

Der Oracle Linux-Kernel verwendet den MD-(Multiple Device-)Treiber zur Unterstützung von Linux-Software-RAID, mit dem Sie Festplattenlaufwerke in RAID-Geräte organisieren und verschiedene RAID-Ebenen implementieren können.

Weitere Informationen zu diesen verschiedenen RAID-Ebenen finden Sie in der Oracle-Dokumentation.

Dieses Tutorial arbeitet mit dem MD-Dienstprogramm (mdadm) zusammen, um ein RAID1-Gerät mit einem Ersatzgerät zu erstellen und dann einen Datenträgerfehler zu beheben.

Ziele

Voraussetzungen

Jedes Oracle Linux 8-System mit den folgenden Konfigurationen:

Laborumgebung einrichten

Hinweis: Wenn Sie die kostenlose Übungsumgebung verwenden, finden Sie unter Oracle Linux Lab - Grundlagen Informationen zu Verbindungen und anderen Nutzungsanweisungen.

  1. Wenn noch nicht geschehen, öffnen Sie ein Terminal und verbinden Sie mit jeder oben genannten Instanz über ssh.

    ssh oracle@<ip_address_of_instance>
    
  2. Prüfen Sie, ob die Block-Volumes vorhanden sind.

    sudo lsblk
    

    In der Ausgabe für die freie Übungsumgebung müssen /dev/sda für das vorhandene Dateisystem und die verfügbaren Datenträger /dev/sdb, /dev/sdc und /dev/sdd angezeigt werden.

MD-Dienstprogramm installieren

  1. Falls noch nicht auf dem System verfügbar, installieren Sie das MD-Dienstprogramm.

    Prüfen Sie, ob mdadm installiert ist.

    sudo dnf list --installed mdadm
    

    Falls nicht installiert, installieren Sie mdadm.

    sudo dnf -y install mdadm
    

    Hinweis: In der kostenlosen Laborumgebung ist das MD-Dienstprogramm bereits installiert.

Erstellen Sie ein RAID-Gerät.

RAID1 bietet Datenredundanz und Resilienz, indem identische Daten in jedes Laufwerk im Array geschrieben werden. Wenn ein Laufwerk ausfällt, kann ein Mirror I/O-Anforderungen erfüllen. Das Mirroring ist eine aufwendige Lösung, da das System dieselben Informationen auf alle Datenträger im Array schreibt.

Funktionen von RAID1:

  1. Listen Sie die Optionen auf, die zum Erstellen eines RAID-Geräts verfügbar sind.

    Wenn Sie mdadm --help verwenden, wird die Option --create verwendet, um ein neues Array aus nicht verwendeten Geräten zu erstellen.

    sudo mdadm --create --help
    
  2. Erstellen Sie ein RAID1-Gerät mit einer Ersatzfestplatte.

    sudo mdadm --create --verbose /dev/md0 --level=1 --raid-devices=2 /dev/sdb /dev/sdc --spare-devices=1 /dev/sdd
    
    • --create:: Erstellt das neue Array
    • --level: Die Raid-Ebene
    • --raid-devices: Die Anzahl der aktiven Geräte im Array
    • --spare-devices: Die Anzahl der Ersatzgeräte (Extrageräte) im anfänglichen Array

    In diesem Befehl heißt das Gerät (Array) /dev/md0 und erstellt das Gerät RAID1 mit /dev/sdb und /dev/sdc. Das Gerät /dev/sdd wird automatisch als Ersatz für die Wiederherstellung nach einem Ausfall eines aktiven Geräts verwendet.

    Akzeptieren Sie die Eingabeaufforderung Continue creating array?, indem Sie y eingeben und ENTER drücken.

    Beispielausgabe:

    [oracle@ol-mdadm-2022-06-04-180415 ~]$ sudo mdadm --create --verbose /dev/md0 --level=1 --raid-devices=2 /dev/sdb /dev/sdc --spare-devices=1 /dev/sdd
    mdadm: Note: this array has metadata at the start and
        may not be suitable as a boot device.  If you plan to
        store '/boot' on this device please ensure that
        your boot-loader understands md/v1.x metadata, or use
        --metadata=0.90
    mdadm: size set to 52395008K
    Continue creating array? y
    mdadm: Defaulting to version 1.2 metadata
    mdadm: array /dev/md0 started.
    

Dateisystem erstellen

  1. Erstellen Sie ein ext4-Dateisystem auf dem RAID-Gerät, und hängen Sie es ein.

    sudo mkfs.ext4 -F /dev/md0
    sudo mkdir /u01
    sudo mount /dev/md0 /u01
    
    
  2. Melden Sie die Verwendung des Dateisystemdatenträgers.

    df -h
    

    Beispielausgabe:

    [oracle@ol-mdadm-2022-06-04-180415 ~]$ df -h
    Filesystem                  Size  Used Avail Use% Mounted on
    ...
    /dev/md0                     49G   53M   47G   1% /u01
    
  3. Fügen Sie einen Eintrag zu /etc/fstab hinzu, damit der Einhängepunkt auch nach einem Neustart beibehalten wird.

    echo "/dev/md0    /data01    ext4    defaults    0 0" | sudo tee -a /etc/fstab > /dev/null
    

RAID-Gerät prüfen

  1. Ruft Details zum Array ab.

    sudo mdadm --detail /dev/md0
    

    Beispielausgabe:

    [oracle@ol-mdadm-2022-06-04-180415 ~]$ sudo mdadm --detail /dev/md0
    /dev/md0:
               Version : 1.2
         Creation Time : Sat Jun  4 20:08:32 2022
            Raid Level : raid1
            Array Size : 52395008 (49.97 GiB 53.65 GB)
         Used Dev Size : 52395008 (49.97 GiB 53.65 GB)
          Raid Devices : 2
         Total Devices : 3
           Persistence : Superblock is persistent
    
           Update Time : Sat Jun  4 20:28:58 2022
                 State : clean, resyncing 
        Active Devices : 2
       Working Devices : 3
        Failed Devices : 0
         Spare Devices : 1
    
    Consistency Policy : resync
    
         Resync Status : 59% complete
    
                  Name : ol-mdadm-2022-06-04-180415:0  (local to host ol-mdadm-2022-06-04-180415)
                  UUID : f6c35144:66a24ae9:5b96e616:f7252a9f
                Events : 9
    
        Number   Major   Minor   RaidDevice State
           0       8       16        0      active sync   /dev/sdb
           1       8       32        1      active sync   /dev/sdc
    
           2       8       48        -      spare   /dev/sdd
    

    In der Ausgabe zeigt State, dass das Array sauber und neu synchronisiert ist. Die Wolken werden immer nach der ersten Erstellung des Arrays oder nach der Wiederherstellung gespeichert. Die Ausgabe zeigt, dass die Neusynchronisation zu 59 % abgeschlossen ist.

  2. Überprüfen Sie Echtzeitinformationen vom Kernel.

    sudo cat /proc/mdstat
    

    Beispielausgabe:

    [oracle@ol-mdadm-2022-06-04-180415 ~]$ cat /proc/mdstat 
    Personalities : [raid1] 
    md0 : active raid1 sdd[2](S) sdc[1] sdb[0]
          52395008 blocks super 1.2 [2/2] [UU]
          [==================>..]  resync = 92.2% (48341824/52395008) finish=2.7min speed=24677K/sec
          
    unused devices: <none>
    

RAID-Konfigurationsdatei erstellen

  1. (Optional) Fügen Sie die RAID-Konfiguration zu /etc/mdadm.conf hinzu

    Die Konfigurationsdatei gibt an, welche Geräte RAID-Geräte sind und zu welchem Array ein bestimmtes Gerät gehört. Auf Basis dieser Konfigurationsdatei kann mdadm die Arrays beim Booten assemblieren.

    sudo mdadm --examine --scan | sudo tee -a /etc/mdadm.conf
    

    Beispielausgabe:

    [oracle@ol-mdadm-2022-06-04-180415 ~]$ sudo mdadm --examine --scan | sudo tee -a /etc/mdadm.conf
    ARRAY /dev/md/0  metadata=1.2 UUID=f6c35144:66a24ae9:5b96e616:f7252a9f name=ol-mdadm-2022-06-04-180415:0
       spares=1
    

RAID-Geräte verwalten

Diese Optionen dienen zur Verwaltung der Komponentengeräte innerhalb eines Arrays, beispielsweise zum Hinzufügen, Entfernen oder Faultieren von Geräten.

  1. Listen Sie die Optionen auf, die zur Verwaltung eines RAID-Geräts verfügbar sind.

    sudo mdadm --manage --help
    
    • --add: Hotadd für nachfolgende Geräte.
    • --remove: Entfernen Sie nachfolgende nicht aktive Geräte.
    • --fail: Markieren Sie nachfolgende Geräte als fehlerhaft.
  2. Synchronisieren Sie zwischengespeicherte Schreibvorgänge mit dem persistenten Speicher.

    Dies ist erforderlich, bevor Sie eine Datenträgerverwaltung ausführen, um sicherzustellen, dass alle Datenträgercaches auf den Datenträger geschrieben werden.

    sudo sync
    
  3. Markieren Sie einen Datenträger als nicht erfolgreich.

    sudo mdadm --manage /dev/md0 --fail /dev/sdb
    
  4. Array-Details abrufen.

    sudo mdadm --detail /dev/md0 
    

    Beispielausgabe:

    [oracle@ol-mdadm-2022-06-04-180415 ~]$ sudo mdadm --detail /dev/md0 
    /dev/md0:
               Version : 1.2
         Creation Time : Sat Jun  4 20:08:32 2022
            Raid Level : raid1
            Array Size : 52395008 (49.97 GiB 53.65 GB)
         Used Dev Size : 52395008 (49.97 GiB 53.65 GB)
          Raid Devices : 2
         Total Devices : 3
           Persistence : Superblock is persistent
    
           Update Time : Sat Jun  4 21:34:19 2022
                 State : clean, degraded, recovering 
        Active Devices : 1
       Working Devices : 2
        Failed Devices : 1
         Spare Devices : 1
    
    Consistency Policy : resync
    
        Rebuild Status : 1% complete
    
                  Name : ol-mdadm-2022-06-04-180415:0  (local to host ol-mdadm-2022-06-04-180415)
                  UUID : f6c35144:66a24ae9:5b96e616:f7252a9f
                Events : 19
    
        Number   Major   Minor   RaidDevice State
           2       8       48        0      spare rebuilding   /dev/sdd
           1       8       32        1      active sync   /dev/sdc
    
           0       8       16        -      faulty   /dev/sdb
    

    Das Array ist als degraded und recovering markiert. Die Ausgabe zeigt außerdem, dass das Ersatzgerät /dev/sdd das Array automatisch neu erstellt, während /dev/sdb fehlerhaft ist.

  5. Entfernen Sie die ausgefallene Festplatte.

    sudo mdadm --manage /dev/md0 --remove /dev/sdb
    
  6. Ersetzen Sie die ausgefallene Festplatte.

    Ersetzen Sie die ausgefallene physische Festplatte des Servers durch eine neue.

    Hinweis: Bei Verwendung der kostenlosen Übungsumgebung ist für diesen Schritt nichts zu tun. Die Übung stellt das vorhandene dev/sdb-Gerät wieder her.

  7. Entfernen Sie die vorherige linux_raid_member-Signatur.

    Eine Signatur (Metadaten) wird bei Verwendung in einem RAID-Array auf einen Datenträger geschrieben, und der Datenträger kann erst in ein anderes System verschoben oder erneut bereitgestellt werden, wenn diese Signaturen entfernt wurden.

    sudo wipefs -a -f /dev/sdb
    

    Warnung: Der Befehl wipefs ist destruktiv und entfernt die gesamte Partitionstabelle auf dem Zieldatenträger (/dev/sdb) und eventuell vorhandenen Signaturen.

  8. Fügen Sie dem Array ein neues Ersatzteil hinzu.

    sudo mdadm --manage /dev/md0 --add /dev/sdb
    
  9. Prüfen Sie, ob die Ersatzfestplatte vorhanden ist.

    sudo mdadm --detail /dev/md0 
    

    Unten in der Ausgabe sollte das Gerät /dev/sdb in der Liste angezeigt werden, wobei der Status auf spare gesetzt ist.

Weitere Informationen:

Weitere Lernressourcen

Sehen Sie sich andere Übungen auf der Website docs.oracle.com/learn an, oder greifen Sie auf Inhalte zu, die Sie über den Oracle Learning-Kanal YouTube benötigen. Besuchen Sie außerdem education.oracle.com/learning-explorer, um Oracle Learning Explorer zu werden.

Produktdokumentation finden Sie unter Oracle Help Center.