1.声明
当前内容主要用于本人学习和复习RabbitMQ集群的搭建,本次内容主要为三台CentOS的Linux Deploy手机搭建RabbitMQ集群
注意:手机需要安装Linux Deploy(必须root),本人使用aliyun镜像搭建
2.准备条件
1.三台手机必须都安装(或者直接解压配置也可以)Erlang(otp_src_22.3.tar.gz
)
2.使用解压版的rabbitmq
上面两个操作可以借鉴:RabbitMQ:CentOS7的安装、启动以及使用
3.配置hosts文件
4.配置.erlang.cookie文件
5.配置集群(搭建集群)
本人使用的节点名称:node1、node2、node3,其中集群的主节点为:node3
节点名称 | 节点ip |
---|---|
node1 | 192.168.1.109 |
node2 | 192.168.1.110 |
node3 | 192.168.1.102 |
3.配置hosts文件
192.168.1.109地址的hosts文件
192.168.1.110地址的hosts文件
192.168.1.102地址的hosts文件
然后可以使用:hostname node1
、hostname node2
、hostname node3
,配置一次当前的节点
配置完毕后需要将所有的三个电脑的主机重启(停止、启动、然后重新连接)
达到以下效果:
该步骤执行完毕
4.配置所有的.erlang.cookie文件
由于本人没有安装所以,这里的只要编译后就会存在的地方为:/用户/.erlang.cookie
例如:本人使用root用户登录进行编译,所以该文件为/root/.erlang.cookie
(该文件为隐藏文件,使用ls -al
查看)
使用filezilla
连接到node3节点,并下载该文件
然后通过filezilla
上传这个文件到各个节点的/用户/
位置(可以通过cat方式查看是否一致)
5.配置集群
1.进入node1、node2、node3
并都启动rabbitmq
./rabbitmq-server
2.此时停止(node1、node2、node3)
的rabbitmq
./rabbitmqctl stop_app
3.此时重置(node1、node2、node3)
节点数据
./rabbitmqctl reset
4.此时启动node3节点
./rabbitmqctl start_app
5.把node1和node2都加入到node3节点中形成集群状态
./rabbitmqctl join_cluster rabbit@node3
6.最后启动node1和node2节点
./rabbitmqctl start_app
此时搭建集群完成!
6.查看集群的状态
直接查看node3集群状态
./rabbitmqctl cluster_status
创建一个为node3开启ui界面,并添加用户root然后访问:用户的创建和设置tag 和 用户的权限分配
并且其他的ip地址也可以访问当前的信息
7.关于Linux中搭建集群的问题
- 所有的Linux中都必须开放端口有:
15672、25762、5672、4369
(不开放可能导致其他无法集群的问题) - 其他的操作还是按照上面
- 所有的集群节点都必须开启:
rabbitmq_management_agent
插件
8.总结
1.从开始到集群的搭建犯了两个错误
关于Linux Deploy中配置的hosts内容必须要重启才能生效
需要配置当前的所有节点的cookie保证完全一致
2.其实搭建集群后面的内容很简单,就是其他节点加入到主节点即可,但是主节点必须是启动状态的
3.所有的节点都必须保证reset保持一致,必须在加入主节点后才能启动rabbitmq
4.Linux中的集群中需要开放四个端口,以及每个节点都需要开启rabbitmq_management_agent才可以在页面上显示
以上纯属个人见解,如有问题请联系本人!