У нас проблемы с нашим демоном сельдерея, который очень ненадежен. Мы используем сценарий развертывания фабрики, чтобы перезапустить демон всякий раз, когда мы вносим изменения, но по какой-то причине это вызывает серьезные проблемы.
Каждый раз, когда запускается скрипт развертывания, процессы сельдерея остаются в каком-то псевдо-мертвом состоянии. Они (к сожалению) будут по-прежнему потреблять задания от rabbitmq, но на самом деле они ничего не будут делать. Смущает, что краткая проверка показала бы, что в этом состоянии все кажется «в порядке», состояние celeryctl показывает один узел в сети, а ps aux | grep celery показывает 2 запущенных процесса.
Однако попытка запустить /etc/init.d/celeryd stop вручную приводит к следующей ошибке:
start-stop-daemon: warning: failed to kill 30360: No such process
Хотя в этом состоянии попытка запустить celeryd start, кажется, работает правильно, но на самом деле ничего не делает. Единственный способ решить эту проблему - вручную убить запущенные процессы сельдерея и запустить их снова.
Есть идеи, что здесь происходит? У нас также нет полного подтверждения, но мы думаем, что проблема также развивается через несколько дней (без активности, это тестовый сервер) самостоятельно без развертывания.