powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / Аномально большой трафик mysql - ддос атака?
19 сообщений из 19, страница 1 из 1
Аномально большой трафик mysql - ддос атака?
    #38006495
Myma
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Все началось недели 3 назад. Один сервер не выдержал 5000 хостов и завис. Я подумал что это ддос и начал ковырять апач, но в логах было все в норме. На следующий день я выявил что атаковали по всем возможным портам (поленился в свое время настроить iptables на все службы) причем сервер падал из-за того, что HDD не справлялся, запросы копились ну и все. После закрытия ssh, ftp и mysql от всех кроме меня и настройки iptables DNS и SMTP, нагрузка на HDD снизилась, но не исчезла. Через неделю ситуация повторилась и сервер опять упал. Я начал ковырять в сторону оптимизации сервера - отправил некоторые таблицы в память, подкрутил апач. Теперь вроде сервер держится, но WA% в топе все равно скачет до 20-30%. Во время настройки Mysql обнаружил аномально большой объем исходящего трафика - от 10 до 25гб в час. Сделал лог, скачал, посмотрел - вроде бы все запросы от сайта и я подумал что нужно крутить сайт. И подкручивал все это время, пока со вторым моим сервером не случилась такая же проблема (с которым я сравнивал объем трафика - он было то-ли 70мб в час, то-ли 700). Так вот на днях заметил что странички стали открываться заметно дольше, а запросы в несколько раз медленнее. В топе на это раз увидел активность %si, которая постоянно держится на уровне 10-15% даже ночью, даже когда апач с mysql выключен. Все остальные службы закрыты за iptables, ДНС тоже выключен. Я перезагрузил сервер, но проблема не исчезла. На следующий день во время выполнения одного скипта я заметил знакомую картину %wa -50, хотя до этого, буквально неделю назад этот скрипт выполнялся в 6 потоков и все было по нулям. Сегодня заметил в phpmyadmin что объем трафика теперь не 70 или 700, а 25ГБ. Но на этом сервере всего один сайт с посещаемостью в 300 уников. Я опять сделал лог, открыл - опят таки все запросы в логе от сайта, как раз попал скрипт, который делает очень много запросов, но на моем домашнем компе он не дает нагрузку более 2% (как раз во время его отладки открыл для себя преимущество индексов :)). Начал было уже думать, что загоняюсь и что-то видимо попутал, как заметил, что лог весил 60 мб, а со времени запуска набралось уже 300+ буквально за несколько минут. Запустил у себя на домашнем этот скрипт несколько раз подряд в 6 потоков - 60мб в час написано. Из соседних тем посмотрел по iftop активность, но ничего там не выявил. Не понимаю откуда такой объем трафика и как его отловить. Очевидно что он локальный, потому что у меня во первых Mysql закрыт, во вторых тариф не более -10мб\сек. В каком направлении мне копать?
...
Рейтинг: 0 / 0
Аномально большой трафик mysql - ддос атака?
    #38006513
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если Вы уверены, что запросы идут только от сайта, и более ниоткуда - тогда смотреть логи вебсервера и пытаться соотнести количество запросов к мускулю с количеством запросов к вебсерверу и с количеством легальных посетителей сайта.

Вполне может оказаться, банальный ддос.

Однако, возросший трафик может быть и следствием какого-то кривого скрипта. Мне попадались "шедевры" творчества, где таблица запрашивается с сервера целиком, а затем в скрипте отсеиваются лишние данные. Пока в таблице данных не слишком много, это вполне прокатывает. Но когда со временем количество строк возрастает...

Что касается резко возросшей нагрузки на диск, то, возможно, мускулю недостаточно оперативной памяти для временных таблиц. Опять таки, есть смысл посмотреть в сторону анализа/оптимизации запросов.


Mymaскрипт выполнялся в 6 потоковКакие-то долгоиграющие вычисления? А потоки точно не плодятся? Запросы в очереди не висят пачками?
...
Рейтинг: 0 / 0
Аномально большой трафик mysql - ддос атака?
    #38006534
Myma
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Кажется я все таки вычислил на втором сервере причину нагрузки на диск и трафик, это был не ддос, небольшая моя оплошность. На счет 4.5%si правда пока все равно непонятно откуда. Благодарю за ответ! Вычислил так - решил исключить из "уравнения" сайт и закрыл вообще к нему доступ всем через allow deny. Далее походил по сайту и заметил, что да, действительно трафик от моих действий зависит. Потом понял что в 2х местах есть SELECT *, а там есть поле с большим текстом (кэшем).

