ข้อผิดพลาดการตรวจสอบ ZFS ฉันจะเปลี่ยนไดรฟ์เมื่อใด


9

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

อีกไม่กี่สัปดาห์ข้างหน้าและตอนนี้ฉันเห็นข้อผิดพลาดเล็ก ๆ เกิดขึ้นรอบ ๆ สระ (ดูzpool statusผลลัพธ์ด้านล่าง) ฉันควรจะต้องกังวลเกี่ยวกับเรื่องนี้? ฉันจะทราบได้อย่างไรว่าข้อผิดพลาดระบุว่าจำเป็นต้องเปลี่ยนไดรฟ์หรือไม่

# zpool status
  pool: storage
 state: ONLINE
status: One or more devices has experienced an unrecoverable error.  An
        attempt was made to correct the error.  Applications are unaffected.
action: Determine if the device needs to be replaced, and clear the errors
        using 'zpool clear' or replace the device with 'zpool replace'.
   see: http://zfsonlinux.org/msg/ZFS-8000-9P
  scan: scrub repaired 22.5K in 1h18m with 0 errors on Sun Jul 10 03:18:42 2016
config:

        NAME        STATE     READ WRITE CKSUM
        storage     ONLINE       0     0     0
          mirror-0  ONLINE       0     0     0
            enc-a   ONLINE       0     0     2
            enc-b   ONLINE       0     0     0
          mirror-1  ONLINE       0     0     0
            enc-c   ONLINE       0     0     0
            enc-d   ONLINE       0     0     2
          mirror-2  ONLINE       0     0     0
            enc-e   ONLINE       0     0     2
            enc-f   ONLINE       0     0     1
          mirror-3  ONLINE       0     0     0
            enc-g   ONLINE       0     0     0
            enc-h   ONLINE       0     0     3

errors: No known data errors

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

ฉันได้ดูผลลัพธ์การทดสอบ SMART สำหรับไดรฟ์ที่มีผลกระทบและไม่มีสิ่งใดพุ่งออกมาที่ฉัน (การทดสอบทั้งหมดเสร็จสมบูรณ์โดยไม่มีข้อผิดพลาด) แต่ฉันสามารถโพสต์ข้อมูล SMART ได้เช่นกันหากเป็นประโยชน์

อัปเดต:ในขณะที่เตรียมที่จะรีบูตเป็น Memtest86 + ฉันพบข้อผิดพลาดมากมายบนคอนโซล ปกติฉันจะเข้า SSH ดังนั้นฉันจึงไม่เห็นมันมาก่อน ฉันไม่แน่ใจว่าบันทึกใดที่ฉันควรตรวจสอบ แต่ทั้งหน้าจอเต็มไปด้วยข้อผิดพลาดที่มีลักษณะเช่นนี้ (ไม่ใช่บรรทัดข้อผิดพลาดที่แน่นอนของฉันฉันเพิ่งคัดลอกสิ่งนี้จากฟอรัมอื่น):

blk_update_request: I/0 error, dev sda, sector 220473440

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

อัปเดต 2:ฉันเจอปัญหา ZOL นี้ซึ่งดูเหมือนว่าอาจเกี่ยวข้องกับปัญหาของฉัน ชอบ OP มีฉันใช้ hdparm หมุนลงไดรฟ์ของฉันและฉันเห็นข้อผิดพลาด ZFS การตรวจสอบที่คล้ายกันและblk_update_requestข้อผิดพลาด เครื่องของฉันยังคงใช้ Memtest ดังนั้นฉันไม่สามารถตรวจสอบเคอร์เนลหรือรุ่น ZFS ของฉันได้ในขณะนี้ แต่อย่างน้อยนี่ก็ดูเหมือนจะเป็นไปได้ ฉันเห็นคำถามที่คล้ายกันนี้ซึ่งทำให้ท้อใจ ไม่มีใครรู้ปัญหาเกี่ยวกับ ZFS และการหมุนไดรฟ์?

