@tgarl

Как найти причину падения сервера?

Добрый день.
Возможно кто-то может подсказать что делать с такой проблемой не только отсылая к гуглу.
Проблема в следующем: неделю назад началось все с того что память вся резко заканчивалась и виновником вроде как был mysql, хостер сказал увеличивайте память сервера, тут народ сказал ищите запросы тяжелые. В общем найти не получилось, мучались мучались, но вдруг память перестала кушаться, но стал забиваться канал. Тоже тему поднимал - якобы нагрузка идет от БД, но в итоге спустя пару дней все нормализовалось. Тут пару суток новая напасть опять сайты не работают на сервере. Память не забивается полностью примерное использование 8 из 16. atop показывает что каналы свободны, нагрузка на CPU от mysqld 600-900%. запускаю сохранить в файл что за запросы сейчас в очереди, а там всего их 5 с таймингом 0 и половина из них sleep. т.е. фигня какая-та - запросов нет, но сайт лежит и нагрузка mysqld якобы ого-го какая.
Запускаю htop и вижу что значение tasks в районе 400
перезапустил полностью сервер, никакой реакции, все тоже самое, никакого просвета не видно
решил пойти по другому и начал останавливать службы, стопорю первым делом mysqld, вижу что нагрузка вроде как упала, но tasks остались, открываю в браузере сайт ожидая увидеть ошибку подключения к БД, а вместо этого сайт висит, через минуту выдал 504, обновляю страницу 502, а ошибок о подключении к БД нет. Стопорю всякие memcached, httpd и nginx , обновляю страницу в браузере и получаю опять 502 или 504 вместо проверьте подключение.
при этом tasks в районе 100 и CPU почти на нулях

итого со вчерашнего дня (с 16) до 23:55 с периодическими проблесками на минут 10 только работал. Затем с 0:30 и до 5:00 опять отвалился и только с 5 утра начал работать сайт

Написал хостеру о том что вижу, на что получил администрирование вашего сервере лежит на вас хотите чтобы мы разбирались что у вас за проблемы 3000/час

Помогите пожалуйста советами что делать, что пробовать
  • Вопрос задан
  • 237 просмотров
Пригласить эксперта
Ответы на вопрос 3
@hx510b
"Я знаю, что ничего не знаю"
можно ограничить количество соединений к MySQL, если дело в памяти при нагрузке.
а так надо смотреть и логи, и параметры и т.д. непонятно, что происходит.
Ответ написан
Комментировать
leahch
@leahch Куратор тега Linux
3D специалист. Dолго, Dорого, Dерьмово.
1) Запретите доступ к mysql извне!
2) Ограничте доступ к серверу путем настройки количества коннектов от одного IP
3) Установите firewall и запретите коннекты ко всем портам, кроме ssh и http/https
4) Поставьте логи в mysql на длинные запросы
5) Проанализируйте логи приложения, так как запросы к mysql похоже у вас идут изнутри приложения
6) Что вообще за приложение у вас там стоит? Не взомано ли оно?
Ответ написан
Adamos
@Adamos
Бэкап сайтов есть? Мне в начале февраля ломанули сайт на старом Битриксе, только сравнением с чистым бэкапом удалось найти и вычистить раскиданных по всему сайту зловредов. Правда, особенных проблем они не создавали, взлом был обнаружен почти случайно.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы