修改hostname导致RabbitMQ数据丢失

背景介绍

公司的很多关键服务都使用了RabbitMQ来作为消息队列服务, 可以说是非常地关键的一个环节, 最近由于业务量的上升, 导致RabbitMQ的CPU持续走高, 所以抽空研究了一下RabbitMQ的扩容, 利用我们自己运维平台使用的一个单节点的RabbitMQ来作为测试吧.看到这个单节点的RabbitMQ的服务器主机名不是很规范, 所以就顺手改了主机名, 然后重启了RabbitMQ服务, 重启后看了RabbitMQ的日志, 发现有大量的因为密码错误而连接失败的, 如下:

复制代码
AMQPLAIN login refused: user 'test' - invalid credentials

发现RabbitMQ的管理后台也登陆不进去了, 这时候我意识到RabbitMQ的数据丢失了, 至少是用户的数据丢失了, 因为管理后台登陆不上了, 我登录到服务器上列出了所有的用户:

复制代码
root@test-01:/# rabbitmqctl list_users

Listing users ...

guest [administrator]

发现只有guest用户了, 这时候我按照之前的用户重新创建了用户后恢复了, 后来查了一下官方文档:

bash 复制代码
In addition to that, by default RabbitMQ names the database directory using the current hostname of the system. If the hostname changes, a new empty database is created. To avoid data loss it's crucial to set up a fixed and resolvable hostname
结论

修改主机名最后在集群安装之前规划好, 集群搭建完以后主机名一定不能修改, 谨记。

相关推荐
wang09077 分钟前
支持rabbitmq多数据源
rabbitmq
LDG_AGI31 分钟前
【推荐系统】深度学习训练框架(二十二):PyTorch2.5 + TorchRec1.0超大规模模型分布式推理实战
人工智能·分布式·深度学习
2503_946971861 小时前
【SystemDesign/HA】2025年度高可用分布式仿真节点与预测模型容灾演练配置 (Disaster Recovery Config)
大数据·分布式·算法·系统架构·数据集
linux修理工1 小时前
kafka topic consumer
分布式·kafka·linq
西格电力科技1 小时前
光伏四可装置硬件平台架构详解:计算单元、通信接口与可靠性设计
运维·人工智能·分布式·架构·系统架构·能源
阿猿收手吧!1 小时前
【Elasticsearch】Elasticsearch:高性能分布式搜索与分析引擎
大数据·分布式·elasticsearch
@淡 定1 小时前
分布式ID生成策略
分布式
哈里谢顿11 小时前
《10 分钟上手 RabbitMQ:用 Python 写一个“不丢消息”的迷你消息系统》
rabbitmq
回家路上绕了弯19 小时前
熔断限流实战指南:分布式系统的稳定性守卫
分布式·后端
YDS8291 天前
SpringCloud —— RabbitMQ消息队列详解
spring cloud·rabbitmq·java-rabbitmq