2017-09-21 4 views
5

Est-il possible d'ajouter une fleur au démon céleri? Ci-dessous est mon fichier de configuration de céleri, j'ai essayé ajouté fleur config à la variable CELERYD_OPTS mais il a échoué.Ajouter une fleur au céleri démon?

ou y a-t-il une autre commande que je peux ajouter au fichier de configuration pour que fleurisse et fonctionne avec céleri?

# 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 
+0

Je ne suis pas sûr que 'celery_opts' est censé déclencher un autre processus (c'est ce que fleur est si je comprends bien.) Même si vous l'obtenez en utilisant la configuration, c'est probablement faux. vous pouvez créer un script qui commence à la fois)? –

+0

J'ai besoin d'un autre processus démon pour la fleur? Je ne sais pas comment faire cela, j'ai suivi ce guide pour le faire pour céleri https://pythad.github.io/articles/ 2016-12/how-to-run-celery-as-a-daemon-in-production et je ne peux pas en trouver un pour le céleri – AlexW

+0

J'ai googlé ceci: https://github.com/mher/flower/issues/ 28 mais peut-être google comment démarrer la fleur, parce que c'est un processus séparé et un serveur –

Répondre

1

je les suggère courir avec supervisord ou other process control system, plutôt que script OS init et start-stop-daemon.

Les deux worker et flower doivent fonctionner en tant que processus démon côte à côte, il y a many docs on how to run celery worker with supervisord, exécutez flower est simplement pour ajouter une autre section de programme, remplacez la commande worker par la commande de lancement de fleurs correspondante comme celery flower -A itapp --ports 5555 --time-limit=300 --concurrency=8.

+0

im utilisant python 3 qui, n'est pas actuellement pris en charge par supervord – AlexW

+0

supercisord exécuter le programme en tant qu'exécutable binaire, rien à voir avec python 2 ou 3, cependant, vous pourriez sti ck avec init, il suffit de tenir l'idée de lancer la fleur comme un démon autonome. – georgexsh