100 % Iowait + Laufwerkfehler in dmesg

100 % Iowait + Laufwerkfehler in dmesg

Ich habe einen Server, auf dem eine recht häufig besuchte Webanwendung läuft.
Er hat ein RAID 1 mit 2 Festplatten, 64 MB Puffer, 7200 U/min.
Heute hat er angefangen, Fehler wie diese auszugeben:

kernel: ata2.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x6 frozen
kernel: ata2.00: cmd b0/d0:01:00:4f:c2/00:00:00:00:00/00 tag 0 pio 512 in
kernel: res 40/00:00:00:4f:c2/00:00:00:00:00/00 Emask 0x4 (timeout)
kernel: ata2.00: status: { DRDY }
kernel: ata2: hard resetting link
kernel: ata2: SATA link up 3.0 Gbps (SStatus 123 SControl 300)
kernel: ata2.00: max_sectors limited to 256 for NCQ
kernel: ata2.00: max_sectors limited to 256 for NCQ
kernel: ata2.00: configured for UDMA/133
kernel: sd 1:0:0:0: timing out command, waited 7s
kernel: ata2: EH complete
kernel: SCSI device sda: 976773168 512-byte hdwr sectors (500108 MB)
kernel: sda: Write Protect is off
kernel: SCSI device sda: drive cache: write back    

Den ganzen Tag war es einer Belastung von über 10-15 ausgesetzt.
Ich überwache es mit atop und es zeigt einige seltsame Werte an:

DSK |          sda | busy    100% | read       2 | write    208 | KiB/r     16 | KiB/w     32 | MBr/s   0.00 | MBw/s   0.65 | avq    86.17 | avio 47.6 ms |
DSK |          sdb | busy      1% | read      10 | write    117 | KiB/r     17 | KiB/w      5 | MBr/s   0.02 | MBw/s   0.07 | avq     4.86 | avio 1.04 ms |

Ich verstehe ehrlich gesagt nicht, warum nur sda die ganze Last abbekommt. Ich habe einen Prozess, der ständig 1-2 Megabyte schreibt, aber was soll's ... 100 % Iowait?

Aktualisieren:
smartctl -A /dev/sda

ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE
1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0
3 Spin_Up_Time            0x0027   239   239   021    Pre-fail  Always       -       8050
4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       22
5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0
7 Seek_Error_Rate         0x002e   200   200   000    Old_age   Always       -       0
9 Power_On_Hours          0x0032   100   100   000    Old_age   Always       -       595
10 Spin_Retry_Count        0x0032   100   253   000    Old_age   Always       -       0
11 Calibration_Retry_Count 0x0032   100   253   000    Old_age   Always       -       0
12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -        21
192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       20
193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       22
194 Temperature_Celsius     0x0022   118   106   000    Old_age   Always       -       32
196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0 
197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0
198 Offline_Uncorrectable   0x0030   100   253   000    Old_age   Offline      -       0
199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0
200 Multi_Zone_Error_Rate   0x0008   100   253   000    Old_age   Offline      -       0

Antwort1

Es sieht so aus, als ob das Laufwerk ausfällt – das System setzt das Laufwerk/die Verbindung zurück und versucht, es zu erreichen. Da Sie den Status von SDA und SDB sehen können, vermute ich, dass es sich um ein Software-RAID handelt. Sie sollten also in der Lage sein, /proc/mdstat zu überprüfen, um zu sehen, was mit dem Software-RAID los sein könnte.

Der IOWait liegt daran, dass der Software-RAID beim Warten auf das Schreiben in SDA aufgehalten wird. Dies wiederum hält Prozesse auf und verursacht die hohe Auslastungszahl.

Sie sollten Ihr SDA so schnell wie möglich ersetzen.

Antwort2

Sieht für mich nach einer defekten Festplatte aus ...

Antwort3

sda verarbeitet I/O-Anfragen nicht umgehend. Wenn es nicht am Laufwerk liegt, liegt ein I/O-Ungleichgewicht vor. Haben Sie eine Swap-Partition auf sda? Wenn ja, könnten Sie Speicherprobleme haben, die zu einem Überladen von Speicherseiten in und aus dem Swap führen. Stellen Sie sicher, dass Sie Swap-Speicher auf beiden Laufwerken mit der gleichen Priorität zugewiesen haben. Das Programm sar kann hilfreich sein.

verwandte Informationen