วิธีที่ดีที่สุดในการทดสอบ HDD ใหม่สำหรับเซิร์ฟเวอร์จัดเก็บข้อมูลราคาถูก


31

10 x 2TB WD RED'sผมต้องการที่จะสร้างเซิร์ฟเวอร์จัดเก็บข้อมูลและซื้อ HDD'sเพิ่งมาถึง

มีเครื่องมือใดบ้างที่คุณใช้ตรวจสอบไดรฟ์ที่ไม่ดีหรือเพื่อป้องกันการเสียชีวิตของทารกก่อนที่จะคัดลอกข้อมูลจริงไปยังดิสก์ของคุณหรือไม่?

ควรตรวจสอบแต่ละรายการHDDหรือทดสอบอาร์เรย์ ( ZFS raid-z2) ด้วยการคัดลอกข้อมูลจำนวนมากหรือไม่


1
ฉันรู้ว่ามีเครื่องมือเฉพาะผู้จำหน่ายบางอย่างเช่น "WD Data LifeGuard Diagnostics" แต่ฉันสงสัยว่าพวกเขาทำอะไรซื้อฮาร์ดดิสก์จำนวนมาก ฉันสงสัยว่าพวกเขาตรวจสอบฮาร์ดไดรฟ์ทุกตัว (ใช้เวลามาก .. ) ดังนั้นฉันสงสัยว่ามีเครื่องมือที่สามารถทำการทดสอบ SMART เต็มรูปแบบบนฮาร์ดดิสก์ทั้งหมดได้ในครั้งเดียวหรือไม่?
s1lv3r

3
ทุกอย่างที่เขียนไปยังไดรฟ์สามารถใช้เป็นการทดสอบได้ การปัดแบบเต็มหรือสองแถวต้องเพียงพอที่จะจับการตายของทารก เป็นความคิดที่ดีจริง ๆ ที่จะซื้อไดรฟ์จากผู้จำหน่าย / แบทช์ที่ต่างกันเมื่อคุณได้รับมากกว่าสอง - ลดโอกาสของไดรฟ์หลาย ๆ ตัวที่ล้มเหลวในเวลาเดียวกัน (เนื่องจากข้อบกพร่องด้านการผลิตที่คล้ายกัน)
Chris S

คำตอบ:


14

ฉันมีคำถามเดียวกันเมื่อ 2 เดือนที่แล้ว หลังจากส่งในดิสก์ที่ล้มเหลวดิสก์ทดแทนจะล้มเหลวใน NAS ของฉันหลังจาก 3 วัน ดังนั้นฉันจึงตัดสินใจว่าตอนนี้ฉันจะทดสอบการเปลี่ยนใหม่ก่อนที่จะนำไปผลิต ฉันไม่ได้ทดสอบดิสก์ใหม่ทุกครั้งที่ฉันซื้อเฉพาะในดิสก์ที่ 'ตกแต่งใหม่' ซึ่งฉันไม่ไว้วางใจอย่างสมบูรณ์

หากคุณตัดสินใจว่าต้องการทดสอบดิสก์เหล่านี้ฉันขอแนะนำให้เรียกใช้การสแกนbadblocksและการทดสอบ SMART เพิ่มเติมบนฮาร์ดดิสก์ใหม่

บนดิสก์ 2TB ใช้เวลานานถึง 48 ชั่วโมงคำสั่ง badblock เขียนดิสก์ที่เต็มด้วยรูปแบบจากนั้นอ่านบล็อกอีกครั้งเพื่อดูว่ารูปแบบนั้นมีอยู่จริงหรือไม่และจะทำซ้ำด้วย 4 รูปแบบที่แตกต่างกัน

คำสั่งนี้อาจจะไม่แสดงบล็อกที่ไม่ดีใด ๆ บนดิสก์ใหม่เนื่องจากดิสก์จัดสรรบล็อกที่ไม่ดีวันนี้

ดังนั้นก่อนและหลังสิ่งนี้ฉันจึงทำการทดสอบแบบสมาร์ทและตรวจสอบจำนวนเซกเตอร์ที่รอการจัดสรรใหม่และปัจจุบัน หากสิ่งเหล่านี้เกิดขึ้นดิสก์ของคุณมีบล็อกที่ไม่ดีอยู่แล้วดังนั้นอาจพิสูจน์ได้ว่าไม่น่าเชื่อถือ

หลังจากนี้ฉันรันการทดสอบ SMART เพิ่มเติมอีกครั้ง

คุณอาจต้องการติดตั้ง smartctl หรือ smartmontools ก่อน

