RabbitMQ元数据迁移指将用户线下实例的rabbitmq实例元数据迁移到线上实例。
背景信息
RabbitMQ集群元数据是指RabbitMQ集群的信息,包括User、Vhost、Queue、Exchange、Binding Key、Permission、Parameter等信息。RabbitMQ集群元数据存储于RabbitMQ集群的内部数据库,在集群的各个节点之间自动复制。集群中的每个节点都有自己的元数据副本。当某个节点的元数据变更时,所有节点的元数据都会同步更新。因此,集群的各个节点的元数据被导出时都是相同的。RabbitMQ集群元数据可以被导出成一份JSON文件,然后被导入另一个RabbitMQ集群,实现RabbitMQ集群元数据备份。
迁移元数据上云是指将开源RabbitMQ集群的元数据迁移到天翼云分布式消息服务RabbitMQ实例。分布式消息服务RabbitMQ是天翼云提供的全托管消息队列服务,兼容开源RabbitMQ。您可以将RabbitMQ集群元数据导出,然后导入分布式消息服务RabbitMQ实例,分布式消息服务RabbitMQ会根据成功导入的元数据在目标分布式消息服务RabbitMQ实例中创建对应的Vhost、Queue、Exchange、Binding,实现RabbitMQ集群元数据迁移上云。您可以将全部Vhost信息导入分布式消息服务RabbitMQ实例,也可以根据需要将某个Vhost信息导入分布式消息服务RabbitMQ实例中的Vhost。
迁移元数据
(1)在RabbitMQ WebUI页面查看,如图所示。
Overview视图中,点击“Download broker definitions”按钮下载集群元数据。得到rabbitmq元数据的json文件。
(2)上线rabbitmq实例导入元数据。
如上图所示,先点击选择文件,选择上一步骤导出的json文件,再点击导入配置。
注意:在线下的Rabbitmq集群中不能含有用户名rabbitmq,否则会被覆盖。用户名rabbitmq是天翼云Rabbitmq内部使用的管理账号。