LFCS #6: Wie man Partitionen als RAID-Geräte unter Linux zusammenbaut
Die Linux Foundation hat die LFCS-Zertifizierung (Linux Foundation Certified Sysadmin) eingeführt, eine glänzende Gelegenheit für Systemadministratoren auf der ganzen Welt, durch eine leistungsbasierte Prüfung zu demonstrieren, dass sie in der Lage sind, den gesamten Betriebssupport für Linux-Systeme zu leisten: Systemsupport, Diagnose und Überwachung auf der ersten Ebene sowie bei Bedarf Eskalation von Problemen an andere Support-Teams.
Die Serie trägt den Titel Vorbereitung auf die LFCS (Linux Foundation Certified Sysadmin) Teile 1 bis 33 und behandelt die folgenden Themen:
| Nein. | Titel |
|---|---|
| Teil 1 | So verwenden Sie den Befehl 'sed', um Dateien unter Linux zu manipulieren |
| Teil 2 | So installieren und verwenden Sie Vi/Vim unter Linux |
| Teil 3 | Wie man Dateien und Anweisungen komprimiert und Dateien in Linux findet |
| Teil 4 | So partitionieren Sie Speichergeräte unter Linux |
| Teil 5 | Einbinden von (Samba- und NFS-)Dateisystemen unter Linux |
| Teil 6 | So stellen Sie Partitionen als RAID-Geräte zusammen und erstellen Systemsicherungen |
| Teil 7 | Verwalten von Systemstartprozessen und -diensten (SysVinit, systemd und upstart) |
| Teil 8 | Verwalten von Benutzern und Gruppen, Dateiberechtigungen und Sudo-Zugriff |
| Teil 9 | Linux-Paketverwaltung mit Yum, RPM, Apt, Dpkg, Aptitude und Zypper |
| Teil 10 | Erlernen grundlegender Shell-Skripterstellung und Fehlerbehebung bei Dateisystemen |
| Teil 11 | Verwalten und Erstellen von LVM mit den Befehlen vgcreate, lvcreate und lvextend |
| Teil 12 | So erkunden Sie Linux mit installierten Hilfedokumentationen und Tools |
| Teil 13 | Konfigurieren und Beheben von Problemen mit Grand Unified Bootloader (GRUB) |
| Teil 14 | Überwachen Sie die Ressourcennutzung von Linux-Prozessen und legen Sie Prozesslimits pro Benutzer fest |
| Teil 15 | Festlegen oder Ändern von Kernel-Laufzeitparametern in Linux-Systemen |
| Teil 16 | Implementierung der obligatorischen Zugriffskontrolle mit SELinux oder AppArmor unter Linux |
| Teil 17 | Festlegen von Zugriffssteuerungslisten (Access Control Lists, ACLs) und Festplattenkontingenten für Benutzer und Gruppen |
| Teil 18 | Installieren von Netzwerkdiensten und Konfigurieren des automatischen Starts beim Booten |
| Teil 19 | Eine ultimative Anleitung zum Einrichten eines FTP-Servers, um anonyme Anmeldungen zu ermöglichen |
| Teil 20 | Richten Sie einen grundlegenden DNS-Server für rekursives Caching ein und konfigurieren Sie Zonen für die Domäne |
| Teil 21 | Installieren, Sichern und Optimieren der Leistung des MariaDB-Datenbankservers |
| Teil 22 | Installieren und Konfigurieren des NFS-Servers für die gemeinsame Nutzung von Dateisystemen |
| Teil 23 | So richten Sie Apache mit namensbasiertem virtuellem Hosting mit SSL-Zertifikat ein |
| Teil 24 | So richten Sie eine iptables-Firewall ein, um den Fernzugriff auf Dienste unter Linux zu ermöglichen |
| Teil 25 | So verwandeln Sie ein Linux in einen Router, um den Datenverkehr statisch und dynamisch zu verarbeiten |
| Teil 26 | So richten Sie verschlüsselte Dateisysteme ein und tauschen sie mit dem Cryptsetup-Tool aus |
| Teil 27 | Überwachen der Systemauslastung, Ausfälle und Fehlerbehebung bei Linux-Servern |
| Teil 28 | Einrichten eines Netzwerk-Repositorys zum Installieren oder Aktualisieren von Paketen |
| Teil 29 | Prüfen der Netzwerkleistung, -sicherheit und -problembehandlung |
| Teil 30 | Installieren und Verwalten von virtuellen Maschinen und Containern |
| Teil 31 | Lernen Sie die Grundlagen von Git kennen, um Projekte effizient zu verwalten |
| Teil 32 | Ein Leitfaden für Anfänger zur Konfiguration von IPv4- und IPv6-Adressen unter Linux |
| Teil 33 | Ein Leitfaden für Anfänger zum Erstellen von Netzwerkbindung und -bridging in Ubuntu |
Dieser Beitrag ist Teil 6 einer 33-teiligen Tutorial-Reihe, hier in diesem Teil erklären wir, wie man Partitionen als RAID-Geräte zusammenstellt und Systemsicherungen erstellt und verwaltet, die für die LFCS-Zertifizierungsprüfung erforderlich sind.
RAID unter Linux verstehen
Die als Redundant Array of Independent Disks (RAID) bekannte Technologie ist eine Speicherlösung, die mehrere Festplatten zu einer einzigen logischen Einheit kombiniert, um Redundanz von Daten zu gewährleisten und/oder die Leistung bei Lese-/Schreibvorgängen auf der Festplatte zu verbessern.
Die tatsächliche Fehlertoleranz und die Datenträger-E/A-Leistung hängen jedoch davon ab, wie die Festplatten so eingerichtet sind, dass sie das Datenträgerarray bilden. Abhängig von den verfügbaren Geräten und den Anforderungen an die Fehlertoleranz/Leistung werden unterschiedliche RAID-Level definiert.
Im folgenden Artikel der RAID-Serie finden Sie eine detailliertere Erläuterung der einzelnen RAID-Level.
Installieren von mdadm unter Linux
Unser bevorzugtes Tool zum Erstellen, Zusammenstellen, Verwalten und Überwachen unserer Software-RAIDs heißt mdadm (kurz für Multiple Disks Admin).
$ sudo apt install mdadm [On Debian, Ubuntu and Mint]
sudo yum install mdadm [On RHEL/CentOS/Fedora and Rocky/AlmaLinux]
sudo zypper install mdadm [On OpenSUSE]
Zusammenstellen von Partitionen als RAID-Geräte
Der Prozess des Zusammenstellens vorhandener Partitionen als RAID-Geräte besteht aus den folgenden Schritten.
1. Erstellen eines neuen Arrays mit mdadm
Wenn eine der Partitionen bereits formatiert wurde oder zuvor Teil eines anderen RAID-Arrays war, werden Sie aufgefordert, die Erstellung des neuen Arrays zu bestätigen.
Angenommen, Sie haben die notwendigen Vorkehrungen getroffen, um den Verlust wichtiger Daten zu vermeiden, die sich möglicherweise in ihnen befunden haben, können Sie sicher y eingeben und die Eingabetaste drücken.
# mdadm --create --verbose /dev/md0 --level=stripe --raid-devices=2 /dev/sdb1 /dev/sdc1
2. Überprüfen Sie den Status der Array-Erstellung
Um den Status der Array-Erstellung zu überprüfen, verwenden Sie die folgenden Befehle – unabhängig vom RAID-Typ. Diese gelten genauso wie bei der Erstellung eines RAID0 (wie oben gezeigt) oder bei der Einrichtung eines RAID5, wie in der Abbildung unten gezeigt.
# cat /proc/mdstat
or
mdadm --detail /dev/md0 [More detailed summary]
3. RAID-Gerät formatieren
Formatieren Sie das Gerät mit einem Dateisystem gemäß Ihren Bedürfnissen/Anforderungen, wie in Teil 4 dieser Serie erläutert.
4. Überwachen des RAID-Array-Dienstes
Weisen Sie den Überwachungsdienst an, das Array im Auge zu behalten. Fügen Sie die Ausgabe von mdadm --detail --scan zu /etc/mdadm/mdadm.conf (Debian und Derivate) oder /etc/mdadm.conf (CentOS/openSUSE) hinzu, wie folgt.
# mdadm --detail --scan
# mdadm --assemble --scan [Assemble the array]
Um sicherzustellen, dass der Dienst beim Systemstart gestartet wird, führen Sie die folgenden Befehle als root aus.
# systemctl start mdmonitor
systemctl enable mdmonitor
5. Überprüfen Sie den Ausfall der RAID-Festplatte
Ersetzen Sie bei RAID-Stufen, die Redundanz unterstützen, ausgefallene Laufwerke bei Bedarf. Wenn ein Gerät im Festplatten-Array fehlerhaft wird, wird eine Neuerstellung nur dann automatisch gestartet, wenn beim ersten Erstellen des Arrays ein Ersatzgerät hinzugefügt wurde.
Andernfalls müssen wir manuell ein zusätzliches physisches Laufwerk an unser System anhängen und es ausführen.
# mdadm /dev/md0 --add /dev/sdX1
Dabei ist /dev/md0 das Array, bei dem das Problem aufgetreten ist, und /dev/sdX1 das neue Gerät.
6. Zerlegen eines funktionierenden Arrays
Möglicherweise müssen Sie dies tun, wenn Sie ein neues Array mit den Geräten erstellen müssen – (Optionaler Schritt).
# mdadm --stop /dev/md0 # Stop the array
mdadm --remove /dev/md0 # Remove the RAID device
mdadm --zero-superblock /dev/sdX1 # Overwrite the existing md superblock with zeroes
7. Erstellen Sie E-Mail-Benachrichtigungen
Sie können eine gültige E-Mail-Adresse oder ein gültiges Systemkonto konfigurieren, an das Warnungen gesendet werden sollen (stellen Sie sicher, dass Sie diese Zeile in mdadm.conf haben). – (Optionaler Schritt)
MAILADDR root
In diesem Fall werden alle Warnungen, die der RAID-Überwachungs-Daemon sammelt, an das Postfach des lokalen Root-Kontos gesendet. Eine dieser Warnungen sieht wie folgt aus.
Hinweis: Dieses Ereignis bezieht sich auf das Beispiel in SCHRITT 5, in dem ein Gerät als fehlerhaft markiert wurde und das Ersatzgerät automatisch von mdadm in das Array eingebaut wurde. So gingen uns die gesunden Ersatzgeräte aus und wir bekamen den Alarm.
Grundlegendes zu RAID-Levels in Linux
Hier ist ein kurzer Überblick über gängige RAID-Level:
RAID 0
Die Gesamtgröße des Arrays ist n-mal so groß wie die kleinste Partition, wobei n die Anzahl der unabhängigen Festplatten im Array ist (Sie benötigen mindestens zwei Laufwerke). Führen Sie den folgenden Befehl aus, um ein RAID 0-Array mit den Partitionen /dev/sdb1 und /dev/sdc1 zusammenzustellen.
# mdadm --create --verbose /dev/md0 --level=stripe --raid-devices=2 /dev/sdb1 /dev/sdc1
Häufige Verwendungszwecke: Setups, die Echtzeitanwendungen unterstützen, bei denen die Leistung wichtiger ist als die Fehlertoleranz.
RAID 1 (auch bekannt als Spiegelung)
Die Gesamtgröße des Arrays entspricht der Größe der kleinsten Partition (Sie benötigen mindestens zwei Laufwerke). Führen Sie den folgenden Befehl aus, um ein RAID 1-Array mit den Partitionen /dev/sdb1 und /dev/sdc1 zusammenzustellen.
# mdadm --create --verbose /dev/md0 --level=1 --raid-devices=2 /dev/sdb1 /dev/sdc1
Häufige Verwendungen: Installation des Betriebssystems oder wichtiger Unterverzeichnisse, wie z.B. /home.
RAID 5 (auch bekannt als Laufwerke mit Parity)
Die Gesamtgröße des Arrays beträgt (n – 1) mal so groß wie die kleinste Partition. Der "verlorene" Speicherplatz in (n-1) wird für die Berechnung der Parität (Redundanz) verwendet (Sie benötigen mindestens drei Laufwerke).
Beachten Sie, dass Sie ein Ersatzgerät (in diesem Fall /dev/sde1) angeben können, um ein fehlerhaftes Teil zu ersetzen, wenn ein Problem auftritt. Führen Sie den folgenden Befehl aus, um ein RAID 5-Array mit den Partitionen /dev/sdb1, /dev/sdc1, /dev/sdd1 und /dev/sde1 als Reserve zusammenzustellen.
# mdadm --create --verbose /dev/md0 --level=5 --raid-devices=3 /dev/sdb1 /dev/sdc1 /dev/sdd1 --spare-devices=1 /dev/sde1
Häufige Verwendungen: Web- und Dateiserver.
RAID 6 (auch bekannt als Laufwerke mit doppelter Parität
Die Gesamtgröße des Arrays beträgt (n*s)-2*s, wobei n die Anzahl der unabhängigen Festplatten im Array und s die Größe der kleinsten Festplatte ist. Beachten Sie, dass Sie ein Ersatzgerät (in diesem Fall /dev/sdf1) angeben können, um ein fehlerhaftes Teil zu ersetzen, wenn ein Problem auftritt.
Führen Sie den folgenden Befehl aus, um ein RAID 6-Array mit den Partitionen /dev/sdb1, /dev/sdc1, /dev/sdd1, /dev/sde1 und /dev/sdf1 als Reserve zusammenzustellen.
# mdadm --create --verbose /dev/md0 --level=6 --raid-devices=4 /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde --spare-devices=1 /dev/sdf1
Häufige Verwendungen: Datei- und Backup-Server mit hohen Kapazitäts- und Hochverfügbarkeitsanforderungen.
RAID 1+0 (auch bekannt als Stripe of Mirrors)
Die Gesamt-Array-Größe wird basierend auf den Formeln für RAID 0 und RAID 1 berechnet, da RAID 1+0 eine Kombination aus beiden ist. Berechnen Sie zuerst die Größe jedes Spiegels und dann die Größe des Streifens.
Beachten Sie, dass Sie ein Ersatzgerät (in diesem Fall /dev/sdf1) angeben können, um ein fehlerhaftes Teil zu ersetzen, wenn ein Problem auftritt. Führen Sie den folgenden Befehl aus, um ein RAID 1+0-Array mit den Partitionen /dev/sdb1, /dev/sdc1, /dev/sdd1, /dev/sde1 und /dev/sdf1 als Reserve zusammenzustellen.
# mdadm --create --verbose /dev/md0 --level=10 --raid-devices=4 /dev/sd[b-e]1 --spare-devices=1 /dev/sdf1Häufige Verwendungen: Datenbank- und Anwendungsserver, die schnelle E/A-Vorgänge erfordern.
Erstellen und Verwalten von Systemsicherungen unter Linux
Es schadet nie, sich daran zu erinnern, dass RAID mit all seinen Boni KEIN ERSATZ FÜR BACKUPS IST! Schreibe es 1000 Mal an die Tafel, wenn es sein muss, aber stelle sicher, dass du diese Idee immer im Kopf behältst.
Bevor wir beginnen, müssen wir beachten, dass es keine Einheitslösung für Systemsicherungen gibt, aber hier sind einige Dinge, die Sie bei der Planung einer Backup-Strategie berücksichtigen müssen.
- Wofür verwenden Sie Ihr System? (Desktop oder Server? Wenn letzteres zutrifft, was sind die kritischsten Dienste – deren Konfiguration wäre ein echter Schmerz, wenn man sie verliert?)
- Wie oft müssen Sie Backups Ihres Systems erstellen?
- Welche Daten (z. B. Dateien/Verzeichnisse/Datenbank-Dumps) möchten Sie sichern? Sie sollten auch überlegen, ob Sie wirklich große Dateien (z. B. Audio- oder Videodateien) sichern müssen.
- Wo (d. h. an einem physischen Ort und auf einem Medium) werden diese Backups gespeichert?
1. Sichern Sie Laufwerke mit dem Befehl dd
Sichern Sie ganze Laufwerke mit dem Befehl dd. Sie können entweder eine ganze Festplatte oder eine Partition sichern, indem Sie zu einem beliebigen Zeitpunkt ein exaktes Image erstellen. Beachten Sie, dass dies am besten funktioniert, wenn das Gerät offline ist, d. h. es ist nicht gemountet und es gibt keine Prozesse, die für E/A-Vorgänge darauf zugreifen.
Der Nachteil dieses Sicherungsansatzes besteht darin, dass das Image die gleiche Größe wie die Festplatte oder Partition hat, selbst wenn die tatsächlichen Daten nur einen kleinen Prozentsatz davon belegen.
Wenn Sie z. B. ein Image einer Partition von 20 GB erstellen möchten, die nur zu 10 % gefüllt ist, ist die Imagedatei immer noch 20 GB groß. Mit anderen Worten, es werden nicht nur die eigentlichen Daten gesichert, sondern die gesamte Partition selbst. Sie können diese Methode in Betracht ziehen, wenn Sie genaue Backups Ihrer Geräte benötigen.
Erstellen eines Partitionsabbilds
# dd if=/dev/sda of=/system_images/sda.img
OR
--------------------- Alternatively, you can compress the image file ---------------------
dd if=/dev/sda | gzip -c > /system_images/sda.img.gz
Wiederherstellen eines Partitionsabbilds
# dd if=/system_images/sda.img of=/dev/sda
OR
gzip -dc /system_images/sda.img.gz | dd of=/dev/sda
2. Sichern Sie Dateien mit dem tar-Befehl
Sichern Sie bestimmte Dateien / Verzeichnisse mit dem Befehl tar – bereits in Teil 3 dieser Serie behandelt. Sie können diese Methode verwenden, wenn Sie Kopien bestimmter Dateien und Verzeichnisse (Konfigurationsdateien, Benutzerstammverzeichnisse usw.) aufbewahren müssen.
2. Sichern und synchronisieren Sie Dateien mit dem Befehl rsync
Synchronisieren Sie Dateien mit dem Befehl rsync, einem vielseitigen Tool zum Kopieren von Dateien aus der Ferne (und vor Ort). Wenn Sie Ihre Dateien auf/von Netzlaufwerken sichern und synchronisieren müssen, ist rsync eine gute Wahl.
Unabhängig davon, ob Sie zwei lokale Verzeichnisse oder lokale < --- > Remote-Verzeichnisse synchronisieren, die auf dem lokalen Dateisystem eingebunden sind, ist die grundlegende Syntax dieselbe.
Synchronisieren von zwei lokalen Verzeichnissen
# rsync -av source_directory destination directory
Wobei, -a rekursiv in Unterverzeichnisse (falls vorhanden), symbolische Links, Zeitstempel, Berechtigungen und ursprünglicher Besitzer/Gruppe beibehalten und -v ausführlich.
Wenn Sie die Sicherheit der Datenübertragung über das Kabel erhöhen möchten, können Sie außerdem ssh over rsync verwenden.
Synchronisieren von lokalen → Remote-Verzeichnissen über SSH
# rsync -avzhe ssh backups root@remote_host:/remote_directory/
In diesem Beispiel wird das Sicherungsverzeichnis auf dem lokalen Host mit dem Inhalt von /root/remote_directory auf dem Remotehost synchronisiert.
Dabei zeigt die Option -h die Dateigrößen in einem lesbaren Format an und das Flag -e wird verwendet, um eine SSH-Verbindung anzuzeigen.
Synchronisieren von Remote-→ lokalen Verzeichnissen über SSH
Wechseln Sie in diesem Fall das Quell- und das Zielverzeichnis aus dem vorherigen Beispiel.
# rsync -avzhe ssh root@remote_host:/remote_directory/ backups
Bitte beachten Sie, dass dies nur 3 Beispiele (die häufigsten Fälle, auf die Sie wahrscheinlich stoßen werden) für die Verwendung von rsync sind. Weitere Beispiele und Verwendungen von rsync-Befehlen finden Sie im folgenden Artikel.
Zusammenfassung
Als Systemadministrator müssen Sie sicherstellen, dass Ihre Systeme so gut wie möglich funktionieren. Wenn Sie gut vorbereitet sind und die Integrität Ihrer Daten durch Speichertechnologien wie RAID und regelmäßige Systemsicherungen gut unterstützt wird, sind Sie auf der sicheren Seite.
Das LFCS eBook ist ab sofort zum Kauf erhältlich. Bestellen Sie noch heute Ihr Exemplar und beginnen Sie Ihre Reise zum zertifizierten Linux-Systemadministrator!
| Produktname | Preis | Kaufen |
|---|---|---|
| Der Leitfaden zur Vorbereitung der LFCS-Zertifizierung der Linux Foundation | 19,99 $ | [Jetzt kaufen] |
Zu guter Letzt erwägen Sie bitte, Ihren Prüfungsgutschein über die folgenden Links zu kaufen, um uns eine kleine Provision zu verdienen, die uns hilft, dieses Buch auf dem neuesten Stand zu halten.
Wenn Sie Fragen, Kommentare oder weitere Ideen haben, wie dieser Artikel verbessert werden kann, können Sie sich gerne unten äußern. Bitte erwägen Sie außerdem, diese Serie über Ihre Profile in sozialen Netzwerken zu teilen.






