阿里巴巴是个快乐的青年
分类: 架构设计与优化
2013-02-21 14:46:47
一、安装
1、二进制安装
yum install haproxy
就这么简单。
2、源码安装
wget
tar -zxvf haproxy-1.4.22.tar.gz
cd haproxy-1.4.22
make TARGET=linux26 PREFIX=/usr/local
make install PREFIX=/usr/local
cp haproxy-1.4.22/examples/haproxy.cfg /etc/haproxy.cfg
也可以不指定PREFIX=/usr/local,默认是/usr/sbin/。
这样也OK了,so简单。
二、配置
1、基本配置
vi /etc/haproxy.cfg
修改配置文件,这里是我的haproxy.rar。
需要注意的有几个部分:
(1)模式
Haproxy提供四层和七层交换,也就意味着有两种mode即tcp和http。
(2)前端
frontend:指定mode,监听地址和端口,接受客户端连接,指定缺省backend。
(3)后端
backend:指定负载均衡算法(比如:lastconnection、roundrobin等),指定服务器列表(包括IP和端口号、最大连接数、权重等)。
(4)长连接
Haproxy虽然同时支持四层和七层交换,但更适合于七层交换。默认是短链接,如果有长连接需要,需要设置option tcpka和timeout。
(5)超时时间
timeout connect:连接超时时间。
timeout client:客户端超时时间。与option tcpka合用,时间值建议同server。
timeout sever:服务器超时时间。与option tcpka合用,时间值建议同client。
详细的信息可以参看。
2、日志配置
Haproxy用syslog,具体步骤如下:
(1)修改/etc/sysconfig/syslog
SYSLOGD_OPTIONS="-r -m 0"
(2)修改/etc/syslog.conf
在文件末尾增加:local2.* /var/log/haproxy.log
这个路径/var/log可以根据需要修改。
(3)重启syslog服务
service syslog restart
OK了。
三、启动
1、自动启动
如果是二进制安装,则默认就可以以服务来启动:
service haproxy start/stop/restart
如果是源码安装,则如下来启动:
/usr/local/haproxy/haproxy -f /usr/local/haproxy/haproxy.cfg
但这种方式用起来有点小不爽,于是乎编写启动脚本,具体请看下节。
2、启动脚本
(1)编写启动脚本
编辑脚本文件:
vi /etc/rc.d/init.d/haproxy
具体脚本内容haproxy.rar。
(2)随机启动配置
chmod +x /etc/rc.d/init.d/haproxy
chkconfig --add haproxy
chkconfig haproxy on
如此这般后,就可以如二进制安装那般了。
四、实例
别忘了设置长连接option tcpka和timeout server。