Ersatzlaufwerkfehler während nas4free ZFS-Resilver

403
Gary Crockett

Ich verwende nas4free v. 10.3.0.3. Unter Verwendung von ZFS mit einem RaidZ1-Laufwerk mit vier 2-TB-Laufwerken. Einmal im Jahr mache ich ein komplettes Backup, offline das älteste Laufwerk, ersetze es durch ein neues Laufwerk und stelle den Befehl "zpool replace mytank / dev / ada0" aus. Der Resilver wird automatisch gestartet.

Dieses Wochenende habe ich wie immer mit dem Prozess begonnen. Zu dieser Zeit betrug die Zeit bis zur Fertigstellung etwa 8 Stunden. Nach mehr als 24 Stunden ist der Resilver jedoch immer noch nicht fertig. Wenn Sie sich den Bildschirm Disks | ZFS | Pools | Information ansehen, wird der Resilvering-Prozess immer wieder neu gestartet. Im Moment sind es 0,14%. Ich weiß, dass es schon mehrmals an diesem Punkt war.

Da ich wusste, dass das Resilvering die Laufwerke belastet, ließ ich smartctl auf jedem einzelnen Laufwerk laufen. Die drei "alten" Laufwerke zeigen keinerlei Fehler. Alles ist "normal".

Das "neue" Laufwerk ist jedoch nicht. Hier sind einige relevante Zeilen aus der Ausgabe von smartctl:

=== START OF READ SMART DATA SECTION === SMART overall-health self-assessment test result: FAILED! Drive failure expected in less than 24 hours. SAVE ALL DATA. ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE 5 Reallocated_Sector_Ct 0x0033 001 001 005 Pre-fail Always FAILING_NOW 0 196 Reallocated_Event_Count 0x0032 100 100 000 Old_age Always - 0 197 Current_Pending_Sector 0x0022 001 001 000 Old_age Always - 2000  SMART Error Log Version: 1 ATA Error Count: 270 (device log contains only the most recent five errors) 

Ja, ich glaube das Laufwerk fällt aus.

Nun meine Fragen:

1) Wie kann ich die fehlerhafte Festplatte offline schalten? So wie ich es immer tue?

2) Beendet "offline" die defekte Festplatte den Resilver-Prozess?

3) zpool replaceWird der Resilver nach dem Austauschen der fehlerhaften Festplatte und dem Ausführen des Befehls automatisch wieder gestartet?

Danke für Ihre Hilfe.

0

1 Antwort auf die Frage

0
a CVn
ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE 5 Reallocated_Sector_Ct 0x0033 001 001 005 Pre-fail Always FAILING_NOW 0 197 Current_Pending_Sector 0x0022 001 001 000 Old_age Always - 2000 

Sieht aus wie Sie eine Zitrone haben. Solche Dinge passieren; RMA die Platte und erhalten Sie einen Ersatz. Bei einem kürzlich erworbenen Kauf, der voraussichtlich zu einer geringen Betriebsstundenzahl zählt und von SMART angezeigt wird, sollte dies kein Problem sein. Wenn der Wiederverkäufer sich sehr darum kümmert, suchen Sie einen anderen Wiederverkäufer und kaufen Sie stattdessen dort ein.

1) Wie kann ich die fehlerhafte Festplatte offline schalten? So wie ich es immer tue?

Sie können eine Festplatte immer offline verwenden zpool offline <pool> <dev>. Seien Sie jedoch vorsichtig, um über der Redundanzschwelle des Pools zu bleiben. (Ich glaube nicht, ZFS lassen Sie eine Festplatte entfernen, die einen Pool unterhalb seiner Redundanz Schwelle bringen, ohne gezwungen zu sein, und es könnte nicht einmal dann tut es, aber es ist leicht, in die Falle tappen die hinzuzufügen, -fohne zu denken durch Die Konsequenzen.)

2) Beendet "offline" die defekte Festplatte den Resilver-Prozess?

Es sollte, da es jetzt keine Nachgiebigkeit gibt, die getan werden muss. Beachten Sie jedoch, dass Sie keine Redundanz haben. Daher sind Fehler (sogar E / A-Fehler auf Sektorebene), während sich der Pool in dieser Konfiguration befindet, möglicherweise kritisch.

3) Wird der Resilver nach dem Ersetzen der fehlerhaften Festplatte und dem Auslösen des Befehls zpool replace automatisch automatisch wieder gestartet?

Möglicherweise müssen Sie möglicherweise zpool onlinedie neue Festplatte verwenden, da die alte bereits aufgenommen wurde offline, aber ich glaube nicht. Konzeptionell zpool replace <pool> <old> <new>ist dasselbe wie zpool attach <pool> <new>gefolgt von zpool detach <pool> <old>(aber Sie können keine Geräte in einem raidz vdev anbringen / entfernen).

In Bezug auf ZFS wird für die neue Ersatzplatte ein Resilver benötigt, sodass ein Resilver gestartet wird.

Das heißt, dieser Teil Ihrer Frage fiel mir auf:

vier 2-TB-Laufwerk RaidZ1. Einmal pro Jahr mache ich eine vollständige Sicherung, offline das älteste Laufwerk, ersetze es durch ein neues Laufwerk und sende den Befehl "zpool replace mytank / dev / ada0" aus.

Ich möchte Sie dazu ermutigen, die alte Festplatte vor der Installation der neuen nicht zu entfernen, insbesondere wenn sie einwandfrei funktioniert. (Ich hatte einen Datenträger, der aus dem bloßen Gedanken an das Einfügen von E / A- Fehlern Fehler hervorbrachte, und in einem solchen Fall kann das Herausnehmen oder Entfernen der beleidigenden Diskette eine vernünftige Wahl sein.) Schließen Sie stattdessen die neue Diskette an alte und zpool replace <pool> <old> <new>. Auf diese Weise profitieren Sie von der Redundanz, die Sie im Pool haben. Wenn eine der anderen Festplatten während des Resilvers auf ein Problem stößt, sind die Chancen sehr viel besser, dass das System in der Lage ist, dieses System grazil und ohne Datenverlust zu bewältigen.

Am sehr dest ein Lauf zpool scrubbis zur Fertigstellung auf den Pool unmittelbar vor Offlining den Datenträger Sie ersetzen.