adding flower to celery daemon?
Asked Answered
B

1

6

Is it possible to add flower to the celery daemon?

Below is my celery config file, I tried added flower config to the CELERYD_OPTS variable but it has failed.

or is there another command I can add to the config file to get flower up and running with celery?

# Names of nodes to start
#   most people will only start one node:
CELERYD_NODES="worker1"
#   but you can also start multiple and configure settings
#   for each in CELERYD_OPTS
#CELERYD_NODES="worker1 worker2 worker3"
#   alternatively, you can specify the number of nodes to start:
#CELERYD_NODES=10

# Absolute or relative path to the 'celery' command:
CELERY_BIN="/usr/local/bin/celery"

# App instance to use
# comment out this line if you don't use an app
CELERY_APP="itapp"
# or fully qualified:
#CELERY_APP="proj.tasks:app"

# Where to chdir at start.
CELERYD_CHDIR="/itapp/itapp/"

# Extra command-line arguments to the worker
CELERYD_OPTS="flower --ports 5555 --time-limit=300 --concurrency=8"
# Configure node-specific settings by appending node name to arguments:
#CELERYD_OPTS="--time-limit=300 -c 8 -c:worker2 4 -c:worker3 2 -Ofair:worker1"

# Set logging level to DEBUG
#CELERYD_LOG_LEVEL="DEBUG"

# %n will be replaced with the first part of the nodename.
CELERYD_LOG_FILE="/var/log/celery/%n%I.log"
CELERYD_PID_FILE="/var/run/celery/%n.pid"

# Workers should run as an unprivileged user.
#   You need to create this user manually (or you can choose
#   a user/group combination that already exists (e.g., nobody).
CELERYD_USER="celery"
CELERYD_GROUP="celery"

# If enabled pid and log directories will be created if missing,
# and owned by the userid/group configured.
CELERY_CREATE_DIRS=1
Bogard answered 21/9, 2017 at 16:34 Comment(3)
I'm not sure celery_opts are meant to fire off another process (that is what flower is if I understand correctly. Even if you do get it using the config, it's probably wrong. Why not just start both separately (you can create a script that starts both)?Alagoas
I need another daemon process for flower? I'm not sure how to do that, I followed this guide to do it for celery pythad.github.io/articles/2016-12/…. and I can't find one for celeryBogard
I googled this: github.com/mher/flower/issues/28 but perhaps google how to start flower, because it is a separate process and server.Alagoas
H
3

I suggest run them with supervisord or other process control system, rather than OS init script and start-stop-daemon.

Both worker and flower should run as daemon process side by side, there are many docs on how to run celery worker with supervisord, run flower is simply to add another program section, replace worker command with corresponding flower launching command like celery flower -A itapp --ports 5555 --time-limit=300 --concurrency=8.

Homocyclic answered 29/9, 2017 at 10:55 Comment(2)
im using python 3 which, is not currently supported by supervisordBogard
supercisord run program as binary executable, nothing to do with python 2 or 3, however, you could stick with init, just hold the idea run flower as a standalone daemon.Homocyclic

© 2022 - 2024 — McMap. All rights reserved.