Hinweis:
- Dieses Tutorial ist in einer von Oracle bereitgestellten kostenlosen Übungsumgebung verfügbar.
- Es verwendet Beispielwerte für Oracle Cloud Infrastructure-Zugangsdaten, -Mandanten und -Compartments. Ersetzen Sie diese Werte durch die für Ihre Cloud-Umgebung spezifischen Werte.
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
- Erstellen Sie ein RAID1-Gerät mit einem Ersatzgerät
- Nicht erfolgreiches RAID1-Gerät wiederherstellen
Voraussetzungen
Jedes Oracle Linux 8-System mit den folgenden Konfigurationen:
- Nicht-Root-Benutzer mit Sudo-Berechtigungen
- Zusätzliche Block-Volumes zur Verwendung mit Linux Software RAID
Laborumgebung einrichten
Hinweis: Wenn Sie die kostenlose Übungsumgebung verwenden, finden Sie unter Oracle Linux Lab - Grundlagen Informationen zu Verbindungen und anderen Nutzungsanweisungen.
-
Wenn noch nicht geschehen, öffnen Sie ein Terminal und verbinden Sie mit jeder oben genannten Instanz über ssh.
ssh oracle@<ip_address_of_instance>
-
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
-
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:
- Umfasst Redundanz.
- Verwendet zwei oder mehr Festplatten mit null oder mehr Ersatzfestplatten.
- Verwaltet einen genauen Spiegel der auf jeder Platte geschriebenen Daten.
- Datenträgergeräte müssen dieselbe Größe haben.
- Wenn ein Datenträgergerät größer als ein anderes ist, entspricht das RAID-Gerät der Größe des kleinsten Datenträgers.
- Ermöglicht das Entfernen von bis zu n-1-Datenträgergeräten oder das Fehlschlagen, während alle Daten intakt bleiben.
- Sofern das System einen Absturz überlebt und Ersatzdatenträger verfügbar sind, erfolgt die Wiederherstellung der RAID1-Spiegelung automatisch und sofort nach Erkennung des Fehlers.
- Aufgrund des Schreibens derselben Daten auf mehrere Platten im Mirror-Set tritt im Vergleich zu einer einzelnen Platte eine langsamere Schreibleistung auf.
-
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
-
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 Siey
eingeben undENTER
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
-
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
-
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
-
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
-
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. -
Ü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
-
(Optional) Fügen Sie die RAID-Konfiguration zu
/etc/mdadm.conf
hinzuDie 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.
-
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.
-
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
-
Markieren Sie einen Datenträger als nicht erfolgreich.
sudo mdadm --manage /dev/md0 --fail /dev/sdb
-
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. -
Entfernen Sie die ausgefallene Festplatte.
sudo mdadm --manage /dev/md0 --remove /dev/sdb
-
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. -
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. -
Fügen Sie dem Array ein neues Ersatzteil hinzu.
sudo mdadm --manage /dev/md0 --add /dev/sdb
-
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.
Build a Software RAID Array on Oracle Linux
F58424-01
June 2022
Copyright © 2022, Oracle and/or its affiliates.