Flower中没有信息连接到远程计算机上的amqp

时间:2015-01-10 11:58:15

标签: python rabbitmq celery flower

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

我如何在机器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:
使用用户帐户和vhost,它仍然无法正常工作。 检查了日志,这就是:

[I 150112 11:15:13 command:107]经纪人:amqp://用户名: @ [broker ip]:5672 / vhapp
[I 150112 11:15:15 mixins:225]连接到amqp://用户名:
@ [broker 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状态:112]无法检查经纪人:('连接中止。',错误(110,'连接超时'))

2 个答案:

答案 0 :(得分:0)

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

通常,您应该专门为您的应用创建一个用户帐户。 Celery在这里有关于如何执行此操作的简单说明: http://docs.celeryproject.org/en/latest/getting-started/brokers/rabbitmq.html#setting-up-rabbitmq

您还可以配置RabbitMQ以允许guest虚拟机从远程主机进行连接,这将在此处讨论: https://www.rabbitmq.com/access-control.html

答案 1 :(得分:-1)

我明白了。

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

有效。