Wie lese ich diese Raid-Informationsausgabe?

Wie lese ich diese Raid-Informationsausgabe?

Ich arbeite derzeit an einem Remote-Ubuntu-18.04-Server, auf dem ich ein neues RAID-Array (RAID1) einrichten und es dann als verfügbare Partition in das aktive Dateisystem einbinden muss. Der erste Schritt für mich besteht darin, zu verstehen, was gerade vor sich geht. Ich weiß, dass sich im aktiven System zwei Festplatten befinden, die in einem RAID-1-Array verbunden sind. Ich habe den lsblkBefehl verwendet, um einige Informationen zu sammeln. Die Ausgabe lautet wie folgt:

NAME        MAJ:MIN RM   SIZE RO TYPE  MOUNTPOINT
nvme0n1     259:0    0 894,3G  0 disk  
├─nvme0n1p1 259:1    0     4G  0 part  
│ └─md0       9:0    0     4G  0 raid1 [SWAP]
├─nvme0n1p2 259:2    0   512M  0 part  
│ └─md1       9:1    0 511,4M  0 raid1 /boot
└─nvme0n1p3 259:3    0 889,8G  0 part  
  └─md2       9:2    0 889,6G  0 raid1 /

Bedeutet das, dass mein physisches Gerät das mit dem Namen ist nvme0n1? Und dieses ist in 3 Teile partitioniert (Swap, Boot und /). Wenn es dasselbe physische Gerät ist ( nvme0n1), warum sind die Partitionen ( nvme0n1p1,nvme0n1p2,nvme0n1p3) dann zusätzlich in unterteilt md0,md1,md2? Was ist der Unterschied zwischen nvme0n1p1und md0?

Wenn ich cat /proc/mdstatdas mache bekomme ich außerdem folgende Ausgabe:

md2 : active raid1 nvme0n1p3[1]
      932840768 blocks super 1.2 [2/1] [_U]
      bitmap: 7/7 pages [28KB], 65536KB chunk

md1 : active raid1 nvme0n1p2[1]
      523712 blocks super 1.2 [2/1] [_U]
      
md0 : active raid1 nvme0n1p1[1]
      4190208 blocks super 1.2 [2/1] [_U]

Hier werden 3 aktive Raidblöcke angezeigt. Ich habe nur ein Raid-Array laufen. Ich kann die Ausgabe nicht interpretieren... ich brauche Hilfe.

Danke

Antwort1

Wenn dies die vollständige lsblkAusgabe ist, wird leider nur ein physisches Speichergerät angezeigt nvme0n1.

Ihr nvme0n1Computer ist in drei Partitionen aufgeteilt, die jeweils einzeln für die Software-RAID1-Spiegelung eingerichtet sind. Dadurch erhalten Sie drei Software-RAID-Geräte: md0, md1und md2. Jedes davon entspricht einer einzelnen Software-RAID-Partition, nicht einer ganzen Festplatte.

Wenn Sie RAID pro Partition auf diese Weise einrichten, erkennt das BIOS die Festplatte als partitionierte Festplatte, auch wenn das BIOS Linux-Software-RAID überhaupt nicht erkennt. Dies kann das Booten und einige Wiederherstellungsszenarien vereinfachen und bei Bedarf eine einfache Rückkehr zu einer Nicht-RAID-Konfiguration ermöglichen.

In einem normalen, gespiegelten Zustand md0würde sich auf den gespiegelten Satz von nvme0n1p1+ nvme1n1p1, md1auf den Satz von nvme0n1p2+ nvme1n1p2usw. beziehen. Sie würden die Dateisysteme mounten und den Swap mithilfe der md0, md1und md2-Geräte aktivieren: Sobald diese Geräte zur Verwendung geöffnet werden, würde das Software-RAID-Subsystem die darunterliegenden physischen Partitionen für den exklusiven Zugriff sperren und erfordern, dass sämtliche Zugriffe auf die Partitionen über die RAID-Schicht erfolgen, während das RAID aktiv ist.

Allerdings fehlt jedem dieser Software-RAID-Sets die zweite Hälfte eines RAID1-Paares.Dies kann bedeuten, dass das System mit Software-RAID auf zwei identischen NVMe-Geräten eingerichtet wurde, eines davon aber (wahrscheinlich nvme1n1) bereits ausgefallen ist.Oder vielleicht wurde das System auf einer einzelnen NVMe-Festplatte als Hälfte eines RAID1-Sets eingerichtet, um einen einfachen Übergang zu echtem RAID1 zu ermöglichen, sobald ein zweites NVMe-Gerät verfügbar war … aber aus irgendeinem Grund geschah dies nie.

Ihre erste Priorität sollte wahrscheinlich darin bestehen, das fehlerhafte NVMe zu ersetzen (oder das fehlende hinzuzufügen) und dann die vorhandenen RAID-Paare wiederherzustellen:

  • Kopieren Sie die Partitionstabelle von der vorhandenen Festplatte auf die neue Festplatte.
  • Initialisieren Sie die Partitionen auf der neuen Festplatte als Ersatzpartitionen für das entsprechende mdNGerät
  • Starten Sie die RAID1-Wiederherstellung auf jedem Paar
  • Installieren Sie eine zweite Kopie des Bootloaders auf der zweiten Festplatte, da sich MBR und Teile von GRUB außerhalb der gespiegelten Partitionen befinden.
  • Damit der Ausfall eines physikalischen Gerätes nicht erneut unbemerkt bleibt, richten Sie eine Überwachung der RAID-Geräte ein.

Sobald dies erledigt ist, können Sie über Ihre ursprüngliche Aufgabe nachdenken, nämlich die Einrichtung eines neuen RAID-Arrays. Dazu benötigen Sie mehr physischen Speicher, da der vorhandene anscheinend nvme0n1vollständig belegt ist (und das gilt auch für das entsprechende Spiegelbild, sobald die aktuellen Halbspiegel vollständig wiederhergestellt wurden).

Antwort2

Ja, die Ausgabe zeigt nur ein physisches Gerät (nvme0n1).

Ja, die Ausgabe zeigt, dass es 3 Partitionen hat.

Der interessante Teil ist die Information von /proc/mdstat, wo es zeigt,3konfigurierte RAID-Geräte, die alle anzeigen [_U]. In einem fehlerfreien System sollte dort stehen [UU]. Die 3 RAID-Geräte sind als RAID1 (gespiegelt) konfiguriert, sodass der (vermutete) Ausfall des zweiten Laufwerks noch keinen Datenverlust verursacht hat. Natürlich kann es sein, dass das zweite Laufwerk nicht erkannt wird, weil es entfernt wurde.

Eine Untersuchung des Boot-Protokolls kann Ihnen möglicherweise einen Hinweis darauf geben, ob überhaupt ein zweites Laufwerk erkannt wird.

nvme0n1p1 ist eine Partition. Sie hat am Anfang einen RAID-Header. Die restlichen Sektoren in der Partition werden als Daten für das Gerät md0 verwendet. Wenn ein zweites Laufwerk angeschlossen wäre, bei dem es sich möglicherweise um eine herkömmliche spinning rustFestplatte handelt, wäre zu erwarten, dass es mindestens 3 Partitionen hat. Eine davon (konventionell wäre sie die erste, also /dev/hda1) hätte auch einen RAID-Header und die restlichen Sektoren würden verwendet, um eine zweite Kopie der Daten für das Gerät /dev/md0 zu speichern.

verwandte Informationen