搭建高可用RabbitMQ镜像模式集群
一 部署 RabbitMQ Cluster
1 环境准备
cat >>/etc/hosts/<<eof
10.11.59.77 rabbitmq1
10.11.59.78 rabbitmq2
10.11.59.79 rabbitmq3
eof
hostnamectl set-hostname rabbitmq1
hostnamectl set-hostname rabbitmq2
hostnamectl set-hostname rabbitmq3
2 安装rabitmq(3台)
[root@rabbitmq1 ~]# yum install erlang
[root@rabbitmq1 ~]# yum install -y socat
[root@rabbitmq1 ~]# yum -y install rabbitmq-server
3、搭建 rabbitmq 的一般模式集群
1 统一 erlang.cookie 文件中 cookie 值
scp /var/lib/rabbitmq/.erlang.cookie rabbitmq2:/var/lib/rabbitmq/.erlang.cookie
scp /var/lib/rabbitmq/.erlang.cookie rabbitmq3:/var/lib/rabbitmq/.erlang.cookie
2 Rabbitmq 集群添加节点
重启 rabbitmq1机器中 rabbitmq 的服务 在 rabbitmq2,rabbitmq3 分别执行
[root@rabbitmq2 ~]# rabbitmqctl stop_app
[root@rabbitmq2 ~]# rabbitmqctl join_cluster --ram rabbit@rabbitmq1
[root@rabbitmq2 ~]# rabbitmqctl start_app
[root@rabbitmq2 ~]# rabbitmq-plugins enable rabbitmq_management
[root@rabbitmq2 ~]# systemctl restart rabbitmq-server.service
3 集群状态
4 打开网页管理页面查看 nodes
2 搭建 rabbitmq 的镜像高可用模式集群
[root@rabbitmq1 ~]# rabbitmqctl set_policy ha-all "^" '{"ha-mode":"all"}'
浏览器查看
haproxy+keepalived负载均衡
1 环境
keepalived1: 10.11.59.136
keepalived2: 10.11.59.137
vip地址: 10.11.59.243
2 安装keepalived(2台)
yum -y install keepalived
3 修改配置文件
1 keepalived1 配置
2 keepalived2 配置
3 启动keepalived(2台)
systemctl start keepalived
systemctl enable keepalived
健康检测脚本
4 查看vip
查看IP,此时备节点不会有VIP(只有当主挂了的时候,VIP才会飘到备节点)
1 模拟负载均很器故障测试
使用vip10.11.59.243访问
访问haproxy监控页面
vip 漂移到keepalived从节点 vip 漂移到keepalived从节点
三、部署haproxy,实现访问5672端口时,轮询访问3个节点
环境
haproxy1: 10.11.59.136
haproxy2: 10.11.59.137
1、安装 haproxy
yum -y install haproxy
2、创建 haproxy.conf
master haproxy
将配置文件拷贝到slave服务器
[root@ha-proxy-master ~]# scp /etc/haproxy/haproxy.cfg 10.11.59.137:/etc/haproxy/
访问测试
使用haproxy 代理ip10.11.59.136 访问rabbitmq
3 haproxy 监控页面访问验证
端口8888 账号密码 qianfeng 123