rabbitmq服务拒绝链接的问题总结:
现象:
1.5672端口直连mq,连接失败
2.15672端口进入web管理界面,500错误码被拒绝
3.mq机器服务运行正常
4.df -h 看了一下/var/lib/rabbitmq/mnesia/xxxx/下面的msg_strore_transient 的文件夹大小14G,将var目录磁盘占满了,这个文件是因为内存吃紧引起,mq把消息写入到了磁盘,即mq的持久化方式
解决方法:(原因在于个别队列无消费者消费,却不停的写消息)
1. 删除这个持久化文件,释放磁盘(这部分消息就没了)
2. rabbitmqctl stop_app停止erlang上的node,同时kill -9 所有和rabbitmq相关的进程
3.进入/var/lib/rabbitmq/mnesia/ 将rabbit@10-10-160-200 和rabbit@10-10-160-200-plugins-expand备份,这里面存储着队列和频道,交换器等信息,然后删除
4.service rabbitmq start
5.会启动一个mq,但是没法用,或者没有队列
6.用之前备份的文件替换现在新生成的文件
7.service rabbitmq restart
就可以了,不过情况比较复杂,也可以清空,然后重新配置