คำเตือนแฟลก badblocks -w จะเขียนทับข้อมูลทั้งหมดในดิสก์ของคุณหากคุณต้องการตรวจสอบการอ่านโดยไม่ต้องเขียนทับดิสก์ให้ใช้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

ถ้าหลังจากนี้ค่าสมาร์ทของคุณดูโอเคฉันก็จะเชื่อถือดิสก์

หากต้องการทราบความหมายของค่าอัจฉริยะแต่ละค่าคุณสามารถเริ่มดูที่นี่

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


อย่างที่คนอื่นคิดว่าสิ่งนี้อาจทำอะไรได้มากมาย แต่เนื่องจากฉันมีดิสก์เพียง 10 แผ่นเท่านั้นและมันก็ไม่สามารถทำอะไรที่แย่ได้อย่างแน่นอนฉันแค่ตรวจสอบดิสก์ทั้งหมดตามที่คุณแนะนำตอนนี้ ขอบคุณสำหรับคำตอบที่ครอบคลุม
s1lv3r

23

นี่คือดิสก์ใหม่ ไม่ว่าพวกเขาจะล้มเหลวไม่เช่นนั้น คุณกำลังก้าวไปข้างหน้าอย่างมากด้วยการใช้ระบบไฟล์ ZFS ซึ่งจะทำให้คุณได้รับข้อมูลเชิงลึกเกี่ยวกับการโจมตีและสุขภาพของระบบไฟล์ ...

ฉันจะไม่ทำอะไรนอกจากสร้างอาเรย์ นั่นคือประเด็นของความซ้ำซ้อน คุณจะไม่สามารถชักนำให้เกิดความล้มเหลวของไดรฟ์ด้วยวิธีการที่ระบุไว้อื่น ๆ


1
ตกลงกับสิ่งนี้ - คุณกำลังสร้างอาร์เรย์ หากไดรฟ์ล้มเหลวเมื่อคุณเริ่มวางข้อมูลมันไม่สำคัญว่าคุณจะต้องแทนที่และรักษาตัวเองด้วยอาร์เรย์ การทดสอบไดรฟ์สำหรับปัญหาก่อนที่จะใช้จะไม่ทำให้คุณมีความคิดที่ถูกต้องว่าพวกเขาจะล้มเหลวในชีวิตจริง - ชีวิตจริงไม่ใช่การทดสอบ!
แอชลีย์

1
ฉันเห็นด้วย "ชีวิตจริงที่ไม่ชอบการทดสอบ" แต่ฉันก็พบว่ามีความล้มเหลวของไดรฟ์สองตัวผ่านทางแบดบล็อค ถ้าฉันใส่ทั้งสองอย่างลงในส่วนเดียวกันของ RAID 1, 5 หรือ 10 ฉันจะสูญเสีย RAID ทั้งหมด
rjt

1
@rjt อาจไม่ ส่วนที่ไม่ดีจะได้รับการจัดสรรใหม่และไดรฟ์จะไม่ล้มเหลวในเวลาเดียวกัน นอกจากนี้ความล้มเหลวของไดรฟ์ทั้งหมดไม่ใช่สื่อหรือผลลัพธ์ของบล็อกที่ไม่ถูกต้อง เกิดอะไรขึ้นถ้าแบริ่งของไดรฟ์ชำรุดหรือผิดปกติ?
ewwhite

ฉันไม่ได้ตัดสินใจเกี่ยวกับข้อมูลที่สำคัญในการปฏิบัติภารกิจอาจจะ การศึกษาฮาร์ดไดรฟ์ของ Google บอกว่าไดรฟ์ชำรุดใน 90 วันแรกหรือหลังจาก 3 ปี แบดบล็อคช่วยกำจัดผลไม้ที่แขวนต่ำ
rjt

1
@rjt แน่นอนว่าคุณตัดสินใจเกี่ยวกับข้อมูลภารกิจสำคัญใน "คงที่" - ถ้าคุณไม่ทำคุณจะไม่สามารถเก็บข้อมูลไว้ในไดรฟ์ใด ๆ ไม่ว่าคุณจะทำการทดสอบมากแค่ไหนก็ตาม
voretaq7

10

คุณสามารถใช้ Bonnie ++ สำหรับการทดสอบ มันสามารถเลียนแบบรูปแบบพฤติกรรมของไฟล์เซิร์ฟเวอร์ได้อย่างสมบูรณ์แบบ

ตัวอย่างเช่น:

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

