RabbitMQ и место на диске

Скриншот логов RabbitMQ: предупреждение о нехватке места на диске (free space insufficient) и блокировка издателей до устранения тревоги.

Мы с сервером очередей RabbitMQ сталкиваемся редко — на нём исторически один продукт, остальные используют другой сервер. Впрочем, есть он не просил, проблем не обнаруживалось. А тут на днях появились странности — сервер на одном из проектов периодически как будто подвисал, принимал соединения, но команды словно «замерзали». Перезапуск помогал, но ненадолго.

Оказывается, каждые десять секунд RabbitMQ проверяет наличие свободного места, если оно меньше лимита (в нашем пакете, по-умолчанию — 1000000000 байт), то он останавливается и ждёт, когда место появится. Так он пытается предотвратить падение из-за нехватки дискового пространства.

Изучения логов результата не проносило и немудрено — сообщение о проблеме очень быстро оказывалось погребено под уймой другой информации, а оно, если лимит быстро исчерпывается, проскакивает ближе к началу старта сервера, очень легко пропустить. Помогло чтение форумов и эксперименты.

Комментарии 5

Fyodor Ustinov № 3
И как он (gearman) в продакшине? Не сильно стрёмно? А то даже документации половины не хватает…