Страницы

Поиск по вопросам

воскресенье, 26 января 2020 г.

Как ограничить mysql по поглощению дисковой памяти?

#drupal #innodb #centos #mysql


Приветствую всех, кого не видел! Сразу к делу. Перевожу крупный портал в Amazon с
довольно мощной машинки:
Intel® Xeon® CPU E5-2620 0 @ 2.00GHz 
24 ядра 
32GB RAM 
1TB HDD

Особых настроек mysql/php/apache там конечно не было (ресурсов много, зачем напрягать
мозги). Упакованный дамп mysql весил примерно 250m, сам хост - порядка 1.5g. mysql/php/apache
уже поставлены, хост прописан и работает, но mysql постоянно жрет дисковую память,
независимо от нагрузки на сервер.
Кеширование отключено: boost не стоит, встроенное кеширование отключено.
Сейчас постоянно приходится расширять HDD, как только на нем остаются 5-7GB. На данный
момент HDD на 100g. Дальше расширяться не хочется, да и клиентам нужен бюджетный вариант.
Один нюанс: на старом хостинге HDD был заполнен на 254g и я не уверен, что эта цифра
до последнего момента не росла. Т.е., если я выделю 300g, вроде бы решу проблему, но
у меня задача уложиться по возможности в 30g :)
Кто-нибудь сталкивался, что посоветуете? Хотелось бы решить еще вопрос, как этот
кеш почистить, ведь все начиналось с 10g.
Если важно, то расширяю HDD по этому сценарию: How to Increase the size of a Linux
LVM by expanding the virtual machine disk

Сейчас зашел на сервер, и df уже показывает 54% вместо 94%:
# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root
                       98G   50G   43G  54% /
tmpfs                  15G     0   15G   0% /dev/shm
/dev/xvda1            477M   68M  384M  15% /boot

при том, что сервер с последнего перезапуска ни кто не трогал. От du объемы не изменились.
После первого захода на портал по IP'у картина измнилась:
# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root
                       98G   17G   76G  19% /
tmpfs                  15G     0   15G   0% /dev/shm
/dev/xvda1            477M   68M  384M  15% /boot

Что за выкрутасы?

Да, после ребута у du/df цифры те же. (
 --


Можно посмотреть, что там в кроне.

Сейчас ситуация кардинально поменялась: в du выдает уже папки с хоста, объем диска
то растет до 70% то падает до 20%.
 --
Я это сязываю пока с нехваткой оперативы. В top'е наблюдаю один процесс httpd, который
сожрал махом 30g вирт. памяти (о как!). По всей видимости, он ее пытается свопить на
диск, вот он и растет. Сейчас оптимизирую httpd.conf. Но при чем тут mysqld пока не
понял (я ему прописал в my.cnf забирать максимум 6g, что он и делает в top'е)
 --
Выходит, на своп для 32gRAM все равно придется обеспечить HDD, размером 64g как минимум
+ следить за аппетитами apache?    


Ответы

Ответ 1



Используй find, для поиска файлов, которые изменились или были созданы за искомое время и сделай на основании этого вывод, кто жрёт место. Пример поиска изменённых файлов в течении последних 60 секунд: find /path -type f -mtime -60s Для поиска созданных, используй ключ ctime

Комментариев нет:

Отправить комментарий