• 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节点取

  • 相关阅读:
    Delphi 的字符及字符串 Char、AnsiChar、WideChar、PChar、PAnsiChar、PWideChar
    C# DllImport的用法
    delphi 枚举类型与字符串的转换
    MSSQL2005不能用IP访问
    Delphi制作DLL
    Delphi接口的底层实现
    MacBook下每次SourceTree每次拉取代码都要输入密码解决办法
    因子分析AF
    蒲公英组网
    485通信
  • 原文地址:https://www.cnblogs.com/luo-mao/p/5872377.html
Copyright © 2020-2023  润新知