Najlepszy sposób na przetestowanie nowych dysków twardych pod kątem taniego serwera pamięci

31

Chcę zbudować serwer pamięci i kupić 10 x 2TB WD RED's. HDD'sWłaśnie przybył.

Czy jest jakieś narzędzie, którego używacie do sprawdzania uszkodzonych dysków lub do najlepszej obrony przed śmiertelnością niemowląt przed skopiowaniem prawdziwych danych na dyski?

Czy lepiej jest sprawdzić każdy z nich HDDlub przetestować tablicę ( ZFS raid-z2) poprzez skopiowanie na nią dużej ilości danych?

s1lv3r
źródło
1
Wiem, że istnieją narzędzia specyficzne dla dostawców, takie jak „WD Data LifeGuard Diagnostics”. Ale zastanawiam się, co robią faceci, którzy kupują mnóstwo dysków twardych. Wątpię, czy sprawdzają każdy dysk twardy (co zajmuje dużo czasu ...), więc zastanawiam się, czy istnieje narzędzie, które może wykonać pełny test SMART na wszystkich dyskach twardych jednocześnie?
s1lv3r
3
Prawie wszystko, co zapisuje na dyskach, może być użyte jako test; pełne przesunięcie lub dwa z tablicy powinny wystarczyć do wykrycia śmiertelności niemowląt. Naprawdę dobrym pomysłem jest kupowanie dysków od różnych dostawców / partii, gdy dostajesz więcej niż kilka - znacznie zmniejsza ryzyko awarii kilku dysków jednocześnie (z powodu podobnych wad produkcyjnych).
Chris S

Odpowiedzi:

14

Miałem to samo pytanie 2 miesiące temu. Po wysłaniu uszkodzonego dysku, dysk zastępczy zawiódł na moim NAS po 3 dniach. Postanowiłem więc przetestować nowy zamiennik przed wprowadzeniem go do produkcji. Nie testuję każdego nowego dysku, który kupuję, tylko na „odnowionych” dyskach, którym nie do końca ufam.

Jeśli zdecydujesz, że chcesz przetestować te dyski, zaleciłbym przeprowadzenie skanowania badblocks i rozszerzonego testu SMART na zupełnie nowym dysku twardym.

Na dysku o pojemności 2 TB zajmuje to do 48 godzin. Polecenie badblock zapisuje dysk ze wzorem, a następnie odczytuje bloki ponownie, aby sprawdzić, czy wzór rzeczywiście tam jest, i powtarza to z 4 różnymi wzorami.

To polecenie prawdopodobnie nie pokaże żadnych złych bloków na nowym dysku, ponieważ dyski obecnie realokują złe bloki.

Dlatego przed i po tym przeprowadziłem inteligentny test i sprawdziłem liczbę przeniesionych i bieżących oczekujących sektorów. Jeśli któryś z nich poszedł w górę, twój dysk ma już pewne złe bloki i może okazać się niewiarygodny.

Następnie ponownie uruchamiam rozszerzony test SMART.

Możesz najpierw zainstalować smartctl lub smartmontools.

Ostrzeżenie: flaga badblocks -w zastąpi wszystkie dane na dysku, jeśli chcesz tylko sprawdzić odczyt, nie zastępując dysku, użyjbadblocks -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

Jeśli po tym twoje inteligentne wartości wydają się ok, zaufałbym dyskowi.

Aby dowiedzieć się, co oznacza każda inteligentna wartość, możesz zacząć szukać tutaj

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

Jens Timmerman
źródło
Jak inni przypuszczali, może to robić zbyt wiele, ale ponieważ mam tylko 10 dysków i na pewno nie może to zrobić nic złego, po prostu sprawdzam wszystkie dyski w sposób, który zaproponowałeś teraz. Dziękujemy za wyczerpującą odpowiedź.
s1lv3r
23

To są nowe dyski. Albo upadną, albo nie. Już teraz masz duży krok do przodu, korzystając z systemu plików ZFS, który zapewni doskonały wgląd w stan najazdu i kondycję systemu plików ...

Nie zrobiłbym nic poza budowaniem tablicy. To jest cel redundancji. W przypadku innych wymienionych metod nie będziesz w stanie spowodować awarii dysku.

