我需要从命令行创建一个RabbitMQ队列。
./rabbitmqadmin -u user1 -p password1 -N rabbit@rabbitmq-0.rabbitmq.default.svc.cluster.local declare queue name=CompName.Player1
但是,我没有添加队列,而是得到:
**找不到:
我尝试了这些,但没有成功,而且在运行这些rabbitmqadmin命令时,rabbitmq日志也没有显示任何事件:
./rabbitmqadmin declare queue name=Test1
./rabbitmqadmin -u user1 -p password1 declare queue name=CompName.Player1
curl -i -u user1:password1 -H "content-type:application/json" -XPUT -d'{"durable":true}' http://localhost:15672/api/queues/%2f/CompName.Player1
通过management手动添加队列是可行的,但对于kubernetes解决方案来说,它不是一个选项。
发布于 2021-04-23 14:41:10
这样啊,原来是这么回事。我认为在某个时候API端点被更新了,所以所有的调用都必须转到http://localhost:15672/rabbitmq/api。下面是添加的配置行,它导致了问题:
management.path_prefix = /rabbitmq以下是工作实例:
./rabbitmqadmin -u user1 -p password1 --path-prefix=http://localhost:15672/rabbitmq declare queue name=CompName.Player1
curl -i -u user1:password1 -H "content-type:application/json" -XPUT -d'{"durable":true}' http://localhost:15672/rabbitmq/api/queues/%2f/CompName.Player1
这也起了作用:
import pika
import sys
connection = pika.BlockingConnection(
pika.ConnectionParameters(host='localhost'))
channel = connection.channel()
channel.queue_declare(queue='CompName.Player1', durable=True)
connection.close()```https://stackoverflow.com/questions/67231392
复制相似问题