Frage Beste Möglichkeit, neue Festplatten für einen günstigen Speicherserver zu testen


Ich möchte einen Storage-Server bauen und kaufte 10 x 2 TB WD RED. Die HDD ist gerade angekommen.

Gibt es ein Tool, mit dem Sie nach schlechten Laufwerken suchen oder die Kindersterblichkeit am besten verteidigen, bevor Sie echte Daten auf Ihre Festplatten kopieren?

Ist es besser, jede einzelne Festplatte zu überprüfen oder das Array (ZFS raid-z2) zu testen, indem Sie viele Daten darauf kopieren?

Vielen Dank für Ihren Hinweis im Voraus!


29
2018-04-23 09:47


Ursprung


Ich weiß, dass es einige herstellerspezifische Tools wie "WD Data LifeGuard Diagnostics" gibt. Aber ich frage mich, was die Jungs machen, die eine ganze Menge Festplatten kaufen. Ich bezweifle, dass sie jede einzelne Festplatte überprüfen (das kostet viel Zeit), also frage ich mich, ob es ein Tool gibt, das einen kompletten S.M.A.R.T-Test auf allen Festplatten gleichzeitig durchführen kann? - s1lv3r
Fast alles, was auf die Laufwerke geschrieben wird, kann als Test verwendet werden. Ein vollständiger Wisch oder zwei Wischvorgänge des Arrays sollten ausreichen, um die Kindersterblichkeit zu erfassen. Es ist eine wirklich gute Idee, Laufwerke verschiedener Hersteller / Chargen zu kaufen, wenn Sie mehr als ein Paar haben - die Wahrscheinlichkeit, dass mehrere Laufwerke gleichzeitig ausfallen (aufgrund ähnlicher Herstellungsfehler), wird erheblich verringert. - Chris S


Antworten:


Ich hatte die gleiche Frage vor zwei Monaten. Nach dem Einsenden einer fehlerhaften Festplatte ist die Ersatzfestplatte nach 3 Tagen in meinem NAS ausgefallen. Also entschied ich mich, den neuen Ersatz zu testen, bevor ich ihn in Produktion bringe. Ich teste nicht jede neue Platte, die ich kaufe, nur auf "überholten" Platten, denen ich nicht völlig vertraue.

Wenn Sie entscheiden, dass Sie diese Festplatten testen möchten, würde ich empfehlen, eine Badblocks Scannen und einen erweiterten SMART-Test auf der brandneuen Festplatte.

Auf einer 2 TB-Festplatte dauert dies bis zu 48 Stunden. Der Badblock-Befehl schreibt die Platte voll mit einem Muster, liest dann die Blöcke erneut, um zu sehen, ob das Muster tatsächlich dort ist, und wird dies mit 4 verschiedenen Mustern wiederholen.

Dieser Befehl wird wahrscheinlich keine fehlerhaften Blöcke auf einer neuen Festplatte anzeigen, da Festplatten weisen heutzutage fehlerhafte Blöcke neu zu.

Also habe ich vorher und nachher einen Smart-Test durchgeführt und die neu zugewiesenen und aktuellen ausstehenden Sektoren überprüft. Wenn einer von diesen oben gegangen ist, hat Ihr Datenträger bereits einige fehlerhafte Blöcke und könnte sich daher als nicht vertrauenswürdig erweisen.

Danach führe ich erneut einen erweiterten SMART-Test durch.

Vielleicht möchten Sie zuerst smartctl oder smartmontools installieren.

WarnungDie badblocks -w-Markierung überschreibt alle Daten auf Ihrer Festplatte. Wenn Sie nur eine Leseprüfung durchführen möchten, ohne die Festplatte zu überschreiben, verwenden Sie badblocks -vs /dev/sdX

sudo smartctl -a /dev/sdX
# record these numbers
sudo badblocks -wvs /dev/sdX
# let it run for 48 hours
sudo smartctl -a /dev/sdX
# compare numbers
sudo smartctl -t long /dev/sdX
# this might take another hour or 2, check results periodically with
sudo smartctl -a /dev/sdX

Wenn danach Ihre Smart-Werte in Ordnung scheinen, würde ich der Festplatte vertrauen.

Um zu wissen, was jeder intelligente Wert bedeutet, können Sie hier beginnen

http://en.wikipedia.org/wiki/Self-Monitoring,_Analysis,_and_Reporting_Technology


14
2018-04-26 12:37



Wie die anderen angenommen haben, könnte dies viel zu viel tun, aber da ich nur 10 Festplatten habe und es sicherlich nicht schlecht machen kann, überprüfe ich einfach alle Festplatten auf die Art und Weise, wie Sie es jetzt vorgeschlagen haben. Danke für Ihre umfassende Antwort. - s1lv3r


Dies sind neue Festplatten. Entweder werden sie scheitern oder nicht. Mit dem ZFS-Dateisystem sind Sie bereits einen großen Schritt voraus was dir einen großartigen Einblick in deine Raid- und Dateisystem-Gesundheit gibt ...

Ich würde nichts anderes tun als nur das Array zu bauen. Das ist der Punkt der Redundanz. Sie werden nicht in der Lage sein, einen Laufwerkfehler mit den anderen aufgelisteten Methoden zu verursachen.


23
2018-04-23 12:04



