首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Flower无法监控使用Redis Sentinel作为代理的芹菜队列,而不仅仅是Redis

Flower无法监控使用Redis Sentinel作为代理的芹菜队列,而不仅仅是Redis
EN

Stack Overflow用户
提问于 2020-04-28 04:08:47
回答 1查看 837关注 0票数 0

为了提高弹性,我将独立的redis部署转换为三个Redis前哨的集群。我能够将Celery连接到Redis Sentinel设置,方法是修改我的Celery配置以包括

代码语言:javascript
运行
复制
BROKER_URL = 'sentinel://10.1.1.1:26379/0;sentinel://10.1.1.2:26379/0;sentinel://10.1.1.3:26379/0'

BROKER_TRANSPORT_OPTIONS = {'visibility_timeout': 32400, 'master_name': 'mymaster'}

连接到Celery的关键是添加BROKER_TRANSPORT_OPTIONS并按照在我的redis配置中设置的方式定义master_name。

我还使用Flower来监控我的芹菜队列,运行如下代码:

代码语言:javascript
运行
复制
celery flower --basic_auth=user1:pass123 --port=5555 --broker=redis://localhost:6379/0

但是现在我有了一个Redis Sentinel部署,我想我需要一种方法来传递它成功连接的传输选项,否则如果我这样做:

代码语言:javascript
运行
复制
celery flower --basic_auth=user1:pass123 --port=5555 -b 'sentinel://10.1.1.1:26379/0;sentinel://10.1.1.2:26379/0;sentinel://10.1.1.3:26379/0' --debug

它只是简单地挂起:

代码语言:javascript
运行
复制
    [I 200427 13:01:36 command:139] Visit me at http://localhost:5555
[I 200427 13:01:36 command:144] Broker: sentinel://10.1.1.1:26379/0
[I 200427 13:01:36 command:147] Registered tasks:
    [u'celery.accumulate',
     u'celery.backend_cleanup',
     u'celery.chain',
     u'celery.chord',
     u'celery.chord_unlock',
     u'celery.chunks',
     u'celery.group',
     u'celery.map',
     u'celery.starmap']
[D 200427 13:01:36 command:149] Settings: {'cookie_secret': 'W0UNu/+hQLCUYD2smFhIBMo9nrJqn0ZimgrxxroGeSI=',
     'debug': True,
     'login_url': '/login',
     'static_path': '/usr/local/lib/python2.7/dist-packages/flower/static',
     'static_url_prefix': '/static/',
     'template_path': '/usr/local/lib/python2.7/dist-packages/flower/templates'}
[D 200427 13:01:36 control:29] Updating all worker's cache...

我知道BROKER_TRANSPORT_OPTIONS是一个芹菜概念,而不是鲜花,我尝试了--conf选项来传入配置和传输配置,但它似乎没有接受它。

在这方面的任何帮助都将非常感谢。我仔细阅读了芹菜和鲜花的文档,看看如何才能解决这个问题。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-05-01 07:34:26

我从我的Django目录中运行from解决了这个问题,这里初始化了芹菜和from,然后我能够在我的from命令行中使用-A:

芹菜花--basic_auth=user1:pass123 --port=5555调试'sentinel://10.1.1.1:26379/0;sentinel://10.1.1.2:26379/0;sentinel://10.1.1.3:26379/0‘-b -A myappname

一旦我这样做了,Flower就能够连接到我的哨兵,我可以看到我的任务和队列。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61467597

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档