Meilleure façon de tester de nouveaux disques durs pour un serveur de stockage bon marché

31

Je veux construire un serveur de stockage et acheté 10 x 2TB WD RED's. Le HDD'svient d'arriver.

Y a-t-il un outil que vous utilisez pour vérifier les mauvais disques ou pour mieux vous défendre contre la mortalité infantile avant de copier des données réelles sur vos disques?

Est-il préférable de vérifier chaque single HDDou de tester le tableau ( ZFS raid-z2) en copiant beaucoup de données dessus?

s1lv3r
la source
1
Je sais qu'il existe des outils spécifiques aux fournisseurs tels que "WD Data LifeGuard Diagnostics". Mais je me demande ce que font les gars, qui achètent beaucoup de disques durs. Je doute qu'ils vérifient chaque disque dur (cela prend beaucoup de temps ..) donc je me demande s'il existe un outil qui peut effectuer un test SMART complet sur tous les disques durs à la fois?
s1lv3r
3
Presque tout ce qui écrit sur les disques peut être utilisé comme test; un balayage complet ou deux du tableau devrait être suffisant pour attraper la mortalité infantile. C'est une très bonne idée d'acheter des disques de différents fournisseurs / lots lorsque vous obtenez plus d'un couple - diminue considérablement les risques de défaillance de plusieurs disques en même temps (en raison de défauts de fabrication similaires).
Chris S

Réponses:

14

J'ai eu la même question il y a 2 mois. Après l'envoi d'un disque défectueux, le disque de remplacement est tombé en panne dans mon NAS après 3 jours. J'ai donc décidé de tester le nouveau remplacement avant de le mettre en production. Je ne teste pas chaque nouveau disque que j'achète, uniquement sur des disques «reconditionnés», auxquels je ne fais pas entièrement confiance.

Si vous décidez de tester ces disques, je vous recommande d'exécuter une analyse des blocs défectueux et un test SMART étendu sur le tout nouveau disque dur.

Sur un disque de 2 To, cela peut prendre jusqu'à 48 heures. La commande badblock écrit le disque complet avec un motif, puis relit les blocs pour voir si le motif est réellement là, et répétera cela avec 4 motifs différents.

Cette commande n'affichera probablement aucun bloc défectueux sur un nouveau disque, car les disques réallouent les blocs défectueux de nos jours.

Donc, avant et après cela, j'ai exécuté un test intelligent et vérifié le nombre de secteurs en attente réaffecté et actuel. Si l'un d'entre eux a augmenté, votre disque contient déjà des blocs défectueux et peut donc s'avérer indigne de confiance.

Après cela, je lance à nouveau un test SMART étendu.

Vous voudrez peut-être installer d'abord smartctl ou smartmontools.

Attention , l'indicateur badblocks -w écrasera toutes les données sur votre disque, si vous voulez juste faire une vérification de lecture, sans écraser le disque, utilisezbadblocks -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

Si après cela, vos valeurs intelligentes semblent correctes, je ferais confiance au disque.

Pour savoir ce que signifie chaque valeur intelligente, vous pouvez commencer à chercher ici

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

Jens Timmerman
la source
Comme les autres supposaient que cela pouvait faire beaucoup trop, mais comme je n'ai que 10 disques et que cela ne peut certainement pas faire de mal, je vérifie simplement tous les disques de la manière que vous avez suggérée maintenant. Merci pour votre réponse complète.
s1lv3r
23

Ce sont de nouveaux disques. Soit ils vont échouer, soit ils ne le feront pas. Vous avez déjà une longueur d'avance en utilisant le système de fichiers ZFS, qui vous donnera un excellent aperçu de la santé de votre raid et de votre système de fichiers ...

Je ne ferais rien de plus que de simplement construire le tableau. C'est le point de la redondance. Vous ne pourrez pas provoquer une panne de disque avec les autres méthodes répertoriées.

