ALL SYSTEMS OPERATIONALUPTIME 99.97%FLEET 18/18IN-MUM · US-LAX · EU-FSN EST. 2003 · +91 11 4998 4038

KENNTNISSE · DIENSTLEISTUNGEN UND VPS

Verwaltung von Linux Software RAID (Teil I)

Letzte Aktualisierung 2019-02-03

Verwaltung von Linux Software RAID (Teil I)

Redundant Array of Independent Disks (RAID) is a storage and virtualization technology that first gained traction in the late 1980s. It combines multiple physical disk drives into one logical virtual unit to improve performance and facilitate redundancy. Data is distributed across the drives depending on the RAID-EbeneObwohl RAID-Level kein Ersatz für Backups sind, können sie dazu beitragen, dass Ihr System angesichts häufiger Hardwareprobleme wie Datenverlust durch Festplattenausfälle oder nicht wiederherstellbare (Sektor-) Lesefehler am Laufen bleibt.

RAID kann mit “block” Geräten implementiert und verwaltet werden, die Software-RAID (z. B. Linux Software RAID’s mdadm), Hardware-RAID (d. H. Dedicated Hardware Card) oder FakeRAID (auch BIOS oder Onboard RAID genannt) sein können. Dieser Artikel wird sich auf die Anleitungen von Linux Software RAID und sein Management-Tool mdadm konzentrieren.
 
Linux Software RAID is a block device that can work on most other devices—SATA, USB, IDE, SCSI, or a combination of these. Note that the RAID-Schicht berührt nicht die Dateisystemschicht at all. You can place a file system on a RAID device, just like on any other block device.

 

Wie Software-RAID-Geräte funktionieren

Software-RAID-Geräte sollten als gewöhnliche Festplatten oder Festplattenpartitionen angesehen werden. Sie können aus einer Reihe anderer Blockgeräte "gebaut" werden.

In einer RAID-Implementierung gibt es Ersatz- oder Hot-Ersatzplatten, die nicht am RAID-Set teilnehmen, bis eine der aktiven Festplatten ausfällt. Sobald ein Gerätefehler erkannt wird, wird dieses Gerät als ‘faulty ’ markiert und das Set startet sofort mit der Rekonstruktion des ersten verfügbaren heißen Ersatzes. Ihr System kann jetzt für einige Zeit auch mit einer fehlerhaften Festplatte laufen, da das Ersatzgerät seinen Platz einnimmt. Wenn keine Ersatzplatte verfügbar ist, läuft das Array im "degradierten" Modus.

Beachten Sie, dass fehlerhafte Festplatten immer noch erscheinen und sich als Mitglieder des Arrays verhalten. Die RAID-Schicht vermeidet es nur, sie zu lesen / zu schreiben. Wenn ein Gerät aus dem Array entfernt werden muss, denken Sie auch daran, es zuerst als ‘faulty ’ zu markieren, bevor Sie es entfernen.

 

Erstellen eines SATA Drive-based RAID-Geräts

You can use full drives as parts of a RAID array but this should be avoided if you want to make the drives bootable. What you need to do is create a partition in the drives (using fdisk or Geteilt) mit Partitionstyp auf &lsquo gesetzt;fd,’ the Linux Software RAID auto-detect.

Nachdem Sie in jedem relevanten Laufwerk (sda1, sdb1) eine Partition erstellt haben, können Sie nun das Array erstellen:

mdadm --creat /dev/md0 -n 2 --level=1 /dev/sda1 /dev/sdb1

                Where:

    • /dev/md0 - Ihr neuer Array-Gerätepfad
    • -n 2  - die Gesamtzahl der Laufwerke, die als Ersatz, aktiv oder fehlende klassifiziert werden können; a ‘ fehlt ’ Laufwerk erfordert die zusätzliche Option -f zur Arbeit
    • --level=<RAID level>- kann eine der folgenden enthalten:
      • einer der linearen
      • Raid0&nbsp; OR&nbsp;0
      • Streifen
      • Raid1&nbsp; OR&nbsp;1
      • Spiegel
      • raid4&nbsp;OR&nbsp;4
      • raid5&nbsp;OR&nbsp;5&nbsp;
      • raid6&nbsp;OR&nbsp;6
      • raid10&nbsp;OR&nbsp;10
      • Multipath&nbsp;OR&nbsp;mp
      • fehlerhaft
      • Behälter
    • /dev/sda1, /dev/sdb1&nbsp;- Pfad jedes Komponentengeräts

