Множественные процессы dataskq забивают RAM

13 Jan 2016 | Автор: anchous |

Захожу тут на свой бложик, а там ад – лежит мускуль с ошибкой, что невозможно соединиться.

Естественно полез смотреть, что происходит, ибо настроено все было нормально. Через команду free -m видим кто то скушал оперативу, а ps -axj выдает виновника торжества /usr/local/directadmin/dataskq

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

Запускаем более подробную чекалку ps waux | grep dataskq и видим несколько сотен клонов данного процесса, которые аннигилируем через команду:
# killall dataskq

После чего все должно запускаться.

Далее устраняем проблему, т.к dataskq запускается каждую минуту через планировщик крон и нам надо, чтобы система убеждалась в то, что запущен только один процесс, дабы избежать накопления 100500 одновременных процессов.

Для чего открываем файл  /etc/cron.d/directadmin_cron
в котором меняем строку
* * * * * root /usr/local/directadmin/dataskq
на усложненное выражение проверки
* * * * * root if [ "`ps ax | grep -v grep | grep -c dataskq`" -eq 0 ]; then /usr/local/directadmin/dataskq; fi;

после чего рестартим демона планировщика
/etc/init.d/crond restart

Также в папке /usr/local/directadmin/data/admin надо посмотреть на размер файла brute_log_entries.list -  если он до неприличия большой, то необходимо ограничить его размер в админке DirectAdmin: Admin Level -> Admin Settings путем уменьшения время хранения ошибочных логинов.

VN:F [1.9.21_1169]
Rating: 0.0/10 (0 votes cast)
VN:F [1.9.21_1169]
Rating: 0 (from 0 votes)

Ваш отзыв