Около 9 вечера мониторинг сообщил, что на одном из production-серверов забивается место. Причём забивалось оно очень быстро, и за пару часов «скушалось» 3 гига из 8 доступных на root-разделе.
Забивался диск в каталоге базы RabbitMQ — /var/lib/rabbitmq/mnesia
.
Быстрый фикс — перенести его базу на отдельный диск.
Создаём новый каталог:
Обновляем конфиг реббита /etc/rabbitmq/rabbitmq-env.conf
— задаём переменную RABBITMQ_MNESIA_BASE
... RABBITMQ_MNESIA_BASE=/data/rabbitdb
Останавливаем RabbitMQ:
Копируем данные из старого каталога и меняем владельца:
Запускаем его:
Проверяем статус:
Доступное ему место и Database directory path:
84 гига — окей.
На утром начали проверять — почему же RabbitMQ так засрал диск: оказалось, что в очередях скопилось 2 миллиона сообщений, которые не читались, потому что задачи supervisor
-а, которые должны получать их, не были запущены.
Почитать по теме —
Просмотреть список сообщений в очередях можно с помощью rabbitadmin
: