我在两台服务器上运行芹菜,一台redis作为代理。
芹菜启动命令如下所示:

celery multi start 2 -A app_name

鲜花启动命令:
celery flower -A app_name --address=10.41.31.210 --port=5555

在flower的输出中有一些警告:
WARNING:flower.api.control:'stats' inspect method failed
WARNING:flower.api.control:'active_queues' inspect method failed
WARNING:flower.api.control:'registered' inspect method failed
WARNING:flower.api.control:'scheduled' inspect method failed
WARNING:flower.api.control:'active' inspect method failed
WARNING:flower.api.control:'reserved' inspect method failed
WARNING:flower.api.control:'revoked' inspect method failed
WARNING:flower.api.control:'conf' inspect method failed

对我来说最奇怪的是-并不是所有的工人都显示在弗劳尔的仪表盘上似乎在每一朵花重新开始后,只有一些工人被展示出来。由于我的启动脚本-应该至少有8个工人,但我看到4或有时6。
寻找任何解决方案或建议谢谢您。
另外,当只有一台服务器供芹菜工人使用时,我对相同的服务没有任何问题。

最佳答案

问题是,芹菜还没准备好就开花了
这可以用celery inspect ping轻松检查
以下是我的项目中的示例start_flower.sh

#!/bin/sh

until timeout -t 10 celery -A project inspect ping; do
    >&2 echo "Celery workers not available"
done

echo 'Starting flower'
celery -A project flower

09-06 08:20