Inhalt

mdadm vermeldet "faulty spare"

Diagnose:

Pünktlich zum Tag der Deutschen Einheit meint eine Festplatte auf dem Buchfreund-Webserver sich verabschieden zu müssen.

/dev/md0:
Version : 00.90.03
Creation Time : Wed Jun 17 15:26:29 2009
Raid Level : raid1
Array Size : 97536 (95.27 MiB 99.88 MB)
Device Size : 97536 (95.27 MiB 99.88 MB)
Raid Devices : 2
Total Devices : 2
Preferred Minor : 0
Persistence : Superblock is persistent

Update Time : Sun Oct  3 06:59:13 2010
State : clean, degraded
Active Devices : 1
Working Devices : 1
Failed Devices : 1
Spare Devices : 0

UUID : 3c5f840f:745a0173:7792c71e:7dc17aa4
Events : 0.64

Number   Major   Minor   RaidDevice State
0       8       17        0      active sync   /dev/sdb1
1       0        0        1      removed
2       8        1        -      faulty spare   /dev/sda1  

Der Support von Server4you ist verständigt, mal sehen wie Reaktionszeiten am heutigen Feiertag aussehen. Beim letzten derartigen Hardwareschaden auf einem anderen Server war nach einer halben Stunde Downtime eigentlich alles gegessen (mal abgesehen von der Rebuild-Dauer des Raid-Arrays).

Die aktuelle Uptime der Maschine beläuft sich im Übrigen auf „472 days 20 hours 28 minutes“.

Update 1:

Nach nur 37min Downtime sind die Dienste erstmal wieder erreichbar. Das ist echt mal eine gute Support-Zeit am Wochende und Feiertag. Leider muss man aber noch selbst aktiv werden, um die neu eingebaute Platte wieder in den Raid-Verbund zu bekommen. Das ganze funktioniert so:

Ausfall einer Disk (hier ist /dev/sda ausgefallen):

  1. Harddisk vom technischen Support tauschen und System im Rettungsmodus booten.
  2. Partitionstabelle kopieren.
sfdisk -d /dev/sdb | sfdisk --force /dev/sda
  1. Superblöcke der neuen Platte löschen (für alle Partitionen)
mdadm --zero-superblock /dev/sda1  
mdadm --zero-superblock /dev/sda3
  1. Neue Disk Partitionen zur jeweiligen Raid-Partition hinzufügen
mdadm -a /dev/md0 /dev/sda1
mdadm -a /dev/md1 /dev/sda3
mkswap /dev/sda2
  1. Rebuilt beobachten
cat /proc/mdstat
  1. Grub ggfs. neu schreiben.

Update 2:

Nachdem der Server heute Nacht von Frankfurt nach Strassburg umgezogen ist, musste ich feststellen, dass das RAID wieder „clean, degraded“ war. Geholfen hat dann aber dass:

/dev/sda hatte fälschlicherweise noch ein Partion:

mdadm --examine /dev/sda

mdadm --zero-superblock /dev/sda (Partionstabelle gelöscht)

partprobe /dev/sda (Partionstabelle neu eingelesen)

mdadm --add /dev/md0 /dev/sda1
mdadm --add /dev/md1 /dev/sda3

Jetzt sollte der nächste Reboot aber auch klappen.