Rabbitmq 创建集群

Rabbitmq 创建集群

  1. 更改host
    两台主机rabbit1:192.168.1.112,rabbit2:192.168.1.113
    host配置如下:

    rabbit1 192.168.1.112
    rabbit2 192.168.1.113

  2. 同步erlang.cookie
    将rabbit1 C:\users{user name}\erlang.cookie 文件覆盖rabbit2中的文件。

  3. 加入集群
    rabbit2加入到rabbit1节点

    rabbitmqctl stop_app –关掉rabbit2服务
    rabbitmqctl join_cluster rabbit@rabbit1 –加入集群
    rabbitmqctl start_app –启动rabbit2服务

    查看集群信息

    rabbitmqctl cluster_status

    更改节点属性

    rabbitmqctl stop_app
    rabbitmqctl change_cluster_node_type disc/ram –更改当前节点为磁盘/内存节点
    rabbitmqctl start_app

    disc表示磁盘节点,ram表示内存节点,集群中至少存在一个磁盘节点。
    cookie 在所有节点上必须完全一样,同步时一定要注意

  4. RABBITMQ HA

    1. 镜像队列概念
      镜像队列可以同步queue和message,当主queue挂掉,从queue中会有一个变为主queue来接替工作。
      镜像队列是基于普通的集群模式的,所以你还是得先配置普通集群,然后才能设置镜像队列。
      镜像队列设置后,会分一个主节点和多个从节点,如果主节点宕机,从节点会有一个选为主节点,原先的主节点起来后会变为从节点。
      queue和message虽然会存在所有镜像队列中,但客户端读取时不论物理面连接的主节点还是从节点,都是从主节点读取数据,然后主节点再将queue和message的状态同步给从节点,因此多个客户端连接不同的镜像队列不会产生同一message被多次接受的情况。

    2. 配置镜像队列

      rabbitmqctl set_policy ha-all “hello” “{“ha-mode”:”all”}”

      ha-all 是同步模式,指同步到所有的节点,还有另外两种模式ha-exactly表示在指定个数的节点上进行镜像,节点的个数由ha-params指定,ha-nodes表示在指定的节点上进行镜像,节点的名称通过ha-params指定。
      hello 是同步的队列名,可以用正则表达式表示。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值