Очень странное поведение под большой нагрузкой
Была относительно слабая машина, сильно нагруженная, на которой стоял apache+postfix (т.е. хостинг+почта). Все ее содержимое перенесли внутрь виртуальной машины openvz (хост-машина в 2-3 раза более мощная, памяти тоже больше, лимиты виртуальной машины выставлены на МАКСИМУМ). В результате под той же нагрузкой стала наблюдаться сильная деградация системы: load average подскакивал до 100, все жутко тормозило. При этом ничего подозрительного не наблюдается: просто все равномерно замедляется. Отключили в виртуальной машине почтовый сервер (postfix), перенесли его обратно на старую машину. В виртуальной оставили только хостинг. Итог: - виртуальная машина теперь загружена слабо (load average около 5.0; при тамошнем числе процессов это очень хорошо и в 4 раза лучше, чем было на старой машине); - на машине с postfix-ом load average 0.8, т.е. postfix ее не грузит почти совсем. Но ведь 5.0 + 0.8 ну никак не равно 100, даже приблизительно. Соответственно, возникает большое подозрение, что openvz при максимальных настройках плохо себя ведет под большой нагрузкой. Т.к. postfix очень интенсивно использует межпроцессные коммуникации, подозрение - на работу с сокетами. Можете прокомментировать? Система, откуда пренесли: 2xP3 1 GHz, linux kernel 2.4. Система с openvz: 2xP4 3 GHz, linux kernel 2.6.
Re: Очень странное поведение под большой нагрузкой
Нужно разбираться. Возможно дисковый I/O тормозит.
Дмитрий, так, конечно, быть не должно и у наших клиентов такого не происходит Вы можете повторить эту ситуацию? Если да, то, пожайлуста, когда будет большой loadavg нажмите несколько раз alt-sysrq-p и alt-sysrq-t Заранее спасибо.
Дисковый IO тормозит вряд ли, потому как в top строчка iowait обычно на нуле. Кэша дискового тоже больше гигабайта.
Повторить уже не могу, т.к. почта переехала окончательно. Правда, периодически машина начинает притормаживать, load average под 50. Рассматриваем вариант с переносом MySQL-сервера на отдельную машину. Но все равно - это довольно странно: раньше связка apache+mysql+postfix работала на машине 2xP1000 с load average 30, а теперь apache+mysql на машине openvz 2xP3000 иногда работает с load average 50. При этом ограничения лимитов не выставлены. Насчет "нажмите несколько раз alt-sysrq-p и alt-sysrq-t" - это можно сделать через SSH-консоль как-то?
alt-sysrq-t можно: # echo t > /proc/sysrq-trigger с alt-sysrq-p полезная инфа вылезает только с клавы.