อัปเดต 3:เฟิร์มแวร์และเวอร์ชันไดรเวอร์ที่ไม่ตรงกันในคอนโทรลเลอร์ LSI อาจทำให้เกิดข้อผิดพลาดเช่นนี้หรือไม่? ดูเหมือนว่าฉันใช้งานไดรเวอร์รุ่น 20.100.00.00 และรุ่นเฟิร์มแวร์เป็น 17.00.01.00 จะมีประโยชน์หรือไม่หากลองแฟลชเฟิร์มแวร์ที่อัปเดตบนการ์ด

# modinfo mpt2sas
filename:       /lib/modules/3.10.0-327.22.2.el7.x86_64/kernel/drivers/scsi/mpt2sas/mpt2sas.ko
version:        20.100.00.00
license:        GPL
description:    LSI MPT Fusion SAS 2.0 Device Driver
author:         Avago Technologies <MPT-FusionLinux.pdl@avagotech.com>
rhelversion:    7.2
srcversion:     FED1C003B865449804E59F5

# sas2flash -listall
LSI Corporation SAS2 Flash Utility
Version 20.00.00.00 (2014.09.18) 
Copyright (c) 2008-2014 LSI Corporation. All rights reserved 

    Adapter Selected is a LSI SAS: SAS2308_2(D1) 

Num   Ctlr            FW Ver        NVDATA        x86-BIOS         PCI Addr
----------------------------------------------------------------------------

0  SAS2308_2(D1)   17.00.01.00    11.00.00.05    07.33.00.00     00:04:00:00

อัปเดต 4: พบข้อผิดพลาดเพิ่มเติมในdmesgผลลัพธ์ ฉันไม่แน่ใจว่าสิ่งใดที่เรียกสิ่งเหล่านี้ แต่ฉันสังเกตเห็นพวกเขาหลังจากถอนการติดตั้งไดรฟ์ทั้งหมดในอาร์เรย์เพื่อเตรียมการอัปเดตเฟิร์มแวร์ของคอนโทรลเลอร์ LSI ฉันจะรอสักครู่เพื่อดูว่าการอัปเดตเฟิร์มแวร์แก้ปัญหาได้หรือไม่ แต่นี่คือข้อผิดพลาดในระหว่างนี้ ฉันไม่แน่ใจจริงๆว่าพวกเขาหมายถึงอะไร

[87181.144130] sd 0:0:2:0: [sdc] FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_OK
[87181.144142] sd 0:0:2:0: [sdc] CDB: Write(10) 2a 00 35 04 1c d1 00 00 01 00
[87181.144148] blk_update_request: I/O error, dev sdc, sector 889461969
[87181.144255] sd 0:0:3:0: [sdd] FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_OK
[87181.144259] sd 0:0:3:0: [sdd] CDB: Write(10) 2a 00 35 04 1c d1 00 00 01 00
[87181.144263] blk_update_request: I/O error, dev sdd, sector 889461969
[87181.144371] sd 0:0:4:0: [sde] FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_OK
[87181.144375] sd 0:0:4:0: [sde] CDB: Write(10) 2a 00 37 03 87 30 00 00 08 00
[87181.144379] blk_update_request: I/O error, dev sde, sector 922978096
[87181.144493] sd 0:0:5:0: [sdf] FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_OK
[87181.144500] sd 0:0:5:0: [sdf] CDB: Write(10) 2a 00 37 03 87 30 00 00 08 00
[87181.144505] blk_update_request: I/O error, dev sdf, sector 922978096
[87191.960052] sd 0:0:6:0: [sdg] FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_OK
[87191.960063] sd 0:0:6:0: [sdg] CDB: Write(10) 2a 00 36 04 18 5c 00 00 01 00
[87191.960068] blk_update_request: I/O error, dev sdg, sector 906238044
[87191.960158] sd 0:0:7:0: [sdh] FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_OK
[87191.960162] sd 0:0:7:0: [sdh] CDB: Write(10) 2a 00 36 04 18 5c 00 00 01 00
[87191.960179] blk_update_request: I/O error, dev sdh, sector 906238044
[87195.864565] sd 0:0:0:0: [sda] FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_OK
[87195.864578] sd 0:0:0:0: [sda] CDB: Write(10) 2a 00 37 03 7c 68 00 00 20 00
[87195.864584] blk_update_request: I/O error, dev sda, sector 922975336
[87198.770065] sd 0:0:1:0: [sdb] FAILED Result: hostbyte=DID_OK driverbyte=DRIVER_OK
[87198.770078] sd 0:0:1:0: [sdb] CDB: Write(10) 2a 00 37 03 7c 88 00 00 20 00
[87198.770084] blk_update_request: I/O error, dev sdb, sector 922975368

