LINUX.ORG.RU

Сообщения cryozot

 

Зависает сервер, высокий load average

Столкнулся с проблемой, не могу понять куда копать дальше. Прошу поделиться опытом.

Есть выделенный сервер под CentOS 5, на нём работает несколько средненагруженных сайтов. Ничего феноменального: php 5.2, mysql, firebird.

В последнее время сервер стал зависать. В такие периоды он не отвечает на установку TCP-соединения. В принципе время зависания немного соотносится с периодами пиковой нагрузки, но не всегда. Иногда «отвисает» сам через час-полтора, чаще всего нужно делать hard reset через панель хостера.

Сделал простой фокус. Настроил в кроне вывод в лог того, что пишет top, раз в 5 минут. Сегодня отловил момент зависания и удивился. Вот первые строки:

top - 21:48:37 up 1 day,  2:19,  0 users,  load average: 60.68, 56.13, 48.01
Tasks: 113 total,   1 running,  99 sleeping,   0 stopped,  13 zombie
Cpu(s): 22.1%us,  7.4%sy,  0.0%ni, 60.7%id,  9.4%wa,  0.2%hi,  0.2%si,  0.0%st
Mem:   1001640k total,   157868k used,   843772k free,     2012k buffers
Swap:  2024180k total,   241004k used,  1783176k free,    30388k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
 1881 mysql     15   0  238m  57m 3132 S  2.0  5.9 105:48.73 mysqld
    1 root      15   0  2064  524  496 S  0.0  0.1   0:00.50 init
    2 root      RT  -5     0    0    0 S  0.0  0.0   0:00.00 migration/0

То есть высоченный load average (в нормальном полёте показывает около 1.5) при в общем-то незанятом процессоре и небольшом (насколько я понимаю) iowait.

Количество процессов в норме, обычно 100-150.

На этом мои скудные админские познания заканчиваются. Посоветуйте, пожалуйста, куда копать дальше? Спасибо

cryozot
()

RSS подписка на новые темы