07.celery集群监控
# 01.实时Celery监控-Flower
# 1.1 flower介绍
- Flower是一个基于实时Web服务的Celery监控和管理工具。
- 它正在积极开发中,但已经是一个必不可少的工具。
- 作为Celery推荐的监视器,它淘汰了Django-Admin监视器、celerymon监视器和基于ncurses的监视器。
# 1.2 Celery事件来实时监控
- 任务的进度和历史信息
- 可以查看任务的详情(参数,开始时间,运行时间等)
- 提供图表和统计信息
# 1.3 远程控制
- 查看worker的状态和统计信息
- 关闭和重启worker实例
- 控制worker的缓冲池大小和自动优化设置
- 查看并修改一个worker实例所指向的任务队列
- 查看目前正在运行的任务
- 查看定时或间隔性调度的任务
- 查看已保留和已撤销的任务
- 时间和速度限制
- 配置监视器
- 撤销或终止任务
# 1.4 HTTP API
- 列出worker
- 关闭一个worker
- 重启worker的缓冲池
- 增加/减少/自动定量 worker的缓冲池
- 从任务队列消费(取出任务执行)
- 停止从任务队列消费
- 列出任务列表/任务类型
- 获取任务信息
- 执行一个任务
- 按名称执行任务
- 获得任务结果
- 改变工作的软硬时间限制
- 更改任务的速率限制
- 撤销一个任务
# 1.5 OpenID 身份验证
# 02.截图
# 03.使用方法
# 3.1 pip 安装 Flower
[root@k8s-node2 ~]# pip install flower
1
- 运行下面的 flower 命令你将得到一个可以访问的 web 服务器。
[root@k8s-node2 ~]# celery -A myCeleryProj.app flower
[I 180907 22:34:43 command:139] Visit me at http://localhost:5555
[I 180907 22:34:43 command:144] Broker: redis://127.0.0.1:6379/0
[I 180907 22:34:43 command:147] Registered tasks:
['celery.accumulate',
'celery.backend_cleanup',
'celery.chain',
'celery.chord',
'celery.chord_unlock',
'celery.chunks',
'celery.group',
'celery.map',
'celery.starmap',
'myCeleryProj.tasks.add',
'myCeleryProj.tasks.taskA',
'myCeleryProj.tasks.taskB']
[I 180907 22:34:43 mixins:224] Connected to redis://127.0.0.1:6379/0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# 3.2 在页面中访问
- 从输出的信息可以看出,默认的端口为 http://localhost:5555,但你也可以手工指定端口,命令如下所示 :
[root@k8s-node2 ~]# celery -A myCeleryProj.app flower --port=5555
1
- 中间人的url也可以通过参数 --broker参数来指定
[root@k8s-node2 ~]# celery -A myCeleryProj.app flower --port=5555 --broker=redis://127.0.0.1:6379/0
1
- 打开浏览器 http://localhost:5555 (opens new window) 可以看到flower的web界面
上次更新: 2024/3/13 15:35:10