อัปเดต 5:ฉันอัปเดตเฟิร์มแวร์สำหรับคอนโทรลเลอร์ LSI แต่หลังจากล้างข้อผิดพลาด ZFS และขัดถูฉันเห็นลักษณะการทำงานเดียวกัน (ข้อผิดพลาดการตรวจสอบเล็กน้อยในไดรฟ์บางตัว) ขั้นตอนต่อไปจะทำการอัพเดตเฟิร์มแวร์ของไดรฟ์ด้วยตนเอง

อัปเดต 6:ฉันแทนที่ PCI riser หลังจากอ่านในฟอรัมบางแห่งที่คนอื่น ๆ ในเคส U-NAS NSC800 มีปัญหากับ riser ที่ระบุ ไม่มีผลต่อข้อผิดพลาดของ checksum ฉันเลื่อนการอัปเดตเฟิร์มแวร์ HDD ไปแล้วเนื่องจากกระบวนการดังกล่าวเป็นความเจ็บปวด แต่ฉันคิดว่าถึงเวลาที่ต้องดูดและทำแฟลชไดรฟ์ DOS ที่สามารถบู๊ตได้

อัปเดต 7:ฉันอัปเดตเฟิร์มแวร์ในไดรฟ์ Seagate สามตัว ไดรฟ์อื่นไม่มีการอัปเดตเฟิร์มแวร์หรือฉันไม่สามารถรับได้ (Western Digital บอกฉันว่าไม่มีการอัพเดตเฟิร์มแวร์สำหรับไดรฟ์ของฉัน) ไม่มีข้อผิดพลาดเกิดขึ้นหลังจากการขัดเริ่มต้น แต่ฉันจะให้อย่างน้อยหนึ่งหรือสองสัปดาห์ก่อนที่ฉันจะพูดว่านี่แก้ปัญหาได้ ฉันไม่น่าจะเป็นไปได้สูงว่าเฟิร์มแวร์ในสามไดรฟ์อาจส่งผลกระทบต่อพูลทั้งหมดเช่นนี้

อัปเดต 8:ข้อผิดพลาดในการตรวจสอบกลับมาเหมือนเดิม ฉันอาจดูการอัปเดตเฟิร์มแวร์สำหรับเมนบอร์ด แต่ ณ จุดนี้ฉันสูญเสีย มันจะยาก / แพงที่จะแทนที่ส่วนประกอบทางกายภาพที่เหลืออยู่ (คอนโทรลเลอร์, backplane, สายเคเบิล) และฉันไม่แน่ใจ 100% ว่ามันไม่ได้เป็นปัญหากับการตั้งค่าของฉัน (ZFS + Linux + LUKS + หมุนไดรฟ์ที่ไม่ได้ใช้งาน) ยินดีต้อนรับแนวคิดอื่น ๆ