На все же первый сервер на cms и там код особо не редактировался, но это уже оффтоп.
...
Рейтинг: 0 / 0
Аномально большой трафик mysql - ддос атака?
    #38008717
Myma
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Все же все равно непонятная нагрузка на HDD. Я переписал скрипт чтобы работал только с необходимыми данными и с отдельной таблицей и загрузил на сервер. Днем увидел что HDD опять не справляется и закомментировал некоторые строчки - стало 1-2%, хотя там вообще запросы на "5 коппек", на моем домашнем даже лампочка HDD наверно не мигнет.

Решил проверить как будет работать на моем домашнем - 6 потоков отлично, 12 потоков - отлично, 24 отлично - не более 5% нагрузка на mysql, еще учитывая то, что он не x64, нагрузка на hdd не чувствуется, хотя у меня обычный appserv со стандартными конфигами - все отработало без задержек. Частота запросов доходила до 1100 в секунду. Думаю и в 48 потоков все будет норм, просто не успею запустить, как первые уже закончаться. Потом я закрыл доступ всем на сайт кроме себя, и запустил 1 скрипт в один поток - %WА сразу же подскочила до 90% и на 1 сервер могло уходить до 10 секунд.
Архитектура скрипта:
Обновление информации об игровых серверах. Каждый поток опрашивает свою группу серверов, например с 1000 по 1400.
Запросы во время опроса скрипта:
Берем кеш с предыдущей информацией (количество игроков, название, онлайн ли и тд), распаковываем, опрашиваем сервер, высчитываем что надо, пакуем, делаем апдейт. Все индексы используются, лимиты прописаны

Я этот скрипт дописал, чтобы он перебирал игроков на сервере, высчитывал кое что, паковал и тоже заносил в отделенную таблицу игроков.

За ночь накопилось около 40000 строк с никами и статистикой.
В общем получилось что мой домашний компьютер обрабатывает 4000 серверов и 20000 игроков за 20 секунд в 24 потока, а сервер не может справится и с одним потоком.
...
Рейтинг: 0 / 0
Аномально большой трафик mysql - ддос атака?
    #38008805
Мутаген
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Надо проверить аппаратуру.
Если на сервере есть RAID-контроллер с кеш-памятью, то проверить её батарейку.
Если на сервере парити-RAID (уровень 5,6 и тд), то проверить, что все диски целы и работают.

А по теме mysql тут есть отдельный форум.
...
Рейтинг: 0 / 0
Аномально большой трафик mysql - ддос атака?
    #38008820
Myma
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
МутагенНадо проверить аппаратуру.
Если на сервере есть RAID-контроллер с кеш-памятью, то проверить её батарейку.
Если на сервере парити-RAID (уровень 5,6 и тд), то проверить, что все диски целы и работают.

А по теме mysql тут есть отдельный форум.
Благодарю за ответ.

По поводу темы - mysql все же косвенно относится к проблеме, дело то не в нем конкретно (my.cnf скопировал с домашнего - проблема не решилась, значит он тут не при чем), а настройках системы (ну или состоянии железа), поэтому тема все же по разделу, по крайней мере, когда создавалась я не знал на какой именно сервис грешить, да и вообще на сервис ли.
...
Рейтинг: 0 / 0
Аномально большой трафик mysql - ддос атака?
    #38008891
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mymaмой домашний компьютер обрабатывает 4000 серверов и 20000 игроков за 20 секунд в 24 потока, а сервер не может справится и с одним потоком.Машина машине рознь. Бывает что домашний комп в разы "мощнее" бюджетного сервера. Да и ОС, ПО, решаемые задачи различны. Имеет смысл сравнивать "при прочих равных". Кстати, движок таблиц на домашней машине и на сервере один и тот же?
...
Рейтинг: 0 / 0
Аномально большой трафик mysql - ддос атака?
    #38015487
Myma
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vkleMymaмой домашний компьютер обрабатывает 4000 серверов и 20000 игроков за 20 секунд в 24 потока, а сервер не может справится и с одним потоком.Машина машине рознь. Бывает что домашний комп в разы "мощнее" бюджетного сервера. Да и ОС, ПО, решаемые задачи различны. Имеет смысл сравнивать "при прочих равных". Кстати, движок таблиц на домашней машине и на сервере один и тот же?

