python django celery systemd -
i'm trying build nginx/gunicorn/celery/rabbitmq/django server several services.i failed demonetization celery.
my project directory below celery installed in virtualenv:
home/ubuntu/fanvault/bin/fanvault
my configuration file below in /etc/conf.d/celery
celeryd_nodes="w1 w2 w3" celery_bin="home/ubuntu/fanvault/bin/celery" celery_app="fanvault" celeryd_multi="multi" celeryd_opts="--time-limit=300 --concurrency=8" celeryd_pid_file="/var/run/celery/%n.pid" celeryd_log_file="/var/log/celery/%n%i.log" celeryd_log_level="info" my celery.service in etc/systemd/system/
[unit] description=celery service after=network.target [service] type=forking user=ubuntu group=ubuntu environmentfile=-/etc/conf.d/celery workingdirectory=/home/ubuntu/fanvault/bin/fanvault/fanvault/ execstart=/home/ubuntu/fanvault/bin/python3.5 -c '${celery_bin} multi start ${celeryd_nodes} -a ${celery_app} --pidfile=${celeryd_pid_file} --logfile=${celeryd_log_file} --loglevel=${celeryd_log_level} ${celeryd_opts}' execstop=/home/ubuntu/fanvault/bin/python3.5 -c '${celery_bin} multi stopwait ${celeryd_nodes} --pidfile=${celeryd_pid_file}' execreload=/home/ubuntu/fanvault/bin/python3.5 -c '${celery_bin} multi restart ${celeryd_nodes} -a ${celery_app} --pidfile=${celeryd_pid_file} --logfile=${celeryd_log_file} --loglevel=${celeryd_log_level} ${celeryd_opts}' [install] wantedby=multi-user.target my celery.py file in home/ubuntu/fanvault/bin/fanvault/fanvault
from __future__ import absolute_import, unicode_literals import os celery import celery datetime import timedelta fanvault.settings import debug if debug true: os.environ.setdefault("django_settings_module", "fanvault.local_settings") else: os.environ.setdefault("django_settings_module", "fanvault.aws_settings") app = celery('fanvault') app.config_from_object('django.conf:settings', namespace='celery') app.autodiscover_tasks() app.conf.beat_schedule = { 'pull_movie_home': { 'task': 'movies.tasks.pull_movie_explore', 'schedule': timedelta(minutes=3) } } app.conf.timezone = 'utc' when "sudo service celery start" getting following error:
job celery.service failed because control process exited error code. see "systemctl status celery.service" , "journalctl -xe" details.
when "sudo journalctl -xe" getting following:
-- unit celery.service has begun starting up. apr 06 12:00:11 ip-172-31-53-174 python3.5[23368]: file "<string>", line 1 apr 06 12:00:11 ip-172-31-53-174 python3.5[23368]: home/ubuntu/fanvault/bin/celery multi start w1 w2 w3 -a fanvault --pidfile=/var/run/celery/%n.pid -- apr 06 12:00:11 ip-172-31-53-174 python3.5[23368]: ^ apr 06 12:00:11 ip-172-31-53-174 python3.5[23368]: syntaxerror: invalid syntax apr 06 12:00:11 ip-172-31-53-174 systemd[1]: celery.service: control process exited, code=exited status=1 apr 06 12:00:11 ip-172-31-53-174 sudo[23337]: pam_unix(sudo:session): session closed user root apr 06 12:00:11 ip-172-31-53-174 systemd[1]: failed start celery.service. -- subject: unit celery.service has failed -- defined-by: systemd
i'm not sure why passing celery startup commands python3 in service file. shell commands, executed directly.
Comments
Post a Comment