ewwhite
la source
1
D'accord avec cela - vous construisez un tableau. Si un disque tombe en panne lorsque vous commencez à mettre des données, alors cela n'a pas d'importance, vous le remplacez et la matrice s'auto-guérit. Tester les disques pour détecter des problèmes avant de les utiliser ne vous donnera pas une idée précise de leur défaillance dans la vie réelle - la vraie vie n'est pas comme des tests!
Ashley
1
je suis d'accord "la vraie vie n'est pas comme des tests" mais j'ai aussi trouvé deux pannes de disque via des badblocks. Si j'avais mis les deux dans la même partie d'un RAID 1, 5 ou 10, j'aurais perdu tout le RAID.
rjt
1
@rjt probablement pas. Les secteurs défectueux seraient réaffectés et les disques n'auraient probablement pas échoué en même temps. De plus, toutes les pannes de disque ne sont pas des supports ou le résultat de blocs défectueux. Que se passe-t-il si le roulement d'entraînement s'use ou fonctionne mal?
ewwhite
je ne prends probablement pas de décisions sur les données critiques . L'étude Google sur les disques durs indique que les disques s'usent au cours des 90 premiers jours ou après 3 ans. les badblocks aident à éliminer les fruits qui pendent bas.
rjt
1
@rjt Bien sûr, vous prenez des décisions concernant les données critiques sur "probablement" - Si vous ne le faisiez pas, vous ne seriez pas en mesure de stocker des données sur n'importe quel lecteur, quel que soit le nombre de tests que vous effectuez.
voretaq7
10

Vous pouvez utiliser Bonnie ++ pour les tests. Il peut parfaitement émuler le modèle de comportement du serveur de fichiers.

Par exemple:

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

Le test s'exécutera en tant qu'utilisateur «personne» et créera / réécrira / supprimera 100 * 1024 fichiers, de 200 à 150000 octets par fichier, dans 100 répertoires créés automatiquement ci-dessous / home / tmp. Et nombre de tests = 300. Vous pouvez jouer sur le nombre / taille de fichiers et le nombre de répétitions de tests.

Shtlzut
la source
9

En général, je fais juste une init RAID complète et, le cas échéant, commence à remplir le système de fichiers pendant cela, tout en sachant qu'il pourrait y avoir un problème en raison de lecteurs morts. De cette façon, je ne perds pas de temps pour des tests qui ne sont pas fiables de toute façon et j'attraperais immédiatement les vrais disques faibles. Après cela, il pourrait y avoir encore un risque élevé de panne de disque en raison de la «mortalité infantile», mais il n'y a aucun moyen pratique d'éliminer cela.

Dans la pratique, aucun des derniers centaines de disques que j'ai utilisés dans un RAID n'a rencontré de problème au cours de la première année de fonctionnement.

Sven
la source
8

Je travaille pour une entreprise qui fait ce genre de test jour après jour. Et oui, nous testons chaque disque dur que nous achetons. Notre processus commence par l'exécution des lecteurs via un programme DOS gratuit appelé HDAT2. C'est gratuit à télécharger. Il peut accéder à SMART et à certaines autres fonctionnalités du lecteur qui sont inaccessibles à partir d'un environnement Windows. En fonction des résultats, nous les exécuterons sur l'une des différentes gammes de matériel spécialisé, mais au fond, ils exécutent principalement un autotest court SMART, un test long, un effacement sécurisé et une lecture complète pour vérifier les secteurs. Ma suggestion serait d'exécuter un effacement sécurisé du disque complet, puis d'exécuter une lecture complète, puis un autotest court SMART. Cet ordre est important car un court auto-test peut ne rien trouver s'il est exécuté au début de votre test, mais après une écriture et une lecture complètes du disque, il peut détecter quelque chose. J'espère que cela t'aides.

Entaille
la source
1
serverfault.com/a/501870/117546 a le plus de sens pour moi, mais je ne suis pas un expert. Pourquoi votre entreprise teste-t-elle les disques durs? Je pense que le test le plus efficace consisterait à utiliser le lecteur.
emory
4

Vous pouvez utiliser la suite de tests du fabricant ou quelque chose comme SpinRite pour balayer tout le disque. Ce serait également une bonne idée de regarder les valeurs SMART , à la recherche de secteurs défectueux et d'autres signes de vieillesse / d'échec.

virtuellement
la source
3

Si vous voulez vraiment tester, utilisez le badblockstest d'écriture. Il écrira des modèles de données sur le disque puis les lira pour vérifier. Pendant cela, cela stressera un peu votre disque. À mon avis, s'il fonctionne correctement, vous pouvez faire confiance au disque.

Mais je pense que ZFS et une bonne sauvegarde suffisent.

Pierre
la source