ewwhite
źródło
1
Zgadzam się z tym - budujesz tablicę. Jeśli dysk ulegnie awarii, gdy zaczniesz nakładać dane, to nie ma znaczenia, wymień go, a tablica sam się wyleczy. Testowanie napędów pod kątem problemów przed ich użyciem nie da ci właściwego wyobrażenia o tym, czy zawiodą w prawdziwym życiu - prawdziwe życie to nie są testy!
Ashley,
1
Zgadzam się, że „prawdziwe życie nie jest jak testy”, ale znalazłem również dwie awarie dysków spowodowane wadliwymi blokami. Gdybym umieścił oba te elementy w tej samej części RAID 1, 5 lub 10, straciłbym całą RAID.
rjt
1
@rjt prawdopodobnie nie. Uszkodzone sektory zostaną ponownie przydzielone, a dyski prawdopodobnie nie ulegną awarii w tym samym czasie. Ponadto nie wszystkie awarie dysków są nośnikami lub wynikiem złych bloków. Co się stanie, jeśli łożysko napędowe zużyje się lub działa wadliwie?
ewwhite
Prawdopodobnie nie podejmuję decyzji dotyczących danych o znaczeniu krytycznym . Badanie dysku twardego Google wskazuje, że dyski zużywają się w ciągu pierwszych 90 dni lub po 3 latach. Badblocks pomagają wyeliminować nisko wiszące owoce.
rjt
1
@rjt Oczywiście podejmujesz decyzje dotyczące danych o kluczowym znaczeniu dla „prawdopodobnie” - jeśli nie, nie będziesz w stanie przechowywać danych na żadnym dysku, niezależnie od tego, ile testów wykonujesz.
voretaq7
10

Możesz użyć Bonnie ++ do testowania. Może doskonale emulować wzorzec zachowania serwera plików.

Na przykład:

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

Test zostanie uruchomiony jako użytkownik „nobody” i utworzy / przepisze / usunie 100 * 1024 plików, od 200 do 150000 bajtów na plik, w 100 automatycznie utworzonych katalogach poniżej / home / tmp. A liczba testów = 300. Możesz grać wokół liczby / rozmiaru pliku i liczby powtórzeń testu.

Shtlzut
źródło
9

Zwykle po prostu wykonuję pełną inicjalizację RAID i tam, gdzie ma to zastosowanie, zaczynam zapełniać system plików w tym czasie, cały czas wiedząc, że może być problem z powodu martwych dysków. W ten sposób nie tracę czasu na testy, które i tak są dość niewiarygodne, i natychmiast łapałbym prawdziwe słabe dyski. Po tym może nadal istnieć podwyższona szansa na awarie napędu z powodu „śmiertelności niemowląt”, ale nie ma praktycznego sposobu na wyeliminowanie tego.

W praktyce żaden z ostatnich kilkuset dysków, których użyłem w macierzy RAID, nie miał problemów podczas pierwszego roku działania.

Sven
źródło
8

Pracuję dla firmy, która codziennie przeprowadza takie testy. I tak, testujemy każdy kupiony dysk twardy. Nasz proces rozpoczyna się od uruchomienia dysków za pomocą bezpłatnego programu opartego na systemie DOS o nazwie HDAT2. Jest do ściągnięcia za darmo. Może uzyskać dostęp do SMART i niektórych innych funkcji napędu, które są niedostępne w środowisku Windows. W zależności od wyników przeprowadzimy je przez jedną z kilku różnych linii specjalistycznego sprzętu, ale u ich podstaw przeważnie po prostu uruchamiają krótki autotest SMART, długi test, bezpieczne kasowanie i All Read w celu weryfikacji sektorów. Moją propozycją byłoby uruchomienie bezpiecznego wymazania całego dysku, a następnie uruchomienie pełnego odczytu, a następnie krótkiego autotestu SMART. Ta kolejność jest ważna, ponieważ krótki autotest może nie znaleźć niczego, jeśli zostanie uruchomiony na początku testowania, ale po pełnym zapisaniu i przeczytaniu dysku może coś podnieść. Mam nadzieję że to pomoże.

Nacięcie
źródło
1
serverfault.com/a/501870/117546 ma dla mnie największy sens, ale nie jestem ekspertem. Dlaczego Twoja firma testuje dyski twarde? Sądzę, że najskuteczniejszym testem byłoby użycie napędu.
emory 24.04.13
4

Możesz użyć pakietu testowego producenta lub czegoś takiego jak SpinRite, aby zamieść cały dysk. Dobrym pomysłem byłoby również przyjrzenie się wartościom SMART , szukaniu złych sektorów i innych oznak starości / awarii.

wirtualnie
źródło
3

Jeśli naprawdę chcesz przetestować, użyj badblockstestu zapisu. Zapisuje wzorce danych na dysku, a następnie odczytuje je w celu sprawdzenia. Podczas tego będzie trochę stresować twój dysk. Moim zdaniem, jeśli uda się uruchomić, możesz zaufać dyskowi.

Ale myślę, że wystarczy ZFS i dobra kopia zapasowa.

Kamień
źródło