การทดสอบจะทำงานเป็นผู้ใช้ 'ไม่มีใคร' และจะสร้าง / เขียนใหม่ / ลบไฟล์ 100 * 1024 จาก 200 ถึง 150000 ไบต์ต่อไฟล์ภายใน 100 ไดเรกทอรีที่สร้างอัตโนมัติด้านล่าง / home / tmp และจำนวนการทดสอบ = 300 คุณสามารถเล่นนับจำนวน / ขนาดและจำนวนการทดสอบซ้ำ


9

ฉันมักจะทำ RAID แบบเต็มและใช้งานได้เริ่มเติมระบบไฟล์ในระหว่างนี้ตลอดเวลารู้ว่าอาจมีปัญหาเนื่องจากไดรฟ์ที่ตาย ด้วยวิธีนี้ฉันไม่ต้องเสียเวลากับการทดสอบบางประเภทที่ค่อนข้างไม่น่าเชื่อถืออยู่แล้วและฉันจะจับไดรฟ์ที่อ่อนแอจริงทันที หลังจากนั้นอาจยังมีโอกาสสูงที่ความล้มเหลวของการขับขี่เนื่องจาก "การเสียชีวิตของทารก" แต่ไม่มีวิธีที่จะกำจัดสิ่งนี้ได้ในทางปฏิบัติ

ในทางปฏิบัติไม่มีดิสก์สองสามร้อยแผ่นสุดท้ายที่ฉันใช้ใน RAID มีปัญหาใด ๆ ในช่วงปีแรกของการดำเนินการ


8

ฉันทำงานให้กับ บริษัท ที่ทำการทดสอบแบบนี้ทั้งวันทั้งวัน และใช่เราทดสอบฮาร์ดไดรฟ์ทุกตัวที่เราซื้อ กระบวนการของเราเริ่มต้นด้วยการรันไดรฟ์ผ่านโปรแกรมฟรีที่เรียกว่า HDAT2 ดาวน์โหลดฟรี สามารถเข้าถึง SMART และคุณสมบัติอื่น ๆ ของไดรฟ์ที่ไม่สามารถเข้าถึงได้จากสภาพแวดล้อม Windows ขึ้นอยู่กับผลลัพธ์ที่มีเราจะเรียกใช้พวกเขาผ่านหนึ่งในหลาย ๆ บรรทัดของฮาร์ดแวร์เฉพาะ แต่ที่แกนกลางพวกเขาส่วนใหญ่จะทำการทดสอบตัวเองสั้น ๆ ของ SMART การทดสอบระยะยาวการลบที่ปลอดภัยและการอ่านทั้งหมดเพื่อตรวจสอบภาคต่างๆ ข้อเสนอแนะของฉันคือการเรียกใช้การลบดิสก์เต็มรูปแบบที่ปลอดภัยแล้วเรียกใช้การอ่านทั้งหมดจากนั้นทำการทดสอบตัวเองแบบสั้นของ SMART คำสั่งนี้มีความสำคัญเนื่องจากการทดสอบตัวเองในระยะสั้นอาจไม่พบสิ่งใดหากเรียกใช้เมื่อเริ่มต้นการทดสอบของคุณ แต่หลังจากเขียนและอ่านดิสก์แบบเต็มแล้ว หวังว่านี่จะช่วยได้


1
serverfault.com/a/501870/117546เหมาะสมที่สุดสำหรับฉัน แต่ฉันไม่ใช่ผู้เชี่ยวชาญ ทำไม บริษัท ของคุณถึงทดสอบฮาร์ดไดรฟ์ ฉันคิดว่าการทดสอบที่มีประสิทธิภาพที่สุดคือการใช้ไดรฟ์
emory

4

คุณสามารถใช้ชุดการทดสอบของผู้ผลิตหรืออย่างเช่นSpinRiteเพื่อกวาดดิสก์ทั้งหมด นอกจากนี้ยังจะเป็นความคิดที่ดีที่จะมองไปที่สมาร์ทค่าที่กำลังมองหาภาคที่ไม่ดีและมีอายุเก่า / ป้ายความล้มเหลวของคนอื่น ๆ


3

หากคุณต้องการทดสอบจริงๆให้ใช้badblocksการทดสอบการเขียน มันจะเขียนรูปแบบข้อมูลไปยังดิสก์จากนั้นอ่านเพื่อตรวจสอบ ในระหว่างนี้มันจะทำให้ดิสก์ของคุณเครียด ในความคิดของฉันถ้ามันประสบความสำเร็จคุณสามารถเชื่อถือดิสก์

แต่ฉันคิดว่า ZFS และการสำรองข้อมูลที่ดีก็เพียงพอแล้ว

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.