linux(deepin15.4)下部署集群RabbitMQ消息队列镜像模式(三)

第三天

一、镜像队列策略
1、镜像队列可以防止主节点挂掉,整个队列就瘫痪了。所以要想在主节点挂掉或故障也能正常应用,就要复制队列内容到集群里的每个节点,须要创建镜像队列。

2、镜像模式配置完成之后,会存在一个主节点和多个镜像节点(或称为热备队列,Slaves),主节点在收到消息后,会同步消息至当前所有的镜像,若主节点消息被处理删除之后,镜像节点的数据会同步删除;

3、当主节点发生异常后,镜像队列中会有一个从节点自动升为主节点。当异常的主节点恢复后,会变为镜像从节点
镜像队列是基于普通的集群模式的,所以你还是得先配置普通集群,然后才能设置镜像队列.

在创建好了普通的集群模式后,在任一节点机器终端输入命令:
命令:rabbitmqctl set_policy ha-all “^” ‘{“ha-mode”:”all”}’
1、ha-all 是同步模式,指同步给所有节点,还有另外两种模式ha-exactly表示在指定个数的节点上进行镜像,节点的个数由ha-params指定,ha-nodes表示在指定的节点上进行镜像,节点名称通过ha-params指定;

2、^是匹配所有节点。

3、{“ha-mode”:”all”} 表示同步给所有,同步模式的不同,此参数也不同。

执行上面命令后,可以在web管理界面查看queue 页面,里面hello2队列的node节点后会出现+1标签,表示有1个从节点,而主节点则是当前显示的node(iz949a2mrc1z)
linux(deepin15.4)下部署集群RabbitMQ消息队列镜像模式(三)_第1张图片
linux(deepin15.4)下部署集群RabbitMQ消息队列镜像模式(三)_第2张图片
这里我已经创建了hello2消息队列

二、7. 安装并配置 HAProxy
在 节点机器 上安装 HAProxy,然后修改 /etc/haproxy/haproxy.cfg:
在最下方添加如下:

listen rabbitmq_cluster            
bind:5672                                       
mode tcp                                       
balance roundrobin                  

server   节点机器1名称 节点机器1IP:5672 check inter 2000 rise 2 fall 3  
server   节点机器2名称 节点机器2IP:5672 check inter 2000 rise 2 fall 3

listen:套间字是指定监听rabbitmq_cluster
bind:指定端口为5672
mode:指定模式为tcp连接
balance:负载均衡模式
check inter 2000是检查该服务器
rise 2 检查两次都成功,表示该服务器可用
fall 3 检查三次都失败,该服务器不可用

linux(deepin15.4)下部署集群RabbitMQ消息队列镜像模式(三)_第3张图片

———————————————————————

listen套间字绑定监听端口

———————————————————————

listen admin_stats
stats enable #:web监听可用
bind *:8099 #:web监听端口号
mode http #:web监听模式
option httplog
log global
maxconn 10 #:最大连接
stats refresh 30s #:刷新时间30秒
stats realm haproxy
stats uri /admin #:web监听地址
stats auth admin:admin123 #:web监听用户名与密码
stats admin if TRUE #:web监听可用
[root@iZbp10c911n2z47alw0t4bZ ~]# service rabbitmq-server start

还可以这样写

frontend rabbitmq
     bind 127.3.3.3:8382
     default_backend   rabbitmq_server

backend rabbitmq_server
     mode http
     balance leastconn
     server  iZbp10c911n2z47alw0t4bZ 116.62.128.85:15672 check inter 5000 rise 2 fall 3    
     server  iZ949a2mrc1Z 112.74.86.122:15672 check inter 5000 rise 2 fall 3

linux(deepin15.4)下部署集群RabbitMQ消息队列镜像模式(三)_第4张图片

frontend是指定前端访问
bind是IP
default_backend 是返回给后端,要与后端名字一样

backend:接收前端的信息,与前端返回的名字要相同
mode :访问模式
balance:负载均衡

你可能感兴趣的:(rabbitmq集群)