Помилки контрольної суми 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, яка, здається, може бути пов'язана з моєю проблемою. Як і ОП там, я використовую hdparm, щоб розкручувати свої накопичувачі, і я бачу подібні помилки та blk_update_requestпомилки контрольної суми ZFS . Моя машина все ще працює 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, прочитавши на деяких форумах, що інші люди зі справою U-NAS NSC800 мали проблеми з наданим стояком. На помилки контрольної суми не вплинуло. Я відкладав оновлення прошивки жорсткого диска, тому що процес такий біль, але, мабуть, прийшов час висмоктати його і зробити завантажувальну флешку DOS.

Оновлення 7: Я оновив прошивку на трьох дисках Seagate. Інші диски або не мали оновлення прошивки, або я не зміг її отримати (Western Digital сказав мені, що для мого накопичувача оновлення програмного забезпечення не було). Після початкового скрабування помилок не з’явилося, але я збираюся дати це хоча б тиждень-два, перш ніж я скажу, що це вирішило проблему. Мені здається вкрай малоймовірним, що прошивка на трьох накопичувачах може впливати на цілий пул таким чином.

Оновлення 8: Помилки контрольної суми повернулися, як і раніше. Я можу заглянути в оновлення мікропрограми материнської плати, але на даний момент я втрачаю. Замінити решту фізичних компонентів (контролер, платівка, кабелі) буде важко / дорого, і я просто не впевнений на 100%, що це не проблема з моїми налаштуваннями (ZFS + Linux + LUKS + Spinning disle idle drive). Будь-які інші ідеї вітаються.

Оновлення 9: все ще намагаюся відстежити це. Я зіткнувся з цим питанням, яке мало схожість з моєю ситуацією. Отже, я пішов вперед і відновив zpool, ashift=12щоб побачити, чи це вирішить проблему (не пощастило). Потім я кусав кулю і купив новий контролер. Щойно я встановив карту HBA Supermicro AOC-SAS2LP-MV8 . Я дам йому тиждень-два, щоб побачити, чи вирішує це проблема.

Оновлення 10: Просто щоб закрити це. Минуло 2 тижні з моменту появи нової картки HBA, і, загрожуючи її суглобом, з тих пір я не мав помилок контрольної суми. Величезна подяка всім, хто допоміг мені розібратися в цьому.


2
Чи можете ви розповісти більше про обладнання? Наявність цих помилок на декількох накопичувачах, схоже, вказує на проблему задньої площини / контролера / кабелів, ніж проблеми з диском.
ewwhite

Я не думав про це. Приводи перебувають у шасі U-NAS NSC-800, що постачається із вбудованою опорною площиною SATA / SAS. Це підключено через 2 роз'єми mini-sas до LSI SAS 9207-8i HBA. Це підключено через стояк PCI, який поставляється разом з корпусом до Supermicro MBD-X10SDV-4C .
Домінік П

1
Чи добре у вас оперативна пам'ять? У мене були подібні помилки, коли модуль пам’яті був поганий - жодних помилок на диску, але деякі (низькі) кількості помилок контрольної суми на всіх дисках.
користувач121391

1
Це, швидше за все, контролер очевидно зараз. Насправді це було очевидно очевидним деякий час тому, з "Update 4".
Майкл Хемптон

1
Запрошуємо @ hak8or. Люди на цьому веб-сайті мені дуже допомогли, тому приємно почути, що мій приклад може допомогти комусь іншому.
Домінік П

Відповіді:


6

Наявність цих помилок на декількох накопичувачах, схоже, вказує на проблему задньої площини / контролера / кабелів, ніж проблеми з диском або оперативною пам'яттю.


Дякую за допомогу. Я не в змозі замінити всі ці компоненти на даний момент. Чи є у вас пропозиція про те, як я міг би її звузити чи що, можливо, буде найвірогіднішим винуватцем?
Домінік П

Спробуйте оновлення мікропрограмного забезпечення всіх компонентів, на які впливає вплив. Це диски SATA?
ewwhite

Зробимо, спасибі Почну з оновлення прошивки на контролері, оскільки я бачив, що версії мікропрограмного забезпечення та драйвера повинні відповідати (див. Оновлення 3 на моє запитання). Так, всі вони є дисками SATA на 1 ТБ, і я пам’ятаю, що smartctlговорив, що для деяких використовуваних дисків Seagate, які я використовую, було доступно оновлення мікропрограмного забезпечення, тому я також оновлю їх.
Домінік П

7

Моє загальне правило: якщо помилки продовжують зростати несподівано, диск потрібно замінити; якщо він статичний, можливо, був якийсь перехідний стан, який спричинив помилку, і система не відтворює умови, що спричинили проблеми.

Кілька помилок контрольної суми не обов'язково вказують на що-небудь погане механічно з накопичувачем (трапляється бітова гниль, ZFS просто виявляється, а інші файлові системи не мають), але якщо ці помилки траплялися протягом години, то це набагато інша ситуація, ніж якщо б це сталося протягом року.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.