RabbitMQ启动正常,无法访问管理页面

在RabbitMQ启动正常的情况下,遇到管理页面无法访问的问题。文章详细记录了解决这个问题的过程,包括查看日志、尝试开放端口、关闭并重新启用插件等步骤,最终发现是`rabbitmq_management`插件未启用导致的。关闭并重新启用该插件后,问题得到解决。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

RabbitMQ启动正常,无法访问管理页面

环境

腾讯云服已开放端口:5672/15672

之前可以访问开启延迟队列插件后重启无法访问

问题背景

跟学安装延迟队列插件,服务一直启动并且一直在用没问题的,结果开启插件后重启无法访问了。这里就有个前置认知问题,就是我之前用都没问题那我肯定是rabbitmq-plugins enable rabbitmq_management开启了网页访问插件的!(坑就在这里

以下为经历过程,做个记录

查看日志

docker logs rabbitmq

日志内容如下

在这里插入图片描述

[info] <0.524.0> Server startup complete; 4 plugins started.
[info] <0.524.0>  * rabbitmq_prometheus
[info] <0.524.0>  * rabbitmq_web_dispatch
[info] <0.524.0>  * rabbitmq_management_agent
[info] <0.524.0>  * rabbitmq_delayed_message_exchange
[info] <0.604.0> accepting AMQP connection <0.604.0> (113.90.130.86:1495 -> 172.17.0.3:5672)
[info] <0.604.0> Connection <0.604.0> (113.90.130.86:1495 -> 172.17.0.3:5672) has a client-provided name: rabbitConnectionFactory#749ab7b4:6
[info] <0.604.0> connection <0.604.0> (113.90.130.86:1495 -> 172.17.0.3:5672 - rabbitConnectionFactory#749ab7b4:6): user 'guest' authenticated and granted access to vhost '/'

Note:

可以通过 docker inspect rabbitmq | grep log 查看日志文件所在的物理磁盘位置

当时没仔细看,加上容器日志记录时间是在早上,一度怀疑这个日志是不是不是当前容器记录的启动日志。

确认很多遍日志后,确认启动是没有问题的,那么云服访问最有可能就是端口没有对外开放访问不了了。

尝试开放所有端口

在这里插入图片描述

CONTAINER ID   IMAGE      COMMAND                  CREATED          STATUS          PORTS                                                                                                                                      NAMES
5b530ef68d2a   rabbitmq   "docker-entrypoint.s…"   53 minutes ago   Up 25 minutes   4369/tcp, 0.0.0.0:5672->5672/tcp, :::5672->5672/tcp, 5671/tcp, 15691-15692/tcp, 25672/tcp, 0.0.0.0:15672->15672/tcp, :::15672->15672/tcp   rabbitmq

就是把这里看到的所有端口进行放开。

在这里插入图片描述


这里已经在病急乱投医了,但是还在想,如果我去ping通ip和端口这样就可以一定确认可以访问,问题不是出在网络上了,于是

ping 网络端口

abc@clcao mq % telnet 175.178.244.122 80
zsh: command not found: telnet

既然没有,那就安装吧brew install telnet

abc@clcao mq % brew install telnet

You have 1 outdated formula installed.

Error: Cannot install under Rosetta 2 in ARM default prefix (/opt/homebrew)!
To rerun under ARM use:
    arch -arm64 brew install ...
To install under x86_64, install Homebrew into /usr/local.

M1芯片还安装不了。这里是被迫无奈放弃了网络不通的想法了,最后还是尝试去关闭插件

关闭插件

进入容器

docker exec -it rabbitmq bash

关闭插件

rabbitmq-plugins disable rabbitmq_delayed_message_exchange

重启容器

docker restart rabbitmq

还是连接失败,最后!检查启用的插件时候才发现,rabbitmq_management 被莫名关掉了!

查看启用的插件

rabbitmq-plugins list

在这里插入图片描述

看到这里问题就终于解决了,重新启用插件即可!

开启插件

rabbitmq-plugins enable rabbitmq_management

Note:

插件被莫名关掉造成的原因具体还不清楚,但是值得怀疑的就是开启延迟队列插件导致的,因为本来就一直在用的服务,突然访问不了了,其中的变化也就只有这个动作,但同时也因为一直在用,所以潜意识认为一定开启了这个插件rabbitmq_management,而实际上在日志部分已经看到了,只是当时没注意,看到4个插件启动就认为启动延迟队列插件rabbitmq_delayed_message_exchange成功了。

另外,插件的开启不需要重启RabbitMQ

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值