Движок одинаковый, даже настройки mysql скопировал с домашнего. Поставил на сервер дополнительный sas 15k диск, перенес на него базу, но все равно он не тянет. Странная ситуация получается - у меня на домашнем HDD, на котором хранятся базы -2Тб самый дешевый, однако во время выполнения в 12 потоков io в processexplorer показывает от 1000 до 5000, а на быстром sas мне называли цифру в 400 (или я не "те" io сравниваю?). Как такое возможно? Правда система стоит на ssd, но файл подкачки все равно находится на SATA. Может ли Mysql использовать как-то ssd на домашнем?
...
Рейтинг: 0 / 0
Аномально большой трафик mysql - ддос атака?
    #38016102
VGrey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вам пытаются помочь, пишут:
МутагенНадо проверить аппаратуру.
Если на сервере есть RAID-контроллер с кеш-памятью, то проверить её батарейку.
Если на сервере парити-RAID (уровень 5,6 и тд), то проверить, что все диски целы и работают.

Давайте уточню:
- у Вас система стоит на рейд? У Вас аппаратный контролер рейд-массива? Какой именно? Какого уровня рейд у Вас используется?
- покажите нам смарт-инфу каждого из Ваших дисков?

То есть, ищем аппаратную проблему дисковой подсистемы.

---
Виктор
...
Рейтинг: 0 / 0
Аномально большой трафик mysql - ддос атака?
    #38016107
Myma
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
VGreyВам пытаются помочь, пишут:
МутагенНадо проверить аппаратуру.
Если на сервере есть RAID-контроллер с кеш-памятью, то проверить её батарейку.
Если на сервере парити-RAID (уровень 5,6 и тд), то проверить, что все диски целы и работают.

Давайте уточню:
- у Вас система стоит на рейд? У Вас аппаратный контролер рейд-массива? Какой именно? Какого уровня рейд у Вас используется?
- покажите нам смарт-инфу каждого из Ваших дисков?

То есть, ищем аппаратную проблему дисковой подсистемы.

---
Виктор
Raid ов нет. Сервер работает на VMware (не знаю как правильно сказать). Изначально была такая конфигурация:
2 Гб оперативки, диск SATA, 2 ядра, но я докупил диск SAS, а заодно и 2 ядра и еще 2 гб оперативки, поэтому машину перенесли на другое железо. Базы перенес на SAS, но ощутимого прироста это не дало, на глазок вообще не дало ничего. Я думаю что диска 4 в raid 0 мне поможет, но меня озадачивает тот факт, что мой самый дешевый 2тб HDD sata в одиночку справляется с нагрузкой на домашней машине, а серверной нужен raid из sas ов для этого и еще неизвестно сколько понадобиться дисков. Пока только идея в том, что как-то ssd вмешивается в этот процесс..
...
Рейтинг: 0 / 0
Аномально большой трафик mysql - ддос атака?
    #38016126
Jek_a
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сравните скорость чтения/записи на вашем домашнем компьютере и сервере. Самый простой способ "dd".
Запись:
Переходом в директорию где у вас лежат файлы DB и выполняем.
Код: powershell
1.
dd if=/dev/zero of=test_speed bs=100mb count=100

(это команда создаст файл "test_speed" размером 10Gb). После этого этот файл можно удалить.

Чтение:
Код: powershell
1.
dd if=/dev/<диск на котом расположены файлы DB> of=/dev/null bs=100mb count=100

(Эта команда прочитает первые 10Gb с диска).

Еще вопрос: У вас используется одна и та же файловая система на домашнем компьютере и сервере с одинаковыми опциями монтирования?
...
Рейтинг: 0 / 0
Аномально большой трафик mysql - ддос атака?
    #38016173
Myma
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Jek_aСравните скорость чтения/записи на вашем домашнем компьютере и сервере. Самый простой способ "dd".
Запись:
Переходом в директорию где у вас лежат файлы DB и выполняем.
Код: powershell
1.
dd if=/dev/zero of=test_speed bs=100mb count=100

(это команда создаст файл "test_speed" размером 10Gb). После этого этот файл можно удалить.

Чтение:
Код: powershell
1.
dd if=/dev/<диск на котом расположены файлы DB> of=/dev/null bs=100mb count=100

(Эта команда прочитает первые 10Gb с диска).

Еще вопрос: У вас используется одна и та же файловая система на домашнем компьютере и сервере с одинаковыми опциями монтирования?

