1. 准备3台 centos服务器 192.168.233.128 192.168.233.130 192.168.233.131
防火墙放开 集群端口, 这里一并把所有rabbitmq用到的端口都放开
firewall-cmd --zone=public --add-port=4369/tcp --permanent
firewall-cmd --zone=public --add-port=5671-5672/tcp --permanent
firewall-cmd --zone=public --add-port=25672/tcp --permanent
firewall-cmd --zone=public --add-port=35672-35682/tcp --permanent
firewall-cmd --zone=public --add-port=15672/tcp --permanent
firewall-cmd --zone=public --add-port=61613-61614/tcp --permanent
firewall-cmd --zone=public --add-port=1883/tcp --permanent
firewall-cmd --zone=public --add-port=8883/tcp --permanent
firewall-cmd --zone=public --add-port=15674-15675/tcp --permanent
firewall-cmd --reload
2. 修改host映射 修改 /etc/hosts 文件 ,方便3台机器访问
添加如下 ,添加后重启 3台机器
192.168.233.128 rabbitmq1
192.168.233.130 rabbitmq2
192.168.233.131 rabbitmq3
3. 修改cookie文件, 统一成一个key , [每个erlang程序都一个cookie]
这个cookie 可以在 rabbitmq的日志中 查找到
如图 cookie 文件就在 这个 home dir 目录中
cd /var/lib/rabbitmq
ls -a --这个是查找目录下所有文件. cookie文件默认是隐藏的
用这个 .erlang.cookie文件中的 key 替换掉 rabbitmq 2,3 中的key ,使 3 台服务器的 .erlang.cookie中的内容一致
4. 集群搭建 参考官网 https://www.rabbitmq.com/clustering.html
根据官网介绍: 我们把rabbitmq2 加入到 rabbitmq1的集群中
在 rabbitmq2 上 停止 rabbitmq
rabbitmqctl stop_app
rabbitmqctl join_cluster rabbit@rabbitmq1
rabbitmqctl start_app
查看 集群状态
rabbitmqctl cluster_status
发现 nodes节点已经变成2个了, 同理 把rabbitmq3加入 rabbitmq1集群中