这里有没有人有将 RabbitMQ(v3.5.3)迁移到新服务器的经验?我目前在旧系统上的集群中有两个 RMQ 服务器,我想将它们迁移到新的虚拟机。不幸的是,我找不到任何直接的迁移工具。
看起来最简单的方法是将新服务器添加到集群,让它们复制所有内容,然后在复制成功完成后关闭旧服务器。
有没有办法将旧服务器导出/导入到新服务器?即使有,我也非常担心我能否像旧服务器一样设置新服务器。
有任何想法吗?
答案1
您可以使用Shovel 插件用于在一台机器上无缝迁移或备份定义、配置和 mnesia 数据库并在另一台机器上恢复它们。
TL;DR;
这个想法是运行新的集群并迁移所有实体,例如通过管理界面(Web - 参见管理插件docs 或 cli - 参见导出配置部分或者甚至是这个问题RabbitMQ:如何创建和恢复备份)。
然后您可以使用铲子插件消息从一个集群无缝迁移到另一个集群。
或者,你可以使用包含 RabbitMQ 数据的目录(请参阅文件位置文档中的标准路径)从一个集群到另一个集群,但这种方式可能有一些注意事项,如节点命名、mnesia 和 erlang 版本等,详情请参阅此用户组讨论 -RabbitMQ 服务器 Mnesia 备份与恢复。