อัปเดต 9:ยังคงพยายามติดตามสิ่งนี้อยู่ ฉันเจอคำถามนี้ซึ่งมีความคล้ายคลึงกับสถานการณ์ของฉัน ดังนั้นฉันไปข้างหน้าและสร้าง zpool ใหม่ashift=12เพื่อดูว่าจะแก้ปัญหาได้หรือไม่ (ไม่มีโชค) จากนั้นฉันก็ยิงกระสุนและซื้อคอนโทรลเลอร์ใหม่ ฉันเพิ่งติดตั้งการ์ด HBA Supermicro AOC-SAS2LP-MV8 ฉันจะให้หนึ่งหรือสองสัปดาห์เพื่อดูว่าวิธีนี้แก้ปัญหาได้หรือไม่

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


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

ฉันไม่ได้คิดอย่างนั้น ไดรฟ์อยู่ในแชสซี U-NAS NSC-800ที่มาพร้อมกับแบ็คเพลน SATA / SAS ในตัว ที่เชื่อมต่อผ่านตัวเชื่อมต่อ mini-sas 2 ตัวกับLSI SAS 9207-8i HBA ที่มีการเชื่อมต่อผ่าน PCI ไรเซอร์ที่มาพร้อมกับตัวถังไปยังซูเปอร์ไมโคร MBD-X10SDV-4C
Dominic P

1
RAM ของคุณโอเคไหม? ฉันมีข้อผิดพลาดที่คล้ายกันเมื่อโมดูลหน่วยความจำไม่ดี - ไม่มีข้อผิดพลาดของดิสก์ แต่มีจำนวนข้อผิดพลาดการตรวจสอบ (ต่ำ) ในไดรฟ์ทั้งหมด
user121391

1
เป็นไปได้ว่าตัวควบคุมมีความชัดเจนมากที่สุด ณ จุดนี้ ที่จริงแล้วมันเห็นได้ชัดเมื่อไม่นานมานี้ด้วย "Update 4"
Michael Hampton

1
ยินดีต้อนรับคุณ @ hak8or ผู้คนในไซต์นี้ช่วยฉันมากดังนั้นฉันดีใจที่ได้ยินตัวอย่างของฉันอาจช่วยคนอื่นได้
โดมินิค P

คำตอบ:


6

มีข้อผิดพลาดเหล่านั้นในหลายไดรฟ์ดูเหมือนว่าบ่งบอกถึงปัญหา backplane / คอนโทรลเลอร์ / สายเคเบิลมากกว่าปัญหาดิสก์หรือ RAM


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

ลองอัปเดตเฟิร์มแวร์ของส่วนประกอบที่ได้รับผลกระทบทั้งหมด ดิสก์ SATA เหล่านี้หรือไม่
ewwhite

จะทำอย่างไรขอบคุณ ฉันจะเริ่มต้นด้วยการอัปเดตเฟิร์มแวร์บนคอนโทรลเลอร์เพราะฉันเคยเห็นที่อื่นว่าเวอร์ชั่นเฟิร์มแวร์และไดรเวอร์ควรตรงกัน (ดูอัปเดต 3 ตามคำถามของฉัน) ใช่พวกเขาเป็นดิสก์ SATA 1TB ทั้งหมดและฉันจำได้ว่ากล่าวsmartctlว่ามีการอัปเดตเฟิร์มแวร์สำหรับดิสก์ Seagate ที่ฉันใช้อยู่ดังนั้นฉันจะอัปเดตพวกเขาด้วย
Dominic P

7

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

ข้อผิดพลาดการตรวจสอบน้อยไม่จำเป็นต้องบ่งบอกถึงสิ่งที่ไม่ดีในทางกลไกกับไดรฟ์ (บิตเน่าเกิดขึ้น ZFS เกิดขึ้นเพื่อตรวจจับในขณะที่ระบบไฟล์อื่นไม่ทำ) แต่ถ้าข้อผิดพลาดเกิดขึ้นในช่วงเวลาหนึ่งชั่วโมง สถานการณ์ที่แตกต่างกันมากถ้าพวกเขาเกิดขึ้นในช่วงปี

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