Windows环境下 RabbitMQ集群配置

Posted 何光曦

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Windows环境下 RabbitMQ集群配置相关的知识,希望对你有一定的参考价值。

一、在集群机器上安装erlang环境、安装rabbitmq;

 

二、 假设,192.168.10.111的节点名称为 [email protected],192.168.10.112的节点名称为 [email protected]

1.分别在两台机器的rabbitmq数据、日志文件所在路径下(本文为C:\Users\Administrator\AppData\Roaming\RabbitMQ),创建集群配置文件rabbitmq.config。

rabbitmq.config是一个标准的erlang配置文件。它必须符合erlang配置文件的标准。

它既有默认的目录,也可以在rabbitmq-env.conf文件中配置。

内容为(包括最后的.):

[{rabbit,[{cluster_nodes, [‘[email protected]‘, ‘[email protected]‘]}]}].

 

2.分别配置两台机器的host(C:\Windows\System32\drivers\etc目录下)。

111:

192.168.10.111 H1-PC

192.168.10.112 H2-PC

 

112:

192.168.10.112 H2-PC

192.168.10.111 H1-PC

 

3.分别在两台机器的rabbitmq数据、日志文件所在路径下(本文为C:\Users\Administrator\AppData\Roaming\RabbitMQ),创建rabbitmq环境变量的配置文件rabbitmq-env.conf。

192.168.10.111的rabbitmq-env.conf内容为:

[email protected]

NODE_IP_ADDRESS=192.168.10.111

NODE_PORT=5672

RABBITMQ_MNESIA_BASE=C:\Users\Administrator\AppData\Roaming\RabbitMQ\db

RABBITMQ_LOG_BASE=C:\Users\Administrator\AppData\Roaming\RabbitMQ\log

 

192.168.10.112的rabbitmq-env.conf内容为:

[email protected]

NODE_IP_ADDRESS=192.168.10.112

NODE_PORT=5672

RABBITMQ_MNESIA_BASE=C:\Users\Administrator\AppData\Roaming\RabbitMQ\db

RABBITMQ_LOG_BASE=C:\Users\Administrator\AppData\Roaming\RabbitMQ\log

 

4.将192.168.10.111的C:\Users\Administrator文件夹下的.erlang.cookie文件替换掉

192.168.10.112 C:\Users\Administrator和C:\Windows下的该文件(该文件是集群节点进行通信的验证密钥,所有节点必须一致。反过来亦可)。

 

5.重启两台机器的rabbitmq。

(1)192.168.10.112,在控制台D:\RabbitMQ Server\rabbitmq_server-2.8.1\sbin 路径下分别执行以下语句:

 

rabbitmqctl stop_app

rabbitmqctl reset

rabbitmqctl start_app

 

 (2) 192.168.10.111,在控制台D:\RabbitMQServer\rabbitmq_server-2.8.1\sbin路径下分别执行以下语句:

 

  rabbitmqctl stop_app

 

  rabbitmqctl reset

 

  rabbtimqctl join_cluster [email protected]

 

  rabbitmqctl start_app

 

  上述命令先停掉rabbitmq应用,reset集群状态,然后调用cluster命令,将H1-PC连接到H2-PC,使两者成为一个集群,最后重启rabbitmq应用。在这个cluster命令下,H1-PC是内存节点,H2-PC是磁盘节点(RabbitMQ启动后,默认是磁盘节点)。

 

     如果要使H1-PC在集群里也是磁盘节点,那么更改上述第3句如下:

 

rabbitmqctl cluster [email protected] [email protected]

 

     只要在节点列表里包含了自己,它就成为一个磁盘节点。在RabbitMQ集群里,必须至少有一个磁盘节点存在。

 

 

6.在H1-PC和H2-PC上,运行rabbitmqctl cluster_status命令查看集群状态.

 

Cluster status of node ‘[email protected]‘...

[{nodes,[{disc,[‘[email protected]‘]},{ram,[‘[email protected]‘]}]},

 {running_nodes,[‘[email protected]‘,‘[email protected]‘]}]

...done.

以上是关于Windows环境下 RabbitMQ集群配置的主要内容,如果未能解决你的问题,请参考以下文章

在Windows中单机环境下创建RabbitMQ集群

windows下rabbitmq集群搭建

RabbitMQ环境搭建

RabbitMQ环境搭建

RabbitMQ环境搭建

RabbitMQ环境搭建