WICHTIGER HINWEIS: Wenn Sie von einem RAID-Gerät booten möchten, platzieren Sie dieBootloader&nbsp;code am Anfang des physischen Laufwerks, das als zugrunde liegende Komponente des RAID-Geräts verwendet wird. Dies bedeutet, dass, wenn Sie verwenden/dev/sda1&nbsp;als Mitglied des array&nbsp;/dev/md0 and your primary HDD/SSD is set as BIOS-Bootoption, müssen Sie wählen&nbsp;/dev/sda&nbsp;for the&nbsp;Bootloader&nbsp;code. Eine Möglichkeit, dies zu tun, ist durch running&nbsp;grub-install /dev/sda.

After you create a RAID device, you can use it as you would a regular local drive. You can, for example, use it as a physical volume for Linux kernel’s logical volume manager (LVM) or put a file system in it.

Während RAID-Metadaten in jedem Komponentenlaufwerk gespeichert sind, sollten Sie Ihre RAID-Konfiguration dennoch für die zukünftige Verwendung speichern. Dies hilft Ihnen, die Benennung von md-Geräten zu überwachen und zu korrigieren, sonst erhalten Sie Gerätenamen wie md126 und md127. Sie können Ihre Konfigurationsdatei speichern, indem Sie den folgenden Befehl ausführen: &nbsp;


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

Für Ubuntu:
/etc/mdadm/mdadm.conf

&nbsp;

Überwachung eines RAID-Geräts

You can proactively monitor the health of a RAID device using - Monitor&nbsp;im mdadm-Tool. Wenn mdadm ein Array-Gesundheitsproblem erkennt, kann es eine Vielzahl von Aktionen ausführen, die Sie in der Befehlszeile angeben. Es kann eine E-Mail senden, ein bestimmtes Programm ausführen oder eine Nachricht an das Systemprotokoll senden, um einige zu nennen. Lesen Sie das Handbuch in&nbsp;Mann Mdadm&nbsp;(Monitor-Abschnitt), um eine Liste von Optionen zu sehen.

Most Linux distributions provide wrappers for the mdadm &ndash;monitorCentOS / RHEL zum Beispiel bietet an&nbsp;mdmonitor&nbsp;service, den Sie automatisch mit dem System starten können, indem Sie ausführen&nbsp;chkconfig mdmonitor auf.

Another way to check device health is to look into the /proc/mdstat&nbsp;text-Datei, um zu sehen, welche Arrays Ihr Kernel erkennt und um ihre jeweiligen Staaten zu sehen.

&nbsp;

Ersetzen des Komponentenantriebs eines RAID-Geräts

To replace a drive (e.g. (/dev/sdb1) in an active RAID array, it first needs to marked as ‘faulty’ by the kernel—marked as (F)&nbsp;in the&nbsp;/proc/mdstatWenn es noch nicht als fehlerhaft markiert ist, müssen Sie die Markierung vor dem Entfernen selbst vornehmen. Um dies zu tun, run&nbsp;mdadm /dev/md0 -f /dev/sdb1.

After the drive is removed, you can add another drive as replacement using mdadm /dev/md0 -a /dev/sdc1. Beachten Sie, dass Sie mehrere Operationen mit diesem einen Befehl ausführen können&mdash;e.g&nbsp;mdadm /dev/md0 -f /dev/sdb1 -r /dev/sdb1 -a /dev/sdc1.

Check the contents of the /proc/mdstat&nbsp;file danach, um zu sehen, ob alles wie erwartet gelaufen ist. Die Operation verlief wie sie sollte, wenn mdadm während des Austauschs keine Fehlerausgabe erzeugte.

&nbsp;

Zerstörung eines RAID-Geräts

Es kann eine Zeit geben, in der Sie ein RAID-Gerät vollständig zerstören müssen, um die zugrunde liegenden Geräte für das System nutzbar zu machen. Eine Situation, in der dies plausibel ist, ist, wenn Sie eine Ersatz-HDD mit vorkonfigurierten RAID-Metadaten haben und Ihr Kernel das Array erkennt. In diesem Fall befindet sich nur ein Element im Array und es ist nicht möglich, den einzelnen Antrieb einfach zu entfernen.

To destroy the RAID device, you first need to stop the array with mdadm -S /dev/md0. The next step is to remove the metadata from the sda1 partition by issuing the command mdadm --zero-superblock /dev/sda1Denken Sie daran, die Metadaten von/dev/sda1 (not /dev/sda) bis Null (0) wenn es Teil eines Arrays ist.

&nbsp;

Referenzen:

← Alle Knowledgebase Artikel

Sagen Sie uns, was aufbleiben muss.

A short conversation with an engineer. No quote-bot, no callback queue. We'll tell you honestly if we're not the right fit.