0

我在机器 A 上设置了rabbitmq + celery + 花。当我访问这个花时,我得到了经纪人、任务和工人标签中的所有信息。

我如何在机器 A 上开始开花:

flower --broker=amqp://guest:guest@localhost:5672// --broker_api=http://guest:guest@localhost:15672/api/

但是,如果我在机器 B 上设置花,但指向第一台机器 A 的 amqp,我不会得到任何信息。3 个选项卡保持为空。

我如何在机器 B 上开始开花:

flower --broker=amqp://guest:guest@machine_A_ip:5672// --broker_api=http://guest:guest@Machine_A_ip:15672/api/

注意:manegment-plugin 已经启用。

我可能做错了什么?

谢谢

[编辑] PS:
使用用户帐户和虚拟主机,它仍然不起作用。检查了日志,这就是那里的内容:

[I 150112 11:15:13 command:107] Broker: amqp://username: @[broker ip]:5672/vhapp
[I 150112 11:15:15 mixins:225] 连接到 amqp://username:
@ [代理 ip]:5672/vhapp [E 150112 11:16:18 状态:71]
无法获取代理信息:('连接中止。',错误(110,'连接超时'))
[E 150112 11:17 :50 状态:112] 未能检查代理:('连接中止。',错误(110,'连接超时'))
[E 150112 11:17:50 状态:112] 未能检查代理:('连接中止。',错误(110,'连接超时'))
[E 150112 11:17:50 状态:112] 无法检查代理:('连接中止。',错误(110,'连接超时' ))
[E 150112 11:17:50 state:112] 未能检查代理:('连接中止。',错误(110,'连接超时'))

4

2 回答 2

0

我认为问题在于 RabbitMQ 默认只允许用户“guest”从 localhost 连接。

通常,您应该专门为您的应用程序创建一个用户帐户。芹菜在这里有关于如何做到这一点的简单说明:http: //docs.celeryproject.org/en/latest/getting-started/brokers/rabbitmq.html#setting-up-rabbitmq

您还可以将 RabbitMQ 配置为允许来宾从远程主机进行连接,此处将对此进行讨论: https ://www.rabbitmq.com/access-control.html

于 2015-01-10T20:11:16.033 回答
-1

我得到它。

cmd > celery -A task worker
another cmd > celery flower

有用。

于 2016-11-30T03:38:13.550 回答