В Ubuntu 11.10
Мне нужно выполнять задачи python из django с использованием сельдерея.
В настоящее время я тестирую на той же машине, но в конечном итоге работник сельдерея должен работать на удаленной машине.
django использует следующие настройки:
BROKER_HOST = "127.0.0.1"
BROKER_PORT = 5672
BROKER_VHOST = "/my_vhost"
BROKER_USER = "celery"
BROKER_PASSWORD = "celery"
Я также вижу свою задачу в очереди http: // localhost: 55672 / # / очереди
демон сельдерея использует следующую конфигурацию (celeryconfig.py):
BROKER_HOST = "127.0.0.1"
BROKER_PORT = 5672
BROKER_USER = "celery"
BROKER_PASSWORD = "celery"
BROKER_VHOST = "/my_vhost"
CELERY_RESULT_BACKEND = "amqp"
import os
import sys
sys.path.append(os.getcwd())
CELERY_IMPORTS = ("tasks", )
Бег
celeryd -l info
работает хорошо, и теперь я хочу запустить его как службу.
Я выполнил инструкции от http://ask.github.com/celery/cookbook/daemonizing.html
и теперь я пытаюсь запустить его, используя:
sudo /etc/init.d/celeryd start
Но сообщение не обрабатывается, в журнале сельдерея тоже нет ошибок.
/ и т.д. / по умолчанию / сельдерей
CELERYD_NODES="w1"
CELERYD_CHDIR="/path/to/django/project"
CELERYD_OPTS="--time-limit=300 --concurrency=1"
CELERY_CONFIG_MODULE="celeryconfig"
# %n will be replaced with the nodename.
CELERYD_LOG_FILE="/var/log/celery/%n.log"
CELERYD_PID_FILE="/var/run/celery/%n.pid"
# Workers should run as an unprivileged user.
CELERYD_USER="celery"
CELERYD_GROUP="celery"
Я также создал пользовательский сельдерей в Ubuntu, не уверен, что это необходимо.
Любая помощь будет оценена, спасибо, парень
изменил права доступа celeryconfig.py (владелец):
sudo chown root:staff celeryconfig.py
и это работает ... было легко отследить, когда я понял:
sudo /etc/init.d/celeryd status
дает информативные объяснения ошибок.
Парень
Мы используем руководитель для запуска Celery на Ubuntu, и он работает довольно хорошо, включая периодическую проверку статуса и перезапуск мертвых процессов.