如何解决使用 rabbitmqadmin 创建 RabbitMQ 队列时返回“未找到”
我需要从命令行创建一个 RabbitMQ 队列。
./rabbitmqadmin -u user1 -p password1 -N rabbit@rabbitmq-0.rabbitmq.default.svc.cluster.local declare queue name=CompName.Player1
但我没有添加队列:
**未找到:/api/queues/%2F/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
通过管理 Web UI 手动添加队列有效,但它不是 kubernetes 解决方案的选项。
解决方法
我明白了。我认为 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()```
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。