Mittwoch, 4. November 2009

Wer Paritätsbasierende RAID-Levels nutzt, ist selber schuld...

Warum ein altes Thema ausgraben, denn dass paritätsbasierende RAID-Levels wie RAID5 und RAID6 zu Problemen führen können, sollte hinlänglich bekannt sein.

Aber es scheint sich noch immer nicht herumgesprochen zu haben, dass diese Probleme keine reinen "Statistik-Rechenübungen" sind, sondern in der Praxis leider immer häufiger auftreten.
Bei uns häufen sich die Probleme mit RAID5 (und vereinzelt sogar RAID6) massiv, obwohl wir unseren Kunden so ein RAID-Level wirklich niemals mit SATA-Platten >500 GB einrichten, aber einige Hersteller von Speicherappliances liefern Storageserver vorkonfiguriert mit paritätsbasierten RAID-Levels (sprich vor allem RAID5 und seltener RAID6) aus, und die Admins sind anscheinend zu faul, um diese Konfiguration zu ändern damit zufrieden.

Das Problem - dies lehrt uns die Statistik - hängt vor allem mit den immer größer (und immer günstiger werdenden)  SATA-Festplatten zusammen und mit dem Einzug dieser SATA-Platten in Speichersysteme und Server von Firmen.  Wir sehen immer mehr > 1 TB SATA-Platten in Storagesystemen von Firmen, die uns als Vor-Ort-Dienstleister für verschiedene Storage- und Serverhersteller logischwerweise nur dann begegnen, wenn es Probleme gibt: Aber diese Probleme mit RAID5 und 6 nehmen von Monat zu Monat immer mehr zu.

Hier nocheinmal die Basics, stark vereinfachend:
RAID5-Plattenverbünde verkraften einen einzigen Plattenausfall pro RAID, das heißt, man kann die Daten bei Ausfall einer Platte im RAID-Verbund wiederherstellen. Das Problem besteht aber darin, dass wenn eine Platte ausfällt ein weiteres Problem hinzukommen kann (und dies ist leider sogar recht häufig der Fall!): Kommt beim Wiederhestellen des RAID noch ein unbehebbarer Lesefehler vor (engl. URE für unrecoverable read error), dann bricht die Wiederherstellung mit einer Fehermeldung ab, und Daten gehen verloren, wenn man kein aktuelles Backup hat!

Festlattenausfall
Obwohl Festplatten als sehr zuverlässig gelten, gehen Festplatten nun mal kaputt. Die Frage ist nur, wie häufig dies der Fall ist. Die besten Daten hierzu (von Google und CMU) zeigen auf, dass mehr als 3% aller Platten innerhalb der ersten 3 Jahre ausfallen, und das pro Jahr (!), nach 3 Jahren steigt die Ausfallrate steil an!
Das bedeutet, mit 8 nagelneuen Festplatten hat man eine ungefähr 25% Wahrscheinlichkeit dafür, dass eine Platte pro Jahr ausfällt. Mit anderen Worten: Innerhalb von 4 Jahren ist ein Plattenauswahl nahezu garantiert!
Sie meinen, Sie sind geschützt, da Sie RAID5 verwenden?

Unbehebbare Lesefehler (URE)
Schauen wir uns einmal an, wie häufig Lesefehler auftreten, so geben die Meisten SATA-Plattenhersteller einen unbehebbaren Lesefehler auf 100.000.000.000.000 oder einhundert Billionen Bits an, oder 1:(10^14). Hört sich nach unglaublich sicher an, nicht wahr? Ist es aber nicht! Denn das bedeutet einen URE auf 12 TB.

Zahlenbeispiel: Mit einem RAID5 aus sieben 2-TB-Disks ist ein URE so gut wie sicher!

Wenn dies passiert, sind 14 TB Ihrer wertvollen Daten verloren, hoffentlich sichern Sie Ihre Daten also täglich auf Band. Tun Sie nicht? Dann haben Sie Pech gehabt...

Sagen Sie also nicht, wir hätten Sie nicht gewarnt!

