前面我搭建了tomcat+nginx负载均衡群集,LVM负载均衡群集,今天百忙之中我来凑一个haproxy负载均衡群集,这三种群集的搭建我是深有体会LVS性能确实好(DR)但是在搭建过程中太过于繁琐,nginx是利用upstream模块进行群集但是对群集的节点故障检查功能不够性能与LVM相差有点远,所以今天来一个中间者haproxy。
壹、搭建haproxy群集
1、实验拓扑
2、虚拟机环境(centos6.5无网环境)
一台haproxy服务器,两台nginx服务器,搭建两个反馈不同内容的网站,一台客户机(与环境同一网段)进行测试
3、实验步骤
1)编译安装haproxy
首先安装两个支持包pcre-devel、bzip-devel
编译安装haproxy(我用的1.4版本)
2)拷贝配置文件到/etc/haproxy目录下
修改haproxy.cfg配置文件
3)创建自启脚本
4)安装nginx并制作网页
[[email protected] ~]# yum -y install pcre-devel zlib-devel
[[email protected] ~]# tar zxf nginx-1.6.2.tar.gz
[[email protected] ~]# cd nginx-1.6.2
[[email protected] nginx-1.6.2]# ./configure --prefix=/usr/local/nginx --user=nginx --group=nginx && make && make install
[[email protected] nginx-1.6.2]# useradd -M -s /sbin/nologin nginx
[[email protected] nginx-1.6.2]ln -s /usr/local/nginx/sbin/ */usr/local/sbin/
[[email protected] nginx-1.6.2]#echo "node_1">/usr/local/nginx/htmlindex.html
启动nginx服务
[[email protected] nginx-1.6.2]# nginx
关闭防火墙
IPtables -F
第一台检验本机效果
第二台检验本机效果(关防火墙)
5)开启haproxy服务
6)测试web群集
首测负载均衡
在客户端输入haproxy IP地址测试
打开第二个
下面测试高可用,我们关掉其中一台模拟故障,如果网页继续打开表示高可用没有问题
7)配置haproxy日志
haproxy的日志默认保存在系统的syslog中查看不是非常方便,所以我们在工作环境下可以将日志进行单独存储到不同的文件中
首先修改配置文件:
这两行的作用是将info和notice日志分别记录到不同的文件中
然后修改rsyslog配置将haproxy相关的配置文件独立定义到haproxy.conf,并存放在/etc/rsyslog.d下,rsyslog启动时会自动加载目录下的所有配置文件
加入以下内容:
以下内容将info和notice日志存放到不同的文件中
启动rsyslog服务
测试日志信息
客户机访问之后,回到haproxy服务器上就可查询访问记录
原文地址:http://blog.51cto.com/12959230/2130124