zoukankan      html  css  js  c++  java
  • rabbitmq集群安装

    以rabbitmq集群有两个node为例,关闭两台机器的防火墙

    1.如果你此时还未安装rabbitmq

      那么可以在装第一个RM时只勾选rabbitmq,然后在安装时在弹出的cookie值填写为“aaaaa”(这个值可以随便填)

      然后在另外一个pc安装rabbitmq时的cookie值也填写为“aaaaa”,只要两台rabbitmq的cookie值一样,二者就可以进行通信

    2.如果你此时已经安装了rabbitmq了,找到C:UsersAdministrator这个目录下的.erlang.cookie这个文件,

       用其中一台的.erlang.cookie文件去覆盖掉另外一台rabbitmq的.erlang.cookie文件(为了保证两个node的cookie一致)

       

    下面进行cluster的操作,我的两台机器的ip分别是10.10.10.184,10.10.10.213,Cluster的操作在任意一台node上执行都可以,只要node之间是可以联通的

    以10.10.10.184为例,在C:Program FilesNetBrainRabbitMQsbin下执行

     rabbitmqctl stop_app

     rabbitmqctl reset

     rabbitmqctl start_app

     rabbitmqctl cluster_status

    接着执行如下操作:

     rabbitmqctl stop_app

     rabbitmqctl join_cluster rabbit@WIN2008R2P1                              ##其中WIN2008R2P1为需要加入的10.10.10.213的机器名称

     rabbitmqctl start_app

    如果出现失败请检查cookie值是否一致,并且查看两台机器的防火墙是否关闭

    添加成功后登陆http://10.10.10.184:15672/#/,也页面如下所示:

    执行policy,还是在sbin目录下执行

    rabbitmqctl set_policy ha-all ".*" "{""ha-mode"":""all"", ""queue-master-locator"":""min-masters"", ""ha-sync-mode"":""automatic""}"

    这条policy的意思是要求所有机器都产生一个镜像,哪个镜像上node最少就设定哪个是主镜像;所有的queue都automatic sync

    至此,你可以在执行task的过程中停掉其中一个node,你会发现task并没有丢失。rabbitmq采用ha-all的方式,consumer取消息队列时只从其中master节点取

  • 相关阅读:
    网络七层模型
    datagaridview添加序号
    sqlserver查询数据库所有字段和表的关系
    Code Project精彩系列转
    操作不同线程中的控件
    PetaPoco数据读写并发时出错
    浮点型float数据强制转换成int整型
    PetaPoco微型ORM的使用错误记录
    EF出现基础提供程序在 Open 上失败
    Python中random模块
  • 原文地址:https://www.cnblogs.com/luo-mao/p/5872377.html
Copyright © 2011-2022 走看看