Für diejenigen, die sich ein wenig mehr mit der Thematik beschäftigen wollen, sei der folgende Eintrag aus Richard Elling's Blog - "Rambling from Richard's Ranch" bei SUN empfohlen: "ZFS RAID recommandations: size vs. MTBF" oder dieser hier: "Using MTBF and Time Dependent Reliability for Disks".

Wichtige Anmerkung: SAS, SCSI und FC-HDDs sind sehr viel zuverlässiger als SATA-HDDs und haben auch nicht so hohe Speicherkapazitäten wie letztere. Aus beiden Gründen sind Sie mindestens um 1-2 Größenordnungen ausfallsicherer. Auch RAID6 ist gegenüber RAID5 um etwa eine Größenordnung  ausfallsicherer!

2 Kommentare:

  1. ... und noch ein Fall (ja, auch dieses System wurde nicht von uns gefertigt, eingerichtet und betreut)!

    November 09, 2009 9:21:47 PM PDT INF localhost Running: RAID 5 rebuild - 55%. Controller 1, logical device 1
    November 09, 2009 9:31:45 PM PDT INF localhost Running: RAID 5 rebuild - 60%. Controller 1, logical device 1
    November 09, 2009 9:42:03 PM PDT INF localhost Running: RAID 5 rebuild - 65%. Controller 1, logical device 1
    November 09, 2009 9:52:57 PM PDT INF localhost Running: RAID 5 rebuild - 70%. Controller 1, logical device 1
    November 09, 2009 9:57:47 PM PDT INF localhost Sense data: Medium error (UNRECOVERED READ ERROR). Controller 1, channel 0, SCSI device ID 4, LUN 0, cdb [28 00 53 f9 83 80 00 00 80 00 00 00], data [70 00 03 00 00 00 00 00 00 00 00 00 11 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00]
    November 09, 2009 5:48:24 PM PDT WRN localhost Command timeout: controller 1, channel 0, SCSI device ID 4, LUN 0, cdb [28 00 53 f9 8b 00 00 00 80 00 00 00]
    November 09, 2009 5:48:29 PM PDT INF localhost Sense data: Medium error (UNRECOVERED READ ERROR). Controller 1, channel 0, SCSI device ID 4, LUN 0, cdb [28 00 53 f9 83 80 00 00 80 00 00 00], data [70 00 03 00 00 00 00 00 00 00 00 00 11 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00]
    November 09, 2009 9:58:29 PM PDT WRN localhost Medium error: controller 1, channel 0, SCSI device ID 4, LUN 0, start LBA 53f98380, end LBA 53f983ff, bad block recovery possible
    November 09, 2009 9:58:29 PM PDT WRN 418:A01C-S--L-- localhost Bad Block discovered: controller 1 (53f98380).
    November 09, 2009 9:58:34 PM PDT INF localhost Sense data: Medium error (UNRECOVERED READ ERROR). Controller 1, channel 0, SCSI device ID 4, LUN 0, cdb [28 00 53 f9 83 c0 00 00 01 00 00 00], data [70 00 03 00 00 00 00 00 00 00 00 00 11 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00]
    November 09, 2009 9:58:39 PM PDT INF localhost Sense data: Medium error (UNRECOVERED READ ERROR). Controller 1, channel 0, SCSI device ID 4, LUN 0, cdb [28 00 53 f9 83 c0 00 00 01 00 00 00], data [70 00 03 00 00 00 00 00 00 00 00 00 11 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00]
    November 09, 2009 5:48:39 PM PDT WRN localhost Medium error: controller 1, channel 0, SCSI device ID 4, LUN 0, start LBA 53f983c0, end LBA 53f983c0, bad block recovery possible
    November 09, 2009 9:58:39 PM PDT INF localhost Expanded event, SCSI group, unknown subtype. Controller 1
    November 09, 2009 9:58:39 PM PDT WRN 418:A01C-S--L-- localhost Bad Block discovered: controller 1 (53f983c0).
    November 09, 2009 9:58:54 PM PDT WRN 215:A01C-S--L-- localhost One or more logical devices contain a bad stripe: controller 1.

    AntwortenLöschen
  2. Der Controller ist überigens ein
    Adaptec RAID 51645
    The premium Series 5 family of Unified Serial controllers outperforms the competition by as much as 5 times!

    AntwortenLöschen