Soy bastante nuevo en ZFS y tengo una configuración simple de agrupación de almacenamiento reflejada con 8 unidades. Después de algunas semanas de funcionamiento, una unidad parecía generar muchos errores, así que la reemplacé.
Pasan algunas semanas más y ahora veo pequeños errores en todo el grupo (ver el zpool status
resultado a continuación). ¿Debería estar preocupado por esto? ¿Cómo puedo determinar si el error indica que la unidad necesita ser reemplazada?
# 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 me dice "Determine si el dispositivo necesita ser reemplazado ...", pero no estoy seguro de cómo hacerlo. Leí el artículo referenciado que fue útil pero no exactamente concluyente.
He visto los resultados de la prueba SMART para las unidades afectadas, y nada me llamó la atención (todas las pruebas se completaron sin errores), pero también puedo publicar los datos SMART si sería útil.
Actualización: Mientras me preparaba para reiniciar en Memtest86 +, noté muchos errores en la consola. Normalmente hago SSH, así que no los vi antes. No estoy seguro de qué registro debería haber estado revisando, pero toda la pantalla estaba llena de errores que se ven así (no es mi línea de error exacta, solo copié esto de un foro diferente):
blk_update_request: I/0 error, dev sda, sector 220473440
Según algunos Google, parece que este error puede ser indicativo de un mal disco, pero es difícil para mí creer que todos están fallando a la vez de esta manera. ¿Pensamientos sobre a dónde ir desde aquí?
Actualización 2: me encontré con este problema de ZOL que parece estar relacionado con mi problema. Al igual que el OP, estoy usando hdparm para hacer girar mis unidades y veo errores y blk_update_request
errores de suma de verificación ZFS similares . Mi máquina todavía está ejecutando Memtest, por lo que no puedo verificar mi kernel o la versión de ZFS en este momento, pero esto al menos parece una posibilidad. También vi esta pregunta similar que es un poco desalentadora. ¿Alguien sabe de problemas con ZFS y unidades giratorias?
Actualización 3: ¿Podría una versión de firmware y controlador no coincidente en el controlador LSI causar errores como este? Parece que estoy ejecutando una versión de controlador de 20.100.00.00 y una versión de firmware de 17.00.01.00. ¿Valdría la pena intentar actualizar el firmware actualizado en la tarjeta?
# 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
Actualización 4: Capturó algunos errores más en la dmesg
salida. No estoy seguro de qué provocó esto, pero los noté después de desmontar todas las unidades en la matriz en preparación para actualizar el firmware del controlador LSI. Esperaré un poco para ver si la actualización del firmware resolvió el problema, pero mientras tanto, aquí están los errores. No estoy realmente seguro de lo que significan.
[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
Actualización 5: Actualicé el firmware para el controlador LSI, pero después de borrar los errores y la limpieza de ZFS, veo el mismo comportamiento (errores menores de suma de verificación en algunas de las unidades). El siguiente paso será actualizar el firmware en las propias unidades.
Actualización 6: Reemplacé el elevador PCI después de leer en algunos foros que otras personas con el caso U-NAS NSC800 han tenido problemas con el elevador proporcionado. No hubo efecto sobre los errores de suma de verificación. He estado posponiendo la actualización del firmware del disco duro porque el proceso es muy difícil, pero supongo que es hora de absorberlo y hacer una unidad flash de arranque de DOS.
Actualización 7: Actualicé el firmware en las tres unidades de Seagate. Las otras unidades no tenían una actualización de firmware disponible o no pude obtenerla (Western Digital me dijo que no había una actualización de firmware para mi unidad). No aparecieron errores después de un exfoliante inicial, pero lo voy a dar al menos una o dos semanas antes de decir que esto resolvió el problema. Me parece muy poco probable que el firmware en tres unidades pueda estar afectando a todo el conjunto de esta manera.
Actualización 8: Los errores de la suma de verificación están de vuelta, como antes. Podría buscar una actualización de firmware para la placa base, pero en este punto estoy perdido. Será difícil / costoso reemplazar los componentes físicos restantes (controlador, placa posterior, cableado), y simplemente no estoy 100% seguro de que no sea un problema con mi configuración (ZFS + Linux + LUKS + Desplegar unidades inactivas). Otras ideas son bienvenidas.
Actualización 9: Todavía estoy tratando de rastrear este. Encontré esta pregunta que tenía algunas similitudes con mi situación. Entonces, seguí adelante y reconstruí el zpool usando ashift=12
para ver si eso resolvería el problema (sin suerte). Luego, mordí la bala y compré un nuevo controlador. Acabo de instalar una tarjeta HBA Supermicro AOC-SAS2LP-MV8 . Le daré una o dos semanas para ver si esto resuelve el problema.
Actualización 10: Solo para cerrar esto. Han pasado aproximadamente 2 semanas desde que entró la nueva tarjeta HBA y, a riesgo de maldecirla, no he tenido errores de suma de verificación desde entonces. Muchísimas gracias a todos los que me ayudaron a resolver esto.