Дома windows 7, сейчас попробую поставить виртуальную машину. Хотя в моем представлении windows должна в таких задачах наоборот отставать.
...
Рейтинг: 0 / 0
Аномально большой трафик mysql - ддос атака?
    #38016175
Myma
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Хотя я забыл что у меня уже есть данные по дискам. В поддержке отрезали кусок, проставили win7 и прогнали по тестам, они не особо различаются по IOPS
1. Домашний

2. Серверный SATA



Хотя во время выполнения скриптов я наблюдая такую картину на домашнем в proccessexplorer


Объемы данных небольшие, около 1.5 мб в секунду
...
Рейтинг: 0 / 0
Аномально большой трафик mysql - ддос атака?
    #38016560
VGrey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
MymaRaid ов нет. Сервер работает на VMware (не знаю как правильно сказать).


О, то Вы сравниваете непонятнокакую виртуальную машину с домашней? Интересные у Вас подходы... Типа, сравниваем



и



И, при этом, удивляетесь, что второй вариант медленнее ???

---
Виктор
...
Рейтинг: 0 / 0
Аномально большой трафик mysql - ддос атака?
    #38016600
VGrey
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Mymaменя озадачивает тот факт, что мой самый дешевый 2тб HDD sata в одиночку справляется с нагрузкой на домашней машине, а серверной нужен raid из sas ов для этого и еще неизвестно сколько понадобиться дисков.

Думаю, вы уже поняли, что сравнивать что-то внутри виртуальной системы, и, в случае, когда виртуализации нет, несколько некорректно. Плюс к этому, некоторые системы виртуализации не позволяют установленному в них Линуксу полноценно работать с дисками, в частности, корректно организовать дисковый кеш. Естественно, что в этом случае, даже при наличии быстрых и исправных дисков, система будет работать с ними существенно медленнее.

Второй момент. Смею высказать, по мнению многих системных администраторов, которою, крамольную мысль, впрочем, готов подтвердить ее тестами, а именно: в правильно организованной системе и, при наличии достаточной оперативной памяти, быстродействие mysql, практически, не зависит от скорости дисков .
Смотрите: если у Вас есть полнотекстный поиск, отказываемся от него в пользу Сфинкса, базу конвертируем в innodb, которая быстро подтягивается в память и работает там, практически, без обращений диску и с отложенной записью. Таким образом, определяющим будет быстродействие памяти и мощность процессора. Проверяется это утверждение, тоже, довольно просто: для сравнения, переносим базу на диск в памяти, и, через какое то время после начала работы, проводим тесты.

Myma , Вам нужен быстрый проект с отзывчивым мускулом, или Вам нужно исследование того, как именно виртуализация влияет на быстродействие mysql? Если первое, возьмите выделенный сервер и не парьтесь, цените время, его нам отпущено не так уж и много.

Удачи Вам!
---
Виктор
...
Рейтинг: 0 / 0
Аномально большой трафик mysql - ддос атака?
    #38016836
Myma
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Под виртуальную машину отдан целый физический сервер. VMware в данном случае аналог IP-KVM.

Хорошо, тогда подскажите конфигурацию Mysql, чтобы он меньше обращался к диску.
Требования: 1000 UPDATE/INSERT в секунду полей TEXT
...
Рейтинг: 0 / 0
Аномально большой трафик mysql - ддос атака?
    #38017004
Myma
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
innodb вроде помогло, в 6 потоков теперь на уровне 1-5% wa на sata во время обновления. Думаю raid0 из 2х sas будет теперь окончательным решением. Благодарю за помощь!
...
Рейтинг: 0 / 0
Аномально большой трафик mysql - ддос атака?
    #38017024
Sergey Orlov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Mymainnodb вроде помогло, в 6 потоков теперь на уровне 1-5% wa на sata во время обновления. Думаю raid0 из 2х sas будет теперь окончательным решением. Благодарю за помощь!
Упадет, не подымешь... Это я про raid0...
...
Рейтинг: 0 / 0
Аномально большой трафик mysql - ддос атака?
    #38017039
Myma
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Бэкапы ежесуточные первое время, разростусь немного и -> raid10
...
Рейтинг: 0 / 0
19 сообщений из 19, страница 1 из 1
Форумы / Unix-системы [игнор отключен] [закрыт для гостей] / Аномально большой трафик mysql - ддос атака?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]