1

Апач плодит процессы, и нагружает iowait, %wa в top-е где-то 60-80%, iotop показывает 15-40 процессов апача, каждый из которых "пользует" диск на 60-99%. Соответственно, все тупит и лежит. Иногда это происходит, когда диск нагружают "тяжелые" дисковые операции, например, ротейт, бекапы, пересчет квоты, но иногда эти же операции апач не валят, т.е. без видимых причин. Четкой зависимости обнаружить не удалось.

Что делали:
Вынесли пользовательские данные на отдельный винчестер, отключили журнал.
Вынесли mysql базы на отдельный ssd.
Уменьшили ionice для ротейта, бекапов.
Обновили httpd-itk с 2.2.23 на 2.2.24.
В целом принятые меры немного помогли, все работает ровно, но только до начала работы процесса с большой дисковой нагрузкой (см. выше). Так же стоит сказать, что диск с пользовательскими данными - обычный десктопный винчестер на 7200 оборотов и с кэшем 16 МБ.

Система centos 6.4, i5, 12 ГБ ОЗУ.
httpd-itk установлен из CentALT
Перед апачем стоит nginx.
На сервере около 1200 сайтов, в основном простые и с небольшой посещаемостью (а то и вовсе без посещаемости). Средний LA в обычные вечера (т.е. когда нет описанного выше скачка нагрузки) - около 2-2.5, средний %wa - 1-10%.


<IfModule itk.c>
StartServers       8
MinSpareServers    5
MaxSpareServers   20
ServerLimit       78
MaxClients        78
MaxRequestsPerChild  1000
</IfModule>

Чуть раньше MaxClients и ServerLimit был 256 и в моменты наступления проблемы LA возростал до 150(!), после расчета и выставления 78 ЛА стал доходить до 35, тупить 5-10 минут и возвращаться в нормальное состояние.

По форумам таких тем масса, но четкого и однозначного решения нет.

В чем проблема, в каком направлении копать? С апачем, который валится при малейшей нагрузке или же с дисковой подсистемой?

2 (29.04.2013 16:19:18 отредактировано Macumazan)

iostat -p в момент высокого la покажет скорее всего, насколько плох вариант с десктопным винчестером, у которого дела с iops  обстоят намного хуже, чем у sata wd raptor или тем более sas 15k дисков.