Задавайте вопросы, мы ответим
Вы не зашли.
Здравствуйте.
Имеется сервер на FreeBSD, на котором крутится система мониторинга Zabbix, которая в свою очередь работает на MySQL.
В последнее время наблюдаются периодические тормоза Zabbix'а. Установлено, что в такие моменты происходит интенсивное обращение к диску движка MySQL. Так же установлено, что происходит это систематически, практически через равные промежутки времени. График прилагаю.
Вынесли tmpdir на tmpfs, однако tmpdir, похоже, вообще не используется, поскольку всегда пустой. Так же применили параметры из примера my-large.cnf При этом оперативная память используется мало:
Отредактированно MAV (29.07.2011 08:25:23)
Неактивен
Что-то пишет
Включите журнал медленных запросов и посмотрите. Учитывая предсказуемую
периодичность — можете еще и просто processlist посмотреть во время прихода
нагрузки.
Неактивен
Включил медленные запросы. В лог сыпется очень много всего. Это и не удивительно, т.к. в момент нагрузки тормозит вся база, и наверное почти все запросы становятся "медленными".
В процессах ничего подозрительного, ранее уже выяснили, что нагрузку на диск создает именно MySQL.
Неактивен
Меня смущает то, что половину времени сервер вообще отдыхает: нагрузка на цпу нулевая, оперативная память вообще ничем не занята. Да и обращения к дискам минимальные. А потом MySQL начинает что-то судорожно делать, читать/писать на диск. Вот если бы эти приступы как-нибудь размазать по времени: пускай оно чаще пишет на диск, но не так интенсивно.
Может где-то кэш подкрутить?
Неактивен
Хорошо. Представьте себе такую аналогию. Большой город. Каждый день с восьми
до 11 утра и с пяти до семи вечера на улицах возникают пробки из автомобилей.
Вы бы безусловно хотели, чтобы кто-то подкрутил кэши у дорог, и автомобили раз-
мазывались по времени в течение суток, но, к сожалению, люди едут на работу к
определенному времени, и едут с работы тоже в определенное время.
Так же и у Вас — заббикс запускает проверки в определенное время, и результаты
записывает именно тогда, когда делает проверки.
В processlist наверняка каких-то запросов висит больше, чем других — используйте
это знание. Со slow log аналогично, можно воспользоваться готовой утилитой
mk-query-digest (http://maatkit.org) для подсчета статистики запросов из slow log.
Неактивен
Заббикс уже оптимизировали как только можно. Проверки он запускает не в определенное время, показатели с источников поступают ровным потоком. Данные идут практически непрерывно и круглосуточно, с периодичностью от раз в 5 сек до раз в 5 мин. Там нет ничего, что проверялось бы и запускалось раз в несколько часов.
В процессах действительно ничего подозрительного, это уже проверили.
За mk-query-digest спасибо, попробуем.
Неактивен