zoukankan      html  css  js  c++  java
  • RabbitMQ 集群数据迁移

    https://blog.51cto.com/u_15127701/2887892

    RabbitMQ 集群数据迁移,完成集群A 到集群B  的数据迁移。

    RabbitMQ  官网有这么一段话:

    大致意思就是,在 3.7.0 版本之前,消息是存储在

     
    queues, msg_store_persistent ,msg_store_transient
    1.
    目录下。

    因此集群消息迁移的思路,是备份这些文件夹。

    然后还有一段话

    大致意思是在恢复数据前,要先恢复元数据。

    测试过程:

    集群A:

    集群A 队列消息:

    消息内容是:

    “test xiaoming ”

    集群B:

    没有任何消息,队列。

    数据恢复如下:

    1.导出集群A 的元数据。rabbit_n1_2020-3-30.json

    2.  将集群A的元数据导入到集群B

    3. 停掉集群A,拷贝集群A 的 n1 n2 n3 下的文件 

     
    msg_store_persistent msg_store_transient, queues ,revovery.dets
    1.
    三台机器上执行

     
    service rabbitmq-server stop
    1.
    4. 停掉集群B ,将 集群A 的 n1 n2 n3 的文件,分别拷贝到 集群B 的 n1 n2 n3 文件mnesia 目录下。

    5. 设置权限 

    chown -R rabbitmq:rabbitmq msg_store_persistentchown -R rabbitmq:rabbitmq msg_store_transientchown -R rabbitmq:rabbitmq queues
    1.
    chown -R rabbitmq:rabbitmq revovery.dets
    1.

    1.
    6.启动集群B的 n1 n2 n3

    service rabbitmq-server start
    1.
     

    查看 集群B 的结果

    可以看到数据恢复了,看下消息是否正确。

    这样就完成了RabbitMQ集群数据迁移。

    参考资料:

    https://www.rabbitmq.com/backup.html

    https://www.rabbitmq.com/upgrade.html

    https://www.rabbitmq.com/blue-green-upgrade.html

    https://blog.51cto.com/u_15127701/2887892
    RabbitMQ 集群数据迁移
    https://blog.51cto.com/u_15127701/2887892

  • 相关阅读:
    堆和栈的区别
    VS-Visual Studio-IIS Express 支持局域网访问
    理解Session的几种模式
    HTTP Keep-Alive模式
    C#[Serializable]在C#中的作用-NET 中的对象序列化
    深入理解asp.net SessionState
    .NET中JSON的序列化和反序列化
    数据库相关命名规范
    PHPStorm+PHP5.6+WIN7+IIS7
    深入理解C# 静态类与非静态类、静态成员的区别
  • 原文地址:https://www.cnblogs.com/cheyunhua/p/15507539.html
Copyright © 2011-2022 走看看