Доброй ночи. Пишу о баге, который мучает довольно давно, а 2 дня активно выясняем причины. Описываю ситуацию.
Вчера.
Прихожу домой, логинюсь в консоль на сервере (ASP 9.0), сам логин происходит дико долго, а операции в консоли вообще с тормозами. Ладно, думаю, опять ползователи mySQL замучали. Ан нет. top пишет загрузку проца ниже трети, iowait по нулям, с памятью тоже все выглядит нормально. Далее видим странности.
1. захожу в консоль mysql, там show processlist - вуаля! 104 rows in set, запросы сами по себе нормальные, не подозрителоьные, но вот количество активных, явное отсутствие пользователей в подний час и отсутствие mesqld в топе на верхних позициях смущает.
2. смотрим netstat - а там среди прояего висят 11 активных сокетов с моего инетовского адреса на мой инетовский по 80 порту. По сути ничего подозрительного, но вот кто может у меня коннектить самому себе на 80 порт, да еще по инетт адресу - ума не приложу. Разве что NAT-коннекты, но насколько я помню они в netstat не указываются, поправьте, если ошибаюсь.
итог: прошло само и незаметно после перезапуска mysqld, решил, что оно просто повисло и вызвало такие странные тормоза.
Сегодня:
начало такое же, тормоза без загрузке в топе. но на этот раз в show processlist не висит куча запросов. Убийство mysqld не избавляет от тормозов. Лезем в нетстат, уже с опцией -p, а там тихий ужас. Коннектов на самого себя ужо нет. Но зато внизу, где Active UNIX domain sockets (w/o servers) строчек так 400 наподобии:
unix 3 [ ] DGRAM 79124672 16389/
(заголовки столбцов Proto RefCnt Flags Type State I-Node PID/Program name Path)
pidы идут почти попорядку, видимо, уже несуществующие, имя приложения, открывшего сокет, как видно, не написано. Убиваю все, что только можно. Кажется, тормоза закончились при убийстве httpd, сокеты тоже странным образом пропали. Явное подозрение на ДОС-атаку. Но искал в логах апача - в последней 1000 строк ничего подозрительного. Может быть, по таким приметам можно определить, что происходит или хотя бы что следует проверить? Если есть мысли, высказывайте. Заранее спасибо за ответ.
Вчера.
Прихожу домой, логинюсь в консоль на сервере (ASP 9.0), сам логин происходит дико долго, а операции в консоли вообще с тормозами. Ладно, думаю, опять ползователи mySQL замучали. Ан нет. top пишет загрузку проца ниже трети, iowait по нулям, с памятью тоже все выглядит нормально. Далее видим странности.
1. захожу в консоль mysql, там show processlist - вуаля! 104 rows in set, запросы сами по себе нормальные, не подозрителоьные, но вот количество активных, явное отсутствие пользователей в подний час и отсутствие mesqld в топе на верхних позициях смущает.
2. смотрим netstat - а там среди прояего висят 11 активных сокетов с моего инетовского адреса на мой инетовский по 80 порту. По сути ничего подозрительного, но вот кто может у меня коннектить самому себе на 80 порт, да еще по инетт адресу - ума не приложу. Разве что NAT-коннекты, но насколько я помню они в netstat не указываются, поправьте, если ошибаюсь.
итог: прошло само и незаметно после перезапуска mysqld, решил, что оно просто повисло и вызвало такие странные тормоза.
Сегодня:
начало такое же, тормоза без загрузке в топе. но на этот раз в show processlist не висит куча запросов. Убийство mysqld не избавляет от тормозов. Лезем в нетстат, уже с опцией -p, а там тихий ужас. Коннектов на самого себя ужо нет. Но зато внизу, где Active UNIX domain sockets (w/o servers) строчек так 400 наподобии:
unix 3 [ ] DGRAM 79124672 16389/
(заголовки столбцов Proto RefCnt Flags Type State I-Node PID/Program name Path)
pidы идут почти попорядку, видимо, уже несуществующие, имя приложения, открывшего сокет, как видно, не написано. Убиваю все, что только можно. Кажется, тормоза закончились при убийстве httpd, сокеты тоже странным образом пропали. Явное подозрение на ДОС-атаку. Но искал в логах апача - в последней 1000 строк ничего подозрительного. Может быть, по таким приметам можно определить, что происходит или хотя бы что следует проверить? Если есть мысли, высказывайте. Заранее спасибо за ответ.