在本节中,我们主要来学习软件负载均衡器HAProxy在RabbitMQ集群中的使用。
软件负载均衡器HAProxy
HAProxy的特点是:
1、HAProxy是支持虚拟主机的,,并能支持上万级别的连接;
2、能够补充Nginx的一些缺点比如Session的保持,Cookie的引导等工作;
3、支持url检测后端的服务器出问题的检测会有很好的帮助;
4、它跟LVS一样,本身仅仅就只是一款负载均衡软件;单纯从效率上来讲HAProxy更会比Nginx有更出色的负载均衡速度,在并发处理上也是优于Nginx的;
5、HAProxy可以对Mysql读进行负载均衡,对后端的MySQL节点进行检测和负载均衡,不过在后端的MySQL slaves数量超过10台时性能不如LVS,所以我向大家推荐LVS+Keepalived;
6、能够提供4层,7层代理。HAProxy支持两种主要的代理模式:"
tcp"也即4层(大多用于邮件服务器、内部协议通信服务器等),和7层(
HTTP)。在4层模式 下,HAProxy仅在客户端和服务器之间转发双向流量,7层模式下,HAProxy会分析协议,并且能通过允许、拒绝、交换、增加、修改或者删除请求 (request)或者回应(response)里指定内容来控制协议,这种操作要基于特定规则;
7、HAProxy的算法现在也越来越多了,具体有如下8种:
①roundrobin,表示简单的轮询,这个不多说,这个是负载均衡基本都具备的;
②static-rr,表示根据权重,建议关注;
③leastconn,表示最少连接者先处理,建议关注;
④source,表示根据请求源IP,这个跟Nginx的IP_hash机制类似,我们用其作为解决session问题的一种方法,建议关注;
⑤ri,表示根据请求的URI;
⑥rl_param,表示根据请求的URl参数'balance url_param' requires an URL parameter name;
⑦hdr(name),表示根据HTTP请求头来锁定每一次HTTP请求;
⑧rdp-cookie(name),表示根据据cookie(name)来锁定并哈希每一次TCP请求。
好了,下面我们来开始安装HAProxy:
引用
# wget http://haproxy.1wt.eu/download/1.4/src/haproxy-1.4.24.tar.gz
# chmod +x haproxy-1.4.24.tar.gz
# tar xzvf haproxy-1.4.24.tar.gz
# cd haproxy-1.4.24
//linux2.6 kenel的epoll功能可以提高HAProxy的性能,故在编译是要加上TARGET=linux26或TARGET=generic
# make TARGET=generic
# make install
配置RabbitMQ集群的HAProxy
下面我们开始先来创建rabbitmq集群,详情参看
《在单节点上构建built-in内置集群》,这里不再赘述。
接下来我们编辑集群的配置文件:
引用
# mkdir conf
# touch haproxy-rabbitmq.conf
# chmod +x haproxy-rabbitmq.conf
# vi haproxy-rabbitmq.conf
haproxy-rabbitmq.conf配置文件内容如下:
引用
# this config needs haproxy-1.4.24
#logging options
global
log 127.0.0.1 local0 info
maxconn 5120
chroot /opt/haproxy-1.4.24
uid 99
gid 99
daemon
quiet
nbproc 2
pidfile /opt/haproxy-1.4.24/haproxy.pid
#load balancing defaults
defaults
log global
#使用4层代理模式,"mode http"为7层代理模式
mode tcp
#if you set mode to tcp,then you nust change tcplog into httplog
option tcplog
option dontlognull
retries 3
option redispatch
maxconn 2000
contimeout 5s
clitimeout 120s
srvtimeout 120s
#front-end IP for consumers and producters
listen rabbitmq_local_cluster 127.0.0.1:5670
#配置TCP模式
mode tcp
#balance url_param userid
#balance url_param session_id check_post 64
#balance hdr(User-Agent)
#balance hdr(host)
#balance hdr(Host) use_domain_only
#balance rdp-cookie
#balance leastconn
#balance source //ip
#简单的轮询
balance roundrobin
#rabbitmq集群节点配置
server rabbit 127.0.0.1:5672 check inter 5000 rise 2 fall 2
server rabbit2 127.0.0.1:5674 check inter 5000 rise 2 fall 2
server rabbit3 127.0.0.1:5676 check inter 5000 rise 2 fall 2
#配置haproxy web监控,查看统计信息
listen private_monitoring :8100
mode http
option httplog
stats enable
#设置haproxy监控地址为http://localhost:8100/rabbitmq-stats
stats uri /rabbitmq-stats
stats refresh 5s
好了到这里就将rabbitmq集群的haproxy配置文件写好了,下面我们来启动haproxy:
引用
# /opt/haproxy-1.4.24/haproxy -f /opt/haproxy-1.4.24/conf/haproxy-rabbitmq.conf
最后我们打开http://localhost:8100/rabbitmq-stats,看一下监控页面,如果显示出正常就表明已经将HAProxy负载均衡配置好了!
我们做一个测试,如果将rabbit3这个rabbitmq停掉,那么在HAProxy监控页面就会江浙一变化显示出来,rabbit3这一行就会显示“棕红色”:
- 大小: 119.6 KB
- 大小: 119.8 KB
分享到:
相关推荐
mariadb+haproxy负载均衡集群搭建.docx
keepalived+haproxy负载均衡配置 1、 操作系统:RedHat linux6.5 64bit 2、 keepalive: keepalived-1.2.19.tar.gz 地址:http://www.keepalived.org/download.html 3、 Haproxy: haproxy-1.5.8.tar.gz 地址(不能...
linux rabbitmq+haproxy分布式负载均衡生产环境部署完成 技术:rabbitmq集群 linux haproxy负载均衡 说明包含: rabbitmq安装程序 MQ集群负载均衡部署帮助文档 MQ集群负载均衡使用帮助文档 MQ集群负载均衡遇到...
Galera是一个MySQL(也支持MariaDB,Percona)的同步多主集群软件,目前只支持InnoDB引擎。 主要功能: • 同步复制 • 真正的multi-master,即所有节点可以同时读写数据库 • 自动的节点成员控制,失效节点自动被...
主要介绍了keepalived+haproxy实现MySQL高可用负载均衡的配置方法,通过这两个软件可以有效地使MySQL脱离故障及进行健康检测,需要的朋友可以参考下
Keepalived+HAProxy配置高可用负载均衡,解决keepalived无法安装问题,公司项目总结,经过压力测试。
HAProxy+Nginx实现负载均衡
安装haproxy负载均衡MySQL,截图最全,mysql5.7版本。
mysql+mycat+keepalived+haproxy集群(生产环境实测),搭建mysql高可用集群
rabbitmq 镜像集群 +Haproxy负载均衡 +keepalived高可用-附件资源
Mysql+haproxy+mycat+pxc+zookeeper实现高可用集群
用Keepalived与HAProxy实现高可用负载均衡的配置方法.docx
centos6.8下RabbitMQ 集群+haproxy高可用安装步骤,傻瓜式步骤
需要至少2台centos7机器,最好6台配置,mysql双主读写分离并且故障自动切换,只需要安装好并且把配制文件放到指定目录下就可以了。
mysql主从同步+MyCat读写分离+分库分表+Haproxy高可用+Keepalived心跳机制+虚拟IP.rar
LVS+HAproxy+NGINX+mysql+nf综合实验过程,详细步骤,可以参考。
基于Keepalived+Haproxy搭建四层负载均衡器
redhat 5.8(64位)下HAproxy+Keepalived 负载均衡架构搭建@整理V1..rar
linux下rabbitmq集群负载均衡安装文档(rabbitmq+haproxy) 附带:部署文档、使用文档、问题解决文档 技术:rabbitmq+haproxy 附带各种源码包;经测试后通过;