Linux-Software-RAID
16. Juni 2022Hardware-RAID hat viele Vorteile. Es sei denn, Sie betreiben eine große Infrastruktur und benötigen wirklich die Vorteile von HW-RAID für eine Unternehmenslösung, Ich bevorzuge ein Software-Linux-RAID namens mdadm, weil es viele praktische Vorteile bietet. In diesem Tutorial beschreibe ich die Vorteile und die Verwendung von mdadm.
Was ein RAID ist, können Sie auf Wikipedia nachlesen. Ich möchte nur darauf hinweisen, dass die Leute oft verschiedene Begriffe und Eindrücke verwechseln, daher ist es eine gute Idee, die genauen Begriffe zu studieren. RAID ist keine Datensicherung. RAID wird verwendet, um entweder Festplattenspeicher zu konsolidieren oder um eine höhere Verfügbarkeit oder bessere Leistung zu erreichen. Einige Motherboards werden mit RAID verkauft, aber in Wirklichkeit handelt es sich um Software-RAID + Windows-Treiber. Ein solches RAID wird als fake RAID bezeichnet.
Welches RAID soll verwendet werden? RAID 0, RAID 1, RAID 5, RAID 6, RAID 10. RAID 1 ist aufgrund der Datenredundanz, der Benutzerfreundlichkeit und der Tatsache, dass nur eine zusätzliche Festplatte benötigt wird, die häufigste Wahl. Andererseits ist RAID 0 für sich genommen eine völlig ungeeignete Wahl für den Einsatz auf Servern, da es die Sicherheit der Datenspeicherung verringert. Seine Verwendung ist nur dann angebracht, wenn wir bereit sind, einen Ausfall oder Verlust von Daten zuzulassen - d.h. Datensicherung.
Video-RAID
Eine verbale Beschreibung, was RAID ist und was nicht, finden Sie in diesem Video:
Linux-Software-RAID
Linux Software-RAID, genannt mdadm, ist eine Lösung, die sich auf der Linux-Kernel-Ebene befindet.
-
Seine Hauptvorteile sind:
- Stabilität .
- Unabhängigkeit von HW
- Transparenz
- Migrationsmöglichkeit zwischen verschiedenen HWs und Linux-Distributionen
Übrigens, wenn Sie RAID benötigen, können Sie nicht nur mdadm sondern auch das BTRFS-Dateisystem oder die LVM-Technologie.
Festplattenpartitionierung
Die Größe der Partition ist individuell auf Ihre Bedürfnisse abgestimmt. Sie können die Tools fdisk, cfdisk, parted oder das grafische gparted zum Partitionieren verwenden.
Wie kann man partitionieren? Wir können die Partitionierung sicher aus dem bestehenden System ableiten, aber mit Blick auf RAID ist es vielleicht besser, nur eine große Partition über die gesamte Platte zu wählen. Der Grund für eine einzelne Partition mit RAID auf jeder Platte ist die Leistung. Das liegt daran, dass der RAID-Treiber versucht, die Lesevorgänge aus dem Array zu optimieren und entweder von der ersten Platte liest, die nichts tut, oder von der Platte, von der er zuletzt den Zugriff auf die nächstgelegene Partition angefordert hat. (Die Situation wird für RAID1 beschrieben) Da der letzte Bereich, auf den zugegriffen wurde, in den Informationen über jedes RAID-Array gespeichert ist, verhält sich dieser Algorithmus bei mehreren Arrays auf einer einzigen Platte nicht sehr effizient.
Sie können ein identisches Layout auf einer zweiten Platte erstellen, indem Sie einfach diesen Befehl verwenden:
sfdisk -d /dev/sda | sfdisk /dev/sdb
Erstellen eines RAID
RAID 1 aus zwei Festplatten erstellen
mdadm --create /dev/md1 l 1 -n 2 /dev/sda1 /dev/sdb2
Auf diesem neu erstellten Block-Device können Sie dann zum Beispiel ein JFS-Dateisystem anlegen, das Gerät in eine Verzeichnisstruktur einhängen und mit dem Speichern von Daten beginnen.
Erstellen Sie ein RAID 5, das eigentlich drei Festplatten haben sollte, aber wir haben bisher nur zwei:
mdadm --create /dev/md/data -l5 -n3 /dev/sdb3 /dev/sdd3 fehlt
Hinzufügen einer Festplatte
Fügen Sie eine unbenutzte neue Festplatte zum RAID hinzu:
mdadm /dev/md0 --add /dev/sdc1
Entfernen der Festplatte
Der Datenträger kann vom System als defekt markiert werden oder wir können ihn manuell markieren:
mdadm /dev/md0 --fail /dev/sdc1
Entfernen einer fehlerhaften Festplatte aus dem RAID:
mdadm /dev/md0 --remove /dev/sdb1 /dev/sdc1
Wenn die Platte physisch vom Server entfernt wird, muss sie trotzdem aus dem RAID im System entfernt werden. Denn sonst gilt sie beim Anschluss an einen PC weiterhin als verwendet.
Konfiguration speichern
Es ist eine gute Idee, die Konfiguration aller RAIDs in einer Konfigurationsdatei zu speichern.
Wir können das System pro-scannen und die Ausgabe direkt am Ende der Konfigurationsdatei hinterlassen:
mdadm --detail --scan >> /etc/mdadm/mdadm.confOder machen Sie das Gleiche für ein bestimmtes Plattenarray:
mdadm --detail /dev/md1 --brief >>/etc/mdadm.conf
Es ist auch eine gute Idee, den mdadm-Dienst zu aktivieren:
systemctl enable mdadm.service
Auslagern eines RAID
Wie tauscht man ein RAID aus?
-
Es gibt zwei Ansätze:
- Swap auf RAID legen
- Swap auf RAID1 legen
Es ist nicht ratsam, Swap auf ein Software-RAID zu legen, da es zu einem Deadlock kommen kann, wenn dem System der freie Speicher ausgeht. Mir persönlich ist das noch nie passiert.
Wenn Sie ein Software-RAID 1 betreiben, um eine höhere Verfügbarkeit zu erreichen, und den Swap nicht auf RAID 1 setzen, dann bedeutet der Tod einer Festplatte einen Ausfall. Wenn Sie auf RAID 1 auslagern, ist das kein Problem.
Ich lasse Swap auf RAID1 laufen.
Überprüfung des RAID-Status
Sie können eine Liste und Details aller RAIDs mit dem folgenden Befehl abrufen:
cat /proc/mdstat
Starten Sie die Datenprüfung auf dem RAID:
echo "check" > /sys/block/md1/md/sync_action
Befehl zum Starten der RAID-Synchronisation:
echo repair >/sys/block/md<#>/md/sync_action
In dieser Datei des jeweiligen RAIDs lässt sich die Anzahl der Fehler nachvollziehen:
cat /sys/block/md*/md/mismatch_cnt
Wenn Ihr System das Disk-Array beim Booten nicht automatisch faltet, zum Beispiel wenn Sie von einer Rettungs-CD booten, können Sie es mit diesem Befehl manuell falten:
mdadm --assemble --verbose /dev/md1 /dev/sdb1
Stoppen des RAID-Verbunds:
mdadm --stop /dev/mdXi
Entfernen Sie die RAID-Informationen von der Platte:
mdadm --zero-superblock /dev/XTun Sie dies, wenn Sie das RAID auf der Festplatte ungültig gemacht haben. Dadurch werden alle RAID-Metadaten gelöscht und das System betrachtet die Platte nicht mehr als zu einem RAID gehörig.
Wenn Sie den Server auf RAID migrieren, müssen Sie sicherstellen, dass Sie die Konfiguration im Bootloader aktualisiert haben, fstab-Datei aktualisiert und eine neue initramfs-Datei erstellt haben, sonst können Sie nicht erfolgreich booten.
Backup
Stellen Sie sicher, dass Sie einen Bootloader (typischerweise GRUB) einrichten und ihn auf alle Festplatten schreiben. Andernfalls kann es zu Problemen beim Booten des Servers kommen, wenn kein Bootloader vorhanden ist.
Mdadm-Handbuch
Video-Tutorial, wie man ein Linux-Software-RAID1 erstellt:
Andere Ressourcen und Themen
Weitere Anleitungen zu Linux-Servern finden Sie in diesem ebook.
Das nächste Mal werde ich auf die Informationen zum Logical Volume Management eingehen.
Artikel zu einem ähnlichen Thema
VMware vs. Proxmox: Leistungsvergleich
GitLab CI/CD: Testautomatisierung und Anwendungsbereitstellung
VPS von VMware zu Proxmox migrieren
VMware-Lizenzierungsänderung
Ausführen von Microsoft SQL Server unter Linux
Sicherung: der Proxmox Backup Server
Linux als Router und Firewall
Hochladen eines Docker-Images in die Docker-Registry
Linux: Verwaltung logischer Datenträger
Ausführen einer Webanwendung hinter einem Proxy
Migration von Postfächern
Mehrstufige Docker-Erstellung
Sichern Ihrer Daten durch Einschalten des Computers
Podman
Importieren von Windows in die Proxmox-Virtualisierung
Docker und PHP-Mail
Proxmox-Virtualisierung
Docker und Cron
Lenovo ThinkPad X1 Carbon: Inbetriebnahme des LTE-Modems EM7544
Yocto-Projekt: Erstellen eines eigenen Betriebssystems für eingebettete Geräte
Vorbereiten eines Linux-Servers für die Ausführung einer Webanwendung in Python
Wie man eine schlechte Dateifreigabeleistung in Docker behebt
Wie man Docker richtig einsetzt
Installation von Linux auf einem dedizierten HPE ProLiant DL320e Server
Wie man eine Webanwendung einem Belastungstest unterzieht
Warum das JFS-Dateisystem verwenden
Booten von einer 4TB-Festplatte mit GTP unter UEFI
Btrfs-Dateisystem
Raspberry PI
WINE - Ausführen von Windous Programmen unter Linux
GNU/Linux-Betriebssystem
Newsletter
Wenn Sie daran interessiert sind, gelegentlich Neuigkeiten per E-Mail zu erhalten.
Sie können sich registrieren, indem Sie Ihre E-Mail-Adresse eingeben
News-Abonnement.
+