Einverstanden - Sie bauen ein Array. Wenn ein Laufwerk fehlschlägt, wenn Sie beginnen, Daten zu übertragen, ist es egal, Sie ersetzen es, und das Array wird automatisch geheilt. Das Testen der Laufwerke auf Probleme, bevor sie verwendet werden, gibt Ihnen keine richtige Vorstellung davon, ob sie im wirklichen Leben versagen werden - das wirkliche Leben ist nicht wie Tests! - Ashley Steel
Ich stimme zu, "das wirkliche Leben ist nicht wie Tests", aber ich habe auch zwei Laufwerksfehler über Badblocks gefunden. Hätte ich beide in den gleichen Teil eines RAID 1, 5 oder 10 gesteckt, hätte ich das ganze RAID verloren. - rjt
@ rjt wahrscheinlich nicht. Schlechte Sektoren würden neu zugewiesen und die Laufwerke wären wahrscheinlich nicht gleichzeitig ausgefallen. Außerdem sind nicht alle Laufwerksfehler Medien oder ein Ergebnis schlechter Blöcke. Was passiert, wenn das Antriebslager verschleißt oder defekt ist? - ewwhite
Ich treffe keine Entscheidungen über unternehmenskritische Daten wahrscheinlich. Die Google-Festplatte-Studie sagt, dass Laufwerke entweder in den ersten 90 Tagen oder nach 3 Jahren abnutzen. Badblocks helfen, die tief hängenden Früchte zu beseitigen. - rjt
@ rjt Natürlich treffen Sie Entscheidungen über geschäftskritische Daten auf "wahrscheinlich" - Wenn nicht, könnten Sie keine Daten auf einem Laufwerk speichern, unabhängig davon, wie viele Tests Sie durchführen. - voretaq7


Sie können Bonnie ++ zum Testen verwenden. Es kann das Verhaltensmuster des Dateiservers perfekt emulieren.

Zum Beispiel:

# bonnie++ -u nobody -d /home/tmp -n 100:150000:200:100 -x 300

Test läuft als Benutzer 'nobody' und erstellt 100 * 1024 Dateien von 200 bis 150000 Bytes pro Datei in 100 automatisch erstellten Verzeichnissen unterhalb von / home / tmp. Und Anzahl der Tests = 300. Sie können Dateianzahl / Größe und Anzahl der Testwiederholungen abspielen.


10
2018-04-23 10:10





Normalerweise mache ich nur eine vollständige RAID-Init und beginne, das Dateisystem währenddessen zu füllen, während ich weiß, dass es möglicherweise ein Problem aufgrund von toten Laufwerken gibt. Auf diese Weise verschwende ich keine Zeit für irgendwelche Tests, die sowieso ziemlich unzuverlässig sind, und ich würde sofort die wirklich schwachen Laufwerke fangen. Danach könnte es aufgrund von "Kindersterblichkeit" immer noch zu erhöhten Chancen für Antriebsausfälle kommen, aber es gibt keinen praktischen Weg, dies zu beseitigen.

In der Praxis hatte keine der letzten paar hundert Festplatten, die ich in einem RAID verwendete, irgendwelche Probleme während des ersten Betriebsjahres.


9
2018-04-23 11:16





Ich arbeite für eine Firma, die Tag für Tag diese Art von Tests durchführt. Und ja, wir testen jede einzelne Festplatte, die wir kaufen. Unser Prozess beginnt mit dem Ausführen der Laufwerke durch ein kostenloses DOS-basiertes Programm namens HDAT2. Es ist kostenlos zum Download. Es kann auf SMART und einige andere Funktionen des Laufwerks zugreifen, auf die von einer Windows-Umgebung aus nicht zugegriffen werden kann. Abhängig von den Ergebnissen werden wir sie durch eine von mehreren verschiedenen Linien spezieller Hardware laufen lassen, aber im Kern führen sie meistens nur SMART Kurz-Selbsttest, Long Test, ein sicheres Löschen und ein All Read durch, um die Sektoren zu verifizieren. Mein Vorschlag wäre, ein sicheres Löschen der gesamten Festplatte auszuführen, dann einen All-Read- und dann einen SMART-Kurz-Selbsttest auszuführen. Diese Reihenfolge ist wichtig, da ein kurzer Selbsttest möglicherweise nichts findet, wenn er zu Beginn des Tests ausgeführt wird, aber nach einem vollständigen Schreiben und Lesen der Disc kann er etwas aufnehmen. Hoffe das hilft.


8
2018-04-23 17:32



serverfault.com/a/501870/117546 macht für mich am meisten Sinn, aber ich bin kein Experte. Warum testet Ihr Unternehmen die Festplatten? Ich würde denken, dass der effektivste Test tatsächlich das Laufwerk verwenden würde. - emory


Sie könnten die Testsuite des Herstellers oder etwas ähnliches verwenden SpinRite um die ganze Scheibe zu fegen. Es wäre auch eine gute Idee, sich die CLEVER Werte, auf der Suche nach schlechten Sektoren und anderen Alter / Versagen Zeichen.


4
2018-04-23 10:03





Wenn Sie wirklich testen möchten, dann verwenden Sie badblocks Test schreiben. Es schreibt Datenmuster auf die Festplatte und liest sie zur Überprüfung. Währenddessen wird es Ihre Festplatte ein wenig stressen. Meiner Meinung nach, wenn es erfolgreich läuft, können Sie der Festplatte vertrauen.

Aber ich denke, ZFS und gute Sicherung ist genug.


3
2018-04-23 19:08