Das RAID-Array wird nach dem Neustart nicht wieder zusammengesetzt

8

Das RAID-Array wird nach dem Neustart nicht zusammengesetzt.

Ich habe eine SSD, von der das System gestartet wird, und drei Festplatten, die Teil des Arrays sind. Das System ist Ubuntu 16.04.

Die Schritte, die ich befolgt habe, basieren hauptsächlich auf diesem Handbuch:

https://www.digitalocean.com/community/tutorials/how-to-create-raid-arrays-with-mdadm-on-ubuntu-16-04#creating-a-raid-5-array

  1. Überprüfen, ob ich bereit bin zu gehen.

    lsblk -o NAME,SIZE,FSTYPE,TYPE,MOUNTPOINT
    

Die Ausgabe zeigt neben den SSD-Partitionen auch sda-, sdb- und sdc-Geräte. Ich habe anhand der Ausgabe überprüft, ob diese tatsächlich Festplatten darstellen:

hwinfo --disk

Alles passt zusammen.

  1. Array zusammenbauen.

    sudo mdadm --create --verbose /dev/md0 --level=5 --raid-devices=3 /dev/sda /dev/sdb /dev/sdc
    

Ich überprüfe, ob es in Ordnung aussieht, indem ich Folgendes eingebe: cat / proc / mdstat

Die Ausgabe sieht ungefähr so ​​aus:

Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10]
md0 : active raid5 sdc[3] sdb[1] sda[0]
      7813774336 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/2] [UU_]
      [=======>.............]  recovery = 37.1% (1449842680/3906887168) finish=273.8min speed=149549K/sec
      bitmap: 0/30 pages [0KB], 65536KB chunk

unused devices: <none>

Ich warte bis der Prozess endet.

Personalities : [raid1] [linear] [multipath] [raid0] [raid6] [raid5] [raid4] [raid10] 
md0 : active raid5 sdc[3] sdb[1] sda[0]
      209584128 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/3] [UUU]

unused devices: <none>
  1. Erstellen und Mounten des Dateisystems.

    sudo mkfs.ext4 -F /dev/md0
    
    sudo mkdir -p /mnt/md0
    
    sudo mount /dev/md0 /mnt/md0
    
    df -h -x devtmpfs -x tmpfs
    

Ich habe einige Daten eingegeben und die Ausgabe sieht folgendermaßen aus:

Filesystem      Size  Used Avail Use% Mounted on
/dev/nvme0n1p2  406G  191G  196G  50% /
/dev/nvme0n1p1  511M  3.6M  508M   1% /boot/efi
/dev/md0        7.3T  904G  6.0T  13% /mnt/md0
  1. Speichern des Array-Layouts.

    sudo mdadm --detail --scan | sudo tee -a /etc/mdadm/mdadm.conf
    
    sudo update-initramfs -u
    
    echo '/dev/md0 /mnt/md0 ext4 defaults,nofail,discard 0 0' | sudo tee -a /etc/fstab
    
  2. Neustart und Überprüfung, ob alles richtig funktioniert.

Nach dem Neustart versuche ich: cat / proc / mdstat
Es werden keine aktiven RAID-Geräte angezeigt .

ls /mnt/md0 

ist leer.

Der folgende Befehl druckt nichts und funktioniert auch nicht:

mdadm --assemble --scan -v

Nur das Folgende stellt das Array mit Daten wieder her:

sudo mdadm --create --verbose /dev/md0 --level=5 --raid-devices=3 /dev/sda /dev/sdb /dev/sdc

Was soll anders gemacht werden?

Zusätzliche, wahrscheinlich nützliche Informationen:

sudo dpkg-reconfigure mdadm

Die Ausgabe zeigt:

update-initramfs: deferring update (trigger activated)
Generating grub configuration file ...
Warning: Setting GRUB_TIMEOUT to a non-zero value when GRUB_HIDDEN_TIMEOUT is set is no longer supported.
Found linux image: /boot/vmlinuz-4.4.0-51-generic
Found initrd image: /boot/initrd.img-4.4.0-51-generic
Found linux image: /boot/vmlinuz-4.4.0-31-generic
Found initrd image: /boot/initrd.img-4.4.0-31-generic
Adding boot menu entry for EFI firmware configuration
done
update-rc.d: warning: start and stop actions are no longer supported; falling back to defaults
Processing triggers for initramfs-tools (0.122ubuntu8.5) ...
update-initramfs: Generating /boot/initrd.img-4.4.0-51-generic

Der faszinierende Teil für mich ist "Start- und Stoppaktionen werden nicht mehr unterstützt; auf Standardeinstellungen zurückgreifen"

Auch die Ausgabe von / usr / share / mdadm / mkconf druckt am Ende keine Arrays.

# mdadm.conf
#
# Please refer to mdadm.conf(5) for information about this file.
#

# by default (built-in), scan all partitions (/proc/partitions) and all
# containers for MD superblocks. alternatively, specify devices to scan, using
# wildcards if desired.
#DEVICE partitions containers

# auto-create devices with Debian standard permissions
CREATE owner=root group=disk mode=0660 auto=yes

# automatically tag new arrays as belonging to the local system
HOMEHOST <system>

