HAPROXY配置
1、安装关联软件
安装PCRE
� [root@svr1 ~]# yum -y install pcre pcre-devel
解压并进入haproxy目录
� [root@svr1 ~]# tar xvzf haproxy-1.4.24.tar.gz
� [root@svr1 ~]# cd haproxy-1.4.24
查看内核版本号
� [root@svr1 ~]# uname -r
安装:指定内核和安装路径
� [root@svr1 ~]# make TARGET=linux2628 PREFIX=/usr/local/haproxy install
2、
建立haproxy的符号链接
� [root@svr1 ~]# ln -s /usr/local/haproxy/sbin/haproxy /usr/local/sbin/
拷贝安装源目录下的示例文件至haproxy安装目录下
� [root@svr1 ~]# mkdir /usr/local/haproxy/conf
� [root@svr1 ~]# cp examples/haproxy.cfg /usr/local/haproxy/conf/haproxy.cfg
3、配置文件
(1)说明
HAProxy配置参数来源
� 命令行。总是具有最高优先级
� global部分。全局设置进程级别参数
� 代理声明部分。来自于default、listen、frontend和backend
配置文件可由如下部分构成:
� default
为后续的其他部分设置缺省参数
缺省参数可以被后续部分重置
� frontend
描述接收客户端侦听套接字(socket)集
� backend
描述转发链接的服务器集
� listen
把frontend和backend结合到一起的完整声明
(2)示例
global //全局设置
log 127.0.0.1 local0 //日志输出配置
maxconn 4096 //最大连接数
chroot /usr/local/haproxy
uid 99 //所属运行的用户uid
gid 99 //所属运行的用户组
daemon //以后台形式运行
nbproc 2 //启动2个haproxy实例
pidfile /usr/local/haproxy/run/haproxy.pid
defaults //默认设置
log global
mode http //默认采用http模式
option httplog //日志类别
retries 3 //3次连接失败认为服务器不可用
option redispatch //当serverid对应的服务器挂掉后,
//强制定向到其他健康服务器
stats uri /haproxy-admin //设置监控
contimeout 5000 //连接超时时间
clitimeout 50000 //客户端连接超时时间
srvtimeout 50000 //服务器端连接超时时间
listen websrv-rewrite 0.0.0.0:80
cookie SERVERID rewrite
balance roundrobin
server app1_1 192.168.20.101:80 cookie app1inst1 check inter 2000 rise 2 fall 5
server app1_2 192.168.20.102:80 cookie app1inst2 check inter 2000 rise 2 fall 5
4、控制服务器状态
启动服务
� [root@svr1 ~]# haproxy -f \
> /usr/local/haproxy/conf/haproxy.cfg
停止服务
� [root@svr1 ~]# killall haproxy
重启服务
� [root@svr1 ~]# haproxy -f haproxy.cfg \
> -st `pidof haproxy`
5、监控HAProxy状态
http://192.168.194.10/haproxy-admin