Siguiente situación:
Un productivo servidor Linux Debian 7 con kernel
3.2.0-4-amd64 #1 SMP Debian 3.2.68-1+deb7u2 x86_64 GNU/Linux
Fabricante: Supermicro
Nombre del producto: X10SLL-F
Versión:1.02
Controlador SATA: Intel Corporation Lynx Point 6-port SATA Controller 1 [AHCI mode] (rev 04)
2x SSD, 2x disco duro
cada unidad puede hacer Sata Rev3 (6.0Gb / s)
hdparm -I /dev/sd[a-d]|egrep "Model|speed|Transport"
Model Number: TOSHIBA THNSNH128GBST
Transport: Serial, ATA8-AST, SATA 1.0a, SATA II Extensions, SATA Rev 2.5, SATA Rev 2.6, SATA Rev 3.0
* Gen1 signaling speed (1.5Gb/s)
* Gen2 signaling speed (3.0Gb/s)
* Gen3 signaling speed (6.0Gb/s)
* SMART Command Transport (SCT) feature set
Model Number: TOSHIBA THNSNH128GBST
Transport: Serial, ATA8-AST, SATA 1.0a, SATA II Extensions, SATA Rev 2.5, SATA Rev 2.6, SATA Rev 3.0
* Gen1 signaling speed (1.5Gb/s)
* Gen2 signaling speed (3.0Gb/s)
* Gen3 signaling speed (6.0Gb/s)
* SMART Command Transport (SCT) feature set
Model Number: ST2000VX000-1CU164
Transport: Serial, SATA Rev 3.0
* Gen1 signaling speed (1.5Gb/s)
* Gen2 signaling speed (3.0Gb/s)
* Gen3 signaling speed (6.0Gb/s)
* SMART Command Transport (SCT) feature set
Model Number: ST2000VX000-1CU164
Transport: Serial, SATA Rev 3.0
* Gen1 signaling speed (1.5Gb/s)
* Gen2 signaling speed (3.0Gb/s)
* Gen3 signaling speed (6.0Gb/s)
* SMART Command Transport (SCT) feature set
Los mensajes del kernel sugieren (al menos para mí) un problema con las 4 unidades, lo que me lleva a creer que es el controlador sata quien podría tener la culpa.
ata1: exception Emask 0x50 SAct 0x0 SErr 0x4090800 action 0xe frozen
ata1: irq_stat 0x00400040, connection status changed
ata1: SError: { HostInt PHYRdyChg 10B8B DevExch }
ata1: hard resetting link
ata2: exception Emask 0x50 SAct 0x0 SErr 0x4090800 action 0xe frozen
ata2: irq_stat 0x00400040, connection status changed
ata2: SError: { HostInt PHYRdyChg 10B8B DevExch }
ata2: hard resetting link
ata4: exception Emask 0x50 SAct 0x0 SErr 0x4090800 action 0xe frozen
ata4: irq_stat 0x00400040, connection status changed
ata4: SError: { HostInt PHYRdyChg 10B8B DevExch }
ata4: hard resetting link
ata3: exception Emask 0x50 SAct 0x0 SErr 0x4090800 action 0xe frozen
ata3: irq_stat 0x00400040, connection status changed
ata3: SError: { HostInt PHYRdyChg 10B8B DevExch }
ata3: hard resetting link
ata3: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
ata2: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
ata4: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
ata1: SATA link up 1.5 Gbps (SStatus 113 SControl 310)
ata4.00: ACPI cmd f5/00:00:00:00:00:00 (SECURITY FREEZE LOCK) filtered out
ata4.00: ACPI cmd b1/c1:00:00:00:00:00 (DEVICE CONFIGURATION OVERLAY) filtered out
ata2.00: ACPI cmd f5/00:00:00:00:00:00 (SECURITY FREEZE LOCK) filtered out
ata2.00: ACPI cmd b1/c1:00:00:00:00:00 (DEVICE CONFIGURATION OVERLAY) filtered out
ata1.00: ACPI cmd f5/00:00:00:00:00:00 (SECURITY FREEZE LOCK) filtered out
ata1.00: ACPI cmd b1/c1:00:00:00:00:00 (DEVICE CONFIGURATION OVERLAY) filtered out
ata3.00: ACPI cmd f5/00:00:00:00:00:00 (SECURITY FREEZE LOCK) filtered out
ata3.00: ACPI cmd b1/c1:00:00:00:00:00 (DEVICE CONFIGURATION OVERLAY) filtered out
ata2.00: ACPI cmd f5/00:00:00:00:00:00 (SECURITY FREEZE LOCK) filtered out
ata2.00: ACPI cmd b1/c1:00:00:00:00:00 (DEVICE CONFIGURATION OVERLAY) filtered out
ata1.00: ACPI cmd f5/00:00:00:00:00:00 (SECURITY FREEZE LOCK) filtered out
ata1.00: ACPI cmd b1/c1:00:00:00:00:00 (DEVICE CONFIGURATION OVERLAY) filtered out
ata2.00: configured for UDMA/33
ata2: EH complete
ata1.00: configured for UDMA/33
ata1: EH complete
ata3.00: ACPI cmd f5/00:00:00:00:00:00 (SECURITY FREEZE LOCK) filtered out
ata3.00: ACPI cmd b1/c1:00:00:00:00:00 (DEVICE CONFIGURATION OVERLAY) filtered out
ata4.00: ACPI cmd f5/00:00:00:00:00:00 (SECURITY FREEZE LOCK) filtered out
ata4.00: ACPI cmd b1/c1:00:00:00:00:00 (DEVICE CONFIGURATION OVERLAY) filtered out
ata3.00: configured for UDMA/33
ata3: EH complete
ata4.00: configured for UDMA/33
ata4: EH complete
Lo que ya descubrí (o creo haber descubierto)
Los comandos SECURITY FREEZE LOCK
y DEVICE CONFIGURATION OVERLAY
no son importantes para el problema.
Mientras leía alrededor de 20 informes de errores y muchas documentaciones, algunos enlaces sugirieron desactivar NCQ, lo cual hice.
Primero para un dispositivo, después de esperar 1 día para verificar si el error se repite, sucedió nuevamente y lo deshabilité para los 4 dispositivos
echo "1" >/sys/block/sdc/device/queue_depth
No hay cambios obvios en la situación.
https://ata.wiki.kernel.org/index.php/Libata_error_messages
https://wiki.archlinux.org/index.php/Solid_State_Drives#Resolving_NCQ_errors
Otros sugieren cable sata o incluso una incompatibilidad entre placa + unidades.
Sin embargo, como parece que tengo el problema en una unidad y esto se completa en los 4, o que tengo el problema directamente en los 4 dispositivos, no puedo precisar el problema aún más.
Como este es un servidor de producción, es posible poner este servidor fuera de servicio por mantenimiento (también conocido como bios / kernel param settings), pero me gusta evitarlo si es posible.
Según el proveedor de alojamiento, esto podría estar relacionado con la administración de energía:
https://bugzilla.kernel.org/show_bug.cgi?id=74961 https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1318218
echo "medium_power" >/sys/class/scsi_host/host0/link_power_management_policy
Antes del cambio, esto se estableció en max_performance
.
Esto tampoco ayudó.
Los valores inteligentes de los HDD / SDD están bien, nada demasiado obvio.
Tenga en cuenta que el valor UDMA parece ser 33 solo ahora.
En el arranque del servidor, estos fueron los valores de velocidad del enlace sata:
[ 3.161850] ata6: SATA link down (SStatus 0 SControl 300)
[ 3.161867] ata2: SATA link up 6.0 Gbps (SStatus 133 SControl 300)
[ 3.161882] ata4: SATA link up 3.0 Gbps (SStatus 123 SControl 300)
[ 3.161894] ata1: SATA link up 6.0 Gbps (SStatus 133 SControl 300)
[ 3.161907] ata5: SATA link down (SStatus 0 SControl 300)
La situación podría ocurrir solo con una carga alta en los discos duros, todavía no lo probé ya que obviamente afectaría el rendimiento del servidor.
No hay carga en los SSD, están montados pero ninguno de los procesos los utiliza.
La RAM es ECC por lo que puedo decir.
dmidecode -t 17
# dmidecode 2.11
SMBIOS 2.7 present.
Handle 0x0023, DMI type 17, 34 bytes
Memory Device
Array Handle: 0x0022
Error Information Handle: Not Provided
Total Width: 72 bits
Data Width: 64 bits
Size: 8192 MB
Form Factor: DIMM
Set: None
Locator: P1-DIMMA1
Bank Locator: P0_Node0_Channel0_Dimm0
Type: DDR3
Type Detail: Synchronous
Speed: 1600 MHz
Manufacturer: Samsung
Serial Number: 373A6427
Asset Tag: 9876543210
Part Number: M391B1G73QH0-CK0
Rank: 2
Configured Clock Speed: 1600 MHz
Avíseme si puedo dar información adicional, ya que no tengo las ideas de qué hacer a continuación.