RabbitMQ分布式集群搭建

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/MoSee/article/details/81005328

采用两台centos7机器搭建普通模式的RabbitMQ机器
mq01 (主机名) 192.168.100.177
mq02 (主机名) 192.168.100.200

准备工作

修改主机名

centos6

查看当前的hostname
编辑network文件修改hostname行(重启生效)

centos7

centos7新增hostnamectl工具,修改后即可并永久生效
hostnamectl set-hostname mq01

配置hosts文件

关于hosts文件的说明

mq01的配置

mq01的配置

mq02的配置

mq02的配置

集群配置

端口设置

RabbitMQ机器内部通讯的端口是436925672,如果防火墙上没有放开这两个端口,后续的join_cluster操作会失败。使用firewall-cmd工具分别在两台机上都打开端口。
firewall-cmd –zone=public –add-port=4369/tcp –permanent
firewall-cmd –zone=public –add-port=25672/tcp –permanent
firewall-cmd –reload

启动服务

如果RabbitMQ还没有启动,那么采用后台服务的模式启动。
rabbitmq-server -detached

同步cookie

在上述的两台机器上安装RabbitMQ完成之后,在/var/lib/rabbitmq下有个隐藏文件.erlang.cookie,这文件存储的内容是cookie值。
RabbitMQ的集群依赖erlang集群,而erlang集群是通过这个cookie进行通信认证的,因此我们做集群的第一步就是统一cookie值。
通过scp命令把其中一台机器上的cookie文件拷贝覆盖另一台机器上的cookie文件。

组建集群

[root@mq02 ~]# rabbitmqctl stop_app
[root@mq02 ~]# rabbitmqctl join_cluster rabbit@mq01
[root@mq02 ~]# rabbitmqctl start_app

这里有篇更详细的https://www.cnblogs.com/netonline/archive/2017/10/16/7678321.html

猜你喜欢

转载自blog.csdn.net/MoSee/article/details/81005328
今日推荐