# instruct the monitoring daemon where to send mail alerts
MAILADDR [email protected]

# definitions of existing MD arrays

wohingegen die Ausgabe von cat /etc/mdadm/mdadm.conf dies tut.

# mdadm.conf
#
# Please refer to mdadm.conf(5) for information about this file.
#

# by default (built-in), scan all partitions (/proc/partitions) and all
# containers for MD superblocks. alternatively, specify devices to scan, using
# wildcards if desired.
#DEVICE partitions containers

# DEVICE /dev/sda /dev/sdb /dev/sdc

# auto-create devices with Debian standard permissions
CREATE owner=root group=disk mode=0660 auto=yes

# automatically tag new arrays as belonging to the local system
HOMEHOST <system>

# instruct the monitoring daemon where to send mail alerts
MAILADDR [email protected]

# definitions of existing MD arrays

# This file was auto-generated on Sun, 04 Dec 2016 18:56:42 +0100
# by mkconf $Id$

ARRAY /dev/md0 metadata=1.2 spares=1 name=hinton:0 UUID=616991f1:dc03795b:8d09b1d4:8393060a

Was ist die Lösung? Ich habe im halben Internet gestöbert und niemand scheint das gleiche Problem zu haben.

Ich habe vor ein paar Tagen genau dieselbe Frage zu Serverfault hinzugefügt (keine Antwort). Ich entschuldige mich, wenn ich damit gegen die Community-Regeln von Stack Exchange verstoßen habe.

user4338027
quelle
Haben Sie es geschafft, dieses Problem zu lösen? Ich bin in einer sehr ähnlichen Situation und ich kann nirgendwo eine Antwort finden
Karanva
Die folgende Lösung (Benutzer @Avi) hat bei mir funktioniert.
ojovirtual

Antworten:

3

Ich hatte das gleiche Problem, ich bin mir nicht sicher, aber ich habe festgestellt, dass neue Partitionen auf den RAID-Mitgliedern vom Typ LINUX Raid erstellt wurden. Beim Erstellen des Arrays habe ich dann die Partition verwendet, anstatt das Gerät zu verwenden.

Avi
quelle
Vielen Dank! Ich hatte das gleiche Problem und dies ist eine Lösung für mich: Erstellen des Raids auf den Partitionen, nicht auf der gesamten Festplatte:mdadm --create /dev/md0 --level=5 --raid-devices=3 /dev/sdb1 /dev/sdc1 /dev/sdd1
ojovirtual
2

Ich konnte Ihr genaues Problem nicht reproduzieren, aber ich glaube, ich habe einen möglichen Grund für das Verhalten Ihres Systems gefunden:

Wenn Sie das 3-Festplatten-RAID5-Array mit dem folgenden Befehl erstellen:

sudo mdadm --create --verbose /dev/md0 --level=5 --raid-devices=3 /dev/sda /dev/sdb /dev/sdc

Während sich das RAID-Gerät in der Wiederherstellung befindet, zeigt der Befehl mdadm scan Folgendes an:

sudo mdadm --detail --scan
ARRAY /dev/md0 metadata=1.2 spares=1 name=desktop:0 UUID=da60c69a:1cbe4f2e:e83d0971:0520ac89

Nach Abschluss des Wiederherstellungsprozesses ist der spares=1Parameter nicht mehr vorhanden:

sudo mdadm --detail --scan
ARRAY /dev/md0 metadata=1.2 name=desktop:0 UUID=da60c69a:1cbe4f2e:e83d0971:0520ac89

Ich spares=1gehe davon aus, dass das erneute Zusammensetzen der 3 mit dem Parameter gelesenen Festplatten auf einem vollständig wiederhergestellten Software-RAID5 fehlschlägt, da Sie keine ersparten Festplatten mehr haben. Wenn Sie versuchen, ein RAID mit dem folgenden Befehl zusammenzustellen, schlägt dies fehl:

sudo mdadm --create --verbose /dev/md0 --level=5 --raid-devices=3 --spare-devices=1 /dev/sda /dev/sdb /dev/sdc

und der nächste Befehl erstellt ein anderes RAID-Layout:

sudo mdadm --create --verbose /dev/md0 --level=5 --raid-devices=2 --spare-devices=1 /dev/sda /dev/sdb /dev/sdc

Ein anderer Hinweis: Wenn Sie nicht von RAID5 booten müssen, müssen Sie die Konfiguration nicht zur /etc/mdadm/mdadm.confDatei hinzufügen . Ubuntu startet das RAID automatisch, da die Konfiguration im RAID-Superblock verfügbar ist.

Simon Sudler
quelle
0

Es scheint, dass dies ein recht häufiges Problem ist, wenn ganze Festplatten in einem Array verwendet werden.

Dieser Beitrag enthält die neueste Zusammenfassung des Problems und wie ich es gelöst habe: mdadm RAID, das einem nach dem Neustart verschwundenen LVM zugrunde liegt

Dieser Beitrag hat mir geholfen, mein Problem zu verstehen und zu lösen: Was ist der Unterschied zwischen dem Erstellen eines MDADM-Arrays mithilfe von Partitionen oder den gesamten Festplatten direkt?

Martin L.
quelle