rpm8200
2008-12-03, 22:22:33
Ich weiss nicht ganz, ob mein Post hier richtig ist. Ich brauch eigentlich keine Hilfe, ich wollt mit meinem Post ggf. dem einen oder anderen helfen.
Ich bin gerade dabei, mir ein NAS zusammenzustellen und bin dabei über
eine Problematik und auch deren Lösung gestolpert, die jeden Betreiber eines RAID Systems
interessieren könnte. Da ich hier zu dem Thema noch nichts gelesen habe, poste ich meine Erkenntnisse :smile:
Time Limited Error Recovery (TLER) für sicherere RAID Systeme mit Consumer HDDs
Western Digital Information Sheet (http://www.wdc.com/en/library/sata/2579-001098.pdf)
Entsprechende ähnliche Technologien der Mitbewerber:
Seagate: Error Recovery Control (ERC)
Samsung, Hitachi: Command Completion Time Limit (CCTL) (http://www.samsung.com/global/business/hdd/learningresource/whitepapers/LearningResource_CCTL.html)
Im folgenden nenne ich gewöhnliche Festplatten wie sie aus PCs bekannt sind der Einfachkeit halber "ConsumerHDDs" und solche für Servereinsatz "EnterpriseHDDs". Ich beziehe mich in diesem Post nur auf Western Digital. Ob es ähnliche Möglichkeiten für Seagate, Samsung oder Hitachi gibt ist mir nicht bekannt.
Sinn, Zusammenfassung (gilt für alle o.a. Technologien)
in Kurzform:
Grundsätzlich gibt es ConsumerHDDs und EnterpriseHDDs. Sie unterscheiden sich in einigen Punkten voneinander, u.a. auch in der Art wie Schreib/Lese- Fehler korrigiert werden.
RAID Systeme, wie sie in Servern verwendet werden speichern Daten redundant, deswegen werden bei einem festgestellten Plattenfehler die Daten anderweitig rekonstruiert und der Fehler zu einem beliebigen späteren Zeitpunkt behoben. Die EnterpriseHDDs haben deswegen nur rudimentäre eigene Fehlerkorrekturen implementiert (der RAID Controller kümmert sich darum). Wichtig ist hier, die Daten auch in diesem Fall schnell bereit zu stellen.
Normale PCs verfügen nicht über RAID Systeme, wenn hier ein Fehler der ConsumerHDD vorliegt muss diese selbst für Korrektur sorgen. Wichtig ist hier die Daten zu erhalten, egal wie lange es dauert (Fehlerkorrekturen können hier Minuten dauern!).
Konfliktpotential ergibt sich bei Verwendung von ConsumerHDDs zusammen mit RAID Controllern, die einen Reparaturversuch als Totalversagen der Festplatte interpretieren, wenn eine gewisse Timeout Zeit überschritten wird (i.d.R. 7-15s). Die entsprechende Festplatte wird als defekt markiert und aus dem RAID Verbund entfernt (was mindestens zu größeren Unannehmlichkeiten führt, im schlimmsten Fall zum Datenverlust).
Der Sinn von TLER (und den o.a. Technologien der Mitbewerber) ist nun, bei Festplatten die internen Korrekturversuche nach einer bestimmten Zeit abzubrechen, damit die Festplatte nicht aus dem RAID Verbund ausgegliedert wird.
Und hier das Ganze nochmals in etwas ausführlicherer Form:
Ein wesentlicher Unterschied zwischen ConsumerHDDs und EnterpriseHDDs liegt darin, dass EnterpriseHDDs praktisch ausschließlich an RAID Controllern im RAID Verbund benutzt werden (RAID 1,5,10... und auch RAID 0, obwohl es streng genommen kein RAID ist).
RAID Controller besitzen Strategien, wie mit Schreib/Lese- Fehlern umgegangen wird. Sie übernehmen i.d.R. die Korrektur auftretender Fehler. Sie sind daher wenig "geduldig", wenn eine Festplatte in einer bestimmten Zeit nicht antwortet. Die Zeit, ab welcher ein RAID Controller eine Festplatte bei nicht eintreffender Antwort als defekt einstuft liegt zwischen 7 und 15 Sekunden.
EnterpriseHDDs brechen eigene Korrekturversuche deswegen auch nach kürzerer Zeit ab (der RAID Controller wird den Defekt später reparieren). Die gewünschten Daten sind im RAID Verbund (ausser RAID 0) redundant vorhanden und werden vom Controller anderweitig besorgt. Der aufgetretene Fehler der entsprechenden Festplatte wird protokolliert und zu gegebener Zeit (unter geringeren Lastzuständen) vom Controller repariert.
Zu einem unschönen Effekt kann es kommen, wenn ConsumerHDDs im RAID Verbund gruppiert werden, was ja angesichts der sinkenden Preise immer häufiger vorkommt. Diese Festplatten versuchen nach wie vor, auftretende Schreib/Lese- Fehler selbst zu korrigieren. Da im typischen Anwendungsgebiet der ConsumerHDDs nicht von einer Datenredundanz ausgegangen werden kann, sind die Strategien dieser ConsumerHDDs gründlicher und ausführlicher (zeitraubender), eben um das Risiko verlorener Daten zu vermindern.
Dabei kann aber auch viel mehr Zeit verbraucht werden als die oben genannten 7 Sekunden.
Die Konsequenz daraus ist, dass ein RAID Controller, der mit ConsumerHDDs zusammen betrieben wird, den intern bei einer ConsumerHDD gestarteten Korrekturversuch bei einem Schreib/Lese- Fehler als Ausfall dieser Festplatte interpretiert (wenn sie länger als 7 Sekunden nicht reagiert) und die betreffende Festplatte aus dem RAID Verbund ausgliedert.
Die Folge ist im schlimmsten Fall ein vollkommen zerstörtes RAID oder eben die Notwendigkeit, die vermeintlich defekte Festplatte wieder in das RAID zu integrieren (was je nach Festplattengröße viele Stunden dauern kann). Wird während dieser Zeit weiterhin mit dem RAID Verbund nebenbei gearbeitet, so steigt die Wahrscheinlichkeit, dass genau in dieser Integrationsphase ein weiterer Fehler stattfindet stark an (ein RAID 5 verkraftet z.B. nur den Ausfall einer Festplatte, danach sind die Daten verloren).
Man kann diesem Problem natürlich aus dem Weg gehen, indem man nur die entsprechenden EnterpriseHDDs bzw. RAID-Editions der Festplattenhersteller kauft. Allerdings sind sich wohl die wenigsten Anwender dieses Problems überhaupt bewusst. Zudem werden EnterpriseHDDs bzw. die RAID-Editions der ConsumerHDDs zu höheren Preisen verkauft. Die EnterpriseHDDs unterscheiden sich zwar noch in weiteren Kriterien von den ConsumerHDDs, aber zum stabilen Betrieb in einem RAID 1 oder 5 ist das Unterbinden der ausführlichen Fehlerkorrekturen wohl die beste Maßnahme und das ist der Sinn der TLER Technologie (und der ähnlichen Technologien der Mitbewerber).
Abhilfe ist bei einigen Western Digital ConsumerHDDs möglich:
nach meiner Recherche sind diese Typen mit der TLER Technik ausgestattet, diese ist jedoch deaktiviert, da die Platten als Consumer HDDs ausgelegt sind:
WD3200KS
WD5000KS
WD10EACS
WD6400AAKS
WD7500AACS
WD1001FALS
WD5000AAKS
Um die TLER Funktion für RAID Konfigurationen bei Western Digital HDDs zu aktivieren braucht man das DOS tool
WDTLER.EXE (http://rapidshare.com/files/2821776/WDTLER.zip.html)
(alternativer Download) (http://mupfc.marshall.edu/~providenti/WDTLER.zip)
Allgemeine Hinweise:
Wenn kein RAID Verbund vorhanden ist, macht es keinen Sinn TLER zu aktivieren
EnterpriseHDDs lassen sich i.d.R. mit dem WDTLER tool nicht zu ConsumerHDDs (mit ausführlicherer Fehlerkorrektur) umschalten. Sie eignen sich also nur bedingt für den normalen non-RAID Einsatz
Die Nutzung des Tools findet natürlich auf eigene Gefahr statt. Es schaltet allerdings die Funktion TLER lediglich ein oder aus bzw. schreibt die Wartezeiten neu und manipuliert keine Daten
WDTLER funktioniert nur mit Festplatten des Herstellers Western Digital
Nicht alle Western Digital HDDs besitzen die TLER Funktionalität
Benutzung:
WDLTER auf eine Diskette aufspielen und den PC mit einer DOS Startdiskette starten.
Nachdem DOS läuft, die Diskette mit WDTLER einlegen und folgendes Kommando eingeben: A:\>wdtler.exe
Damit wird der derzeitige Status geprüft. Die Ausgabe im DOS Fenster sollte ähnlich wie diese aussehen:
WDTLER Version 1.03
Copyright (C) 2004-2006 Western Digital Corporation
Western Digital Time Limit Error Recovery Utility
Model: WDC WD5000KS-00MNB0 Serial Number: WD-WMANU1234567
Read TLER is disabled.
Write TLER is disabled.
Model: WDC WD5000KS-00MNB0 Serial Number: WD-WMANU1234567
Read TLER is disabled.
Write TLER is disabled.
Das Tool zeigt an, dass TLER Funktionalität in allen Drives "disabled" ist.
Um WDLTER auszuführen ist die exe mit folgenden Parametern aufzurufen (r = read, w = write): A:\>wdtler.exe -r7 -w7
Die Ausgabe dazu sollte dann ähnlich der folgenden aussehen:
WDTLER Version 1.03
Copyright (C) 2004-2006 Western Digital Corporation
Western Digital Time Limit Error Recovery Utility
Model: WDC WD5000KS-00MNB0 Serial Number: WD-WMANU1234567
Read TLER time is 7.000 seconds.
Write TLER time is 7.000 seconds.
Model: WDC WD5000KS-00MNB0 Serial Number: WD-WMANU1234567
Read TLER time is 7.000 seconds.
Write TLER time is 7.000 seconds.
Ergebnis:
Die TLER Funktion ist jetzt aktiv gesetzt und wird Korrekturversuche der Festplatten nach 7s unterbrechen. Die Gefahr, dass eine Festplatte nun fälschlicherweise aus dem RAID geworfen wird, ist damit deutlich minimiert, das RAID System ist ein Stück verläßlicher geworden.
Happy Raiding!
Euer rpm8200 :biggrin:
PS: Morgen hätte ich bei Interesse ggf. noch einen zweiten thread eröffnet, der sich dem Thema
"Western Digital Green Power HDDs -> Erhöhung der Lebensdauer"
widmen soll. Auch da hab ich paar interessante Dinge erfahren können.
Ich bin gerade dabei, mir ein NAS zusammenzustellen und bin dabei über
eine Problematik und auch deren Lösung gestolpert, die jeden Betreiber eines RAID Systems
interessieren könnte. Da ich hier zu dem Thema noch nichts gelesen habe, poste ich meine Erkenntnisse :smile:
Time Limited Error Recovery (TLER) für sicherere RAID Systeme mit Consumer HDDs
Western Digital Information Sheet (http://www.wdc.com/en/library/sata/2579-001098.pdf)
Entsprechende ähnliche Technologien der Mitbewerber:
Seagate: Error Recovery Control (ERC)
Samsung, Hitachi: Command Completion Time Limit (CCTL) (http://www.samsung.com/global/business/hdd/learningresource/whitepapers/LearningResource_CCTL.html)
Im folgenden nenne ich gewöhnliche Festplatten wie sie aus PCs bekannt sind der Einfachkeit halber "ConsumerHDDs" und solche für Servereinsatz "EnterpriseHDDs". Ich beziehe mich in diesem Post nur auf Western Digital. Ob es ähnliche Möglichkeiten für Seagate, Samsung oder Hitachi gibt ist mir nicht bekannt.
Sinn, Zusammenfassung (gilt für alle o.a. Technologien)
in Kurzform:
Grundsätzlich gibt es ConsumerHDDs und EnterpriseHDDs. Sie unterscheiden sich in einigen Punkten voneinander, u.a. auch in der Art wie Schreib/Lese- Fehler korrigiert werden.
RAID Systeme, wie sie in Servern verwendet werden speichern Daten redundant, deswegen werden bei einem festgestellten Plattenfehler die Daten anderweitig rekonstruiert und der Fehler zu einem beliebigen späteren Zeitpunkt behoben. Die EnterpriseHDDs haben deswegen nur rudimentäre eigene Fehlerkorrekturen implementiert (der RAID Controller kümmert sich darum). Wichtig ist hier, die Daten auch in diesem Fall schnell bereit zu stellen.
Normale PCs verfügen nicht über RAID Systeme, wenn hier ein Fehler der ConsumerHDD vorliegt muss diese selbst für Korrektur sorgen. Wichtig ist hier die Daten zu erhalten, egal wie lange es dauert (Fehlerkorrekturen können hier Minuten dauern!).
Konfliktpotential ergibt sich bei Verwendung von ConsumerHDDs zusammen mit RAID Controllern, die einen Reparaturversuch als Totalversagen der Festplatte interpretieren, wenn eine gewisse Timeout Zeit überschritten wird (i.d.R. 7-15s). Die entsprechende Festplatte wird als defekt markiert und aus dem RAID Verbund entfernt (was mindestens zu größeren Unannehmlichkeiten führt, im schlimmsten Fall zum Datenverlust).
Der Sinn von TLER (und den o.a. Technologien der Mitbewerber) ist nun, bei Festplatten die internen Korrekturversuche nach einer bestimmten Zeit abzubrechen, damit die Festplatte nicht aus dem RAID Verbund ausgegliedert wird.
Und hier das Ganze nochmals in etwas ausführlicherer Form:
Ein wesentlicher Unterschied zwischen ConsumerHDDs und EnterpriseHDDs liegt darin, dass EnterpriseHDDs praktisch ausschließlich an RAID Controllern im RAID Verbund benutzt werden (RAID 1,5,10... und auch RAID 0, obwohl es streng genommen kein RAID ist).
RAID Controller besitzen Strategien, wie mit Schreib/Lese- Fehlern umgegangen wird. Sie übernehmen i.d.R. die Korrektur auftretender Fehler. Sie sind daher wenig "geduldig", wenn eine Festplatte in einer bestimmten Zeit nicht antwortet. Die Zeit, ab welcher ein RAID Controller eine Festplatte bei nicht eintreffender Antwort als defekt einstuft liegt zwischen 7 und 15 Sekunden.
EnterpriseHDDs brechen eigene Korrekturversuche deswegen auch nach kürzerer Zeit ab (der RAID Controller wird den Defekt später reparieren). Die gewünschten Daten sind im RAID Verbund (ausser RAID 0) redundant vorhanden und werden vom Controller anderweitig besorgt. Der aufgetretene Fehler der entsprechenden Festplatte wird protokolliert und zu gegebener Zeit (unter geringeren Lastzuständen) vom Controller repariert.
Zu einem unschönen Effekt kann es kommen, wenn ConsumerHDDs im RAID Verbund gruppiert werden, was ja angesichts der sinkenden Preise immer häufiger vorkommt. Diese Festplatten versuchen nach wie vor, auftretende Schreib/Lese- Fehler selbst zu korrigieren. Da im typischen Anwendungsgebiet der ConsumerHDDs nicht von einer Datenredundanz ausgegangen werden kann, sind die Strategien dieser ConsumerHDDs gründlicher und ausführlicher (zeitraubender), eben um das Risiko verlorener Daten zu vermindern.
Dabei kann aber auch viel mehr Zeit verbraucht werden als die oben genannten 7 Sekunden.
Die Konsequenz daraus ist, dass ein RAID Controller, der mit ConsumerHDDs zusammen betrieben wird, den intern bei einer ConsumerHDD gestarteten Korrekturversuch bei einem Schreib/Lese- Fehler als Ausfall dieser Festplatte interpretiert (wenn sie länger als 7 Sekunden nicht reagiert) und die betreffende Festplatte aus dem RAID Verbund ausgliedert.
Die Folge ist im schlimmsten Fall ein vollkommen zerstörtes RAID oder eben die Notwendigkeit, die vermeintlich defekte Festplatte wieder in das RAID zu integrieren (was je nach Festplattengröße viele Stunden dauern kann). Wird während dieser Zeit weiterhin mit dem RAID Verbund nebenbei gearbeitet, so steigt die Wahrscheinlichkeit, dass genau in dieser Integrationsphase ein weiterer Fehler stattfindet stark an (ein RAID 5 verkraftet z.B. nur den Ausfall einer Festplatte, danach sind die Daten verloren).
Man kann diesem Problem natürlich aus dem Weg gehen, indem man nur die entsprechenden EnterpriseHDDs bzw. RAID-Editions der Festplattenhersteller kauft. Allerdings sind sich wohl die wenigsten Anwender dieses Problems überhaupt bewusst. Zudem werden EnterpriseHDDs bzw. die RAID-Editions der ConsumerHDDs zu höheren Preisen verkauft. Die EnterpriseHDDs unterscheiden sich zwar noch in weiteren Kriterien von den ConsumerHDDs, aber zum stabilen Betrieb in einem RAID 1 oder 5 ist das Unterbinden der ausführlichen Fehlerkorrekturen wohl die beste Maßnahme und das ist der Sinn der TLER Technologie (und der ähnlichen Technologien der Mitbewerber).
Abhilfe ist bei einigen Western Digital ConsumerHDDs möglich:
nach meiner Recherche sind diese Typen mit der TLER Technik ausgestattet, diese ist jedoch deaktiviert, da die Platten als Consumer HDDs ausgelegt sind:
WD3200KS
WD5000KS
WD10EACS
WD6400AAKS
WD7500AACS
WD1001FALS
WD5000AAKS
Um die TLER Funktion für RAID Konfigurationen bei Western Digital HDDs zu aktivieren braucht man das DOS tool
WDTLER.EXE (http://rapidshare.com/files/2821776/WDTLER.zip.html)
(alternativer Download) (http://mupfc.marshall.edu/~providenti/WDTLER.zip)
Allgemeine Hinweise:
Wenn kein RAID Verbund vorhanden ist, macht es keinen Sinn TLER zu aktivieren
EnterpriseHDDs lassen sich i.d.R. mit dem WDTLER tool nicht zu ConsumerHDDs (mit ausführlicherer Fehlerkorrektur) umschalten. Sie eignen sich also nur bedingt für den normalen non-RAID Einsatz
Die Nutzung des Tools findet natürlich auf eigene Gefahr statt. Es schaltet allerdings die Funktion TLER lediglich ein oder aus bzw. schreibt die Wartezeiten neu und manipuliert keine Daten
WDTLER funktioniert nur mit Festplatten des Herstellers Western Digital
Nicht alle Western Digital HDDs besitzen die TLER Funktionalität
Benutzung:
WDLTER auf eine Diskette aufspielen und den PC mit einer DOS Startdiskette starten.
Nachdem DOS läuft, die Diskette mit WDTLER einlegen und folgendes Kommando eingeben: A:\>wdtler.exe
Damit wird der derzeitige Status geprüft. Die Ausgabe im DOS Fenster sollte ähnlich wie diese aussehen:
WDTLER Version 1.03
Copyright (C) 2004-2006 Western Digital Corporation
Western Digital Time Limit Error Recovery Utility
Model: WDC WD5000KS-00MNB0 Serial Number: WD-WMANU1234567
Read TLER is disabled.
Write TLER is disabled.
Model: WDC WD5000KS-00MNB0 Serial Number: WD-WMANU1234567
Read TLER is disabled.
Write TLER is disabled.
Das Tool zeigt an, dass TLER Funktionalität in allen Drives "disabled" ist.
Um WDLTER auszuführen ist die exe mit folgenden Parametern aufzurufen (r = read, w = write): A:\>wdtler.exe -r7 -w7
Die Ausgabe dazu sollte dann ähnlich der folgenden aussehen:
WDTLER Version 1.03
Copyright (C) 2004-2006 Western Digital Corporation
Western Digital Time Limit Error Recovery Utility
Model: WDC WD5000KS-00MNB0 Serial Number: WD-WMANU1234567
Read TLER time is 7.000 seconds.
Write TLER time is 7.000 seconds.
Model: WDC WD5000KS-00MNB0 Serial Number: WD-WMANU1234567
Read TLER time is 7.000 seconds.
Write TLER time is 7.000 seconds.
Ergebnis:
Die TLER Funktion ist jetzt aktiv gesetzt und wird Korrekturversuche der Festplatten nach 7s unterbrechen. Die Gefahr, dass eine Festplatte nun fälschlicherweise aus dem RAID geworfen wird, ist damit deutlich minimiert, das RAID System ist ein Stück verläßlicher geworden.
Happy Raiding!
Euer rpm8200 :biggrin:
PS: Morgen hätte ich bei Interesse ggf. noch einen zweiten thread eröffnet, der sich dem Thema
"Western Digital Green Power HDDs -> Erhöhung der Lebensdauer"
widmen soll. Auch da hab ich paar interessante Dinge erfahren können.