一、haproxy概述
HAProxy 提供高可用性、负载均衡以及基于TCP和HTTP的应用代理,支持虚拟主机,它是免费、快速并且可靠的一种负载均衡解决方案。适合处理高负载站点的七层数据请求。类似的代理服务可以屏蔽内部真实服务器,防止内部服务器遭受攻击。
二、haproxy的特点
支持tcp / http 两种协议层的负载均衡,使得其负载均衡功能非常丰富。支持8种左右的负载均衡算法,尤其是在http模式时,有许多非常实在的负载均衡算法,适用各种需求。性能非常优秀,基于单进程处理模式(和Nginx类似)让其性能卓越。拥有一个功能出色的监控页面,实时了解系统的当前状况。功能强大的ACL支持,给用户极大的方便。
三、haproxy配置示例
1、将haproxy安装包上传node1,安装配置组件
[root@chicken ~]# yum -y install pcre-devel bzip2-devel gcc gcc-c++ make
2、解压haproxy压缩包
[root@chicken ~]# tar zxvf haproxy-1.5.19.tar.gz -C /usr/src/
[root@chicken ~]# cd /usr/src/haproxy-1.5.19/
[root@chicken haproxy-1.5.19]# make TARGET=linux26 && make install
3、创建主配置文件
[root@chicken ~]# mkdir /etc/haproxy
[root@chicken haproxy-1.5.19]# cp examples/haproxy.cfg /etc/haproxy/
4、添加群集Web配置信息
[root@chicken ~]# vim /etc/haproxy/haproxy.cfg
listen web 0.0.0.0:80
option httpchk GET /index.html
balance roundrobin
##访问对应Web节点的IP地址
server inst1 192.168.223.125:80 cookie server01 check inter 2000 fall 3
server inst2 192.168.223.126:80 cookie server02 check inter 2000 fall 3
5、创建群集根目录
[root@chicken ~]# mkdir /usr/share/haproxy
[root@chicken ~]# mkdir /etc/init.d/haproxy
[root@chicken haproxy-1.5.19]# cp examples/haproxy.init /etc/init.d/haproxy
[root@chicken haproxy-1.5.19]# ln -s /usr/local/sbin/haproxy /usr/sbin/haproxy
[root@chicken haproxy-1.5.19]# chmod -x /etc/init.d/haproxy
[root@chicken haproxy-1.5.19]# chkconfig --add haproxy ##添加为系统服务
[root@chicken haproxy-1.5.19]# systemctl start haproxy ##启动服务
验证实验测试