CentOS7 搭建高可用RabbitMQ集群

高可用集群架构

服务器设置

角色 IP 组件
node101 192.168.153.101 rabbitmq + haproxy + keepalived
rnode102 192.168.153.102 rabbitmq + haproxy + keepalived
node103 192.168.153.103 rabbitmq

环境准备

1.使用虚拟机安装CentOS7系统

2.调整网络设置静态IP192.168.153.101

3.安装 Erlang 和RabbitMQ,可以参见https://my.oschina.net/liuyuantao/blog/4258593

4.安装HAProxy和Keepalived

5.将虚拟机克隆出3份,分别调整ip、hostname和hosts

集群搭建

1.修改hosts和hostname

三台机器分别执行下面命令

vim /etc/hosts

添加

192.168.153.101 node101
192.168.153.102 node102
192.168.153.103 node103
vim /etc/hostname

删除内容后,分别添加node101、node102、node103

2.以确保各个节点的cookie文件使用的是同一个值

在node101上执行远程操作命令

scp /var/lib/rabbitmq/.erlang.cookie root@node102:/var/lib/rabbitmq/.erlang.cookie
scp /var/lib/rabbitmq/.erlang.cookie root@node103:/var/lib/rabbitmq/.erlang.cookie

3.启动RabbitMQ服务

顺带启动Erlang虚拟机和RbbitMQ应用服务(在三台节点上分别执行以下命令)

rabbitmq-server -detached

4.在节点node102执行

rabbitmqctl stop_app

注:rabbitmqctl stop会将Erlang虚拟机关闭,rabbitmqctl stop_app只关闭RabbitMQ服务

rabbitmqctl reset
rabbitmqctl join_cluster rabbit@node101
rabbitmqctl start_app

5.在节点node103执行

rabbitmqctl stop_app
rabbitmqctl reset
rabbitmqctl join_cluster rabbit@node101
rabbitmqctl start_app


 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章