Haproxy是一个特别适用于高可用性环境的TCP/HTTP开源的反向代理和负载均衡软件。在七层负载均衡方面的功能很强大(支持COOKIE track, header rewrite等等),支持双机热备,支持虚拟主机,支持健康检查,同时还提供直观的监控页面,可以清晰的监控服务集群的运行状况。
HAproxy的配通过程分为三个主要部分:
\
Haproxy配置段中分五大部分:
global:全局参数配置,进程级的,用来控制Haproxy启动前的一些进程及系统设置;
defaults:配置些默认的参数,可以被frontend,backend, listen段集成使用;
frontend :用来匹配接收客户所请求的域名、uri等,并针对不同的匹配做不同的请求处理;
backend:定义后端服务器集群,以及对后端服务器集群的一些权重、队列、连接数等选项的设置,类似于nginx中的upstream模块;
listen:可以理解为frontend和backend的组合体。Haproxy配置文件的配通方法主要有两种,一种是由前端(frontend )和后端( backend )配置块组成,前端和后端都可以有多个。第二种方法是只有一个listen配置块来同时实现前端和后端。最常用也是推荐的方法为第一种,即frontend和backend的模式。
步骤一:在server2和server3上安装httpd,并且写一个测试页
步骤二:在server1上安装haproxy
yum install haproxy -yvim /etc/haproxy/haproxy.cfglisten admin *:8080stats enablestats uri /status #监控页面地址stats auth admin:westos #管理帐号和密码stats refresh 5s #刷新频率listen westos *:80 #监听的实例名称,地址和端口balance roundrobin #负载均衡算法server web1 192.168.0.102:80 check #后端server web2 192.168.0.103:80 checksystemctl start haproxynetstat -antlp
关闭server2的httpd,然后再进行上面的测试