1,安装配置过程:两台haproxy安装配置过程一样
1
2
3
4
5
6
7
|
#cd /usr/local/src #wget http://haproxy.1wt.eu/download/1.4/src/haproxy-1.4.24.tar.gz #tar xf haproxy-1.4.24.tar.gz #cd haproxy-1.4.24 #make TARGET=linux26 ARCH=x86_64 #TARGET是指定内核版本,ARCH指定CPU架构,我使用的是64bit系统 #make install |
2,安装完毕后,创建配置文件和启动文件
1
2
3
4
5
6
|
#mkdir /etc/haproxy #cp examples/haproxy.cfg /etc/haproxy #cp examples/haproxy.init /etc/init.d/haproxy #chmod +x /etc/init.d/haproxy #ln -s /usr/local/sbin/haproxy /usr/sbin/ #mkdir /usr/share/haproxy |
3、编辑配置文件(两台Haproxy配置文件相同)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
|
global log 127.0.0.1 local0 #日志输出配置,所有日志都记录在本机,通过local0输出
log 127.0.0.1 local1 notice
maxconn 4096 #最大连接数
chroot /usr/share/haproxy #改变当前工作目录。
uid 99 #所属用户的uid
gid 99 #所属运行的gid
daemon #以后台形式运行haproxy
defaults log global
mode http #默认的模式mode { tcp|http|health },tcp是4层,http是7层,health只会返回OK
option httplog
option dontlognull
option redispatch #当serverId对应的服务器挂掉后,强制定向到其他健康的服务器
option abortonclose #当服务器负载很高的时候,自动结束掉当前队列处理比较久的链接
retries 3 #两次连接失败就认为是服务器不可用
maxconn 2000 #默认的最大连接数
contimeout 5000 #连接超时
clitimeout 50000 #客户端超时
srvtimeout 50000 #服务器超时
timeout check 5s #心跳检测超时
stats refresh 30s #统计页面自动刷新时间
stats uri /stats #统计页面url
stats realm baison- test -Haproxy #统计页面密码框上提示文本
stats auth admin:admin123 #统计页面用户名和密码设置
stats hide-version #隐藏统计页面上HAProxy的版本信息
frontend www bind *:80 #这里建议使用bind *:80的方式,要不然做集群高可用的时候有问题,vip切换到其他机器就不能访问了。
acl web hdr(host) -i www.william.com #acl后面是规则名称,-i是要访问的域名,如果访问www.william.com这个域名就分发到下面的webserver 的作用域。
acl img hdr(host) -i img.william.com #如果访问img.william.com就分发到imgserver这个作用域。
use_backend webserver if web
use_backend imgserver if img
backend webserver #webserver作用域
#timeout server 50000ms
mode http
balance roundrobin #banlance roundrobin 轮询,balance source 保存session值,支持static-rr,leastconn,first,uri等参数
option httpchk HEAD /index .html #检测文件,如果分发到后台index.html访问不到就不再分发给它 *** 这里要住下 HEAD 这个参数一定要加上,它是以HEAD请求的方式来检测后端的server,不然haproxy认为后端的realserver 是down的
server web01 ip:80 check inter 2000 fall 3 weight 30
server web02 ip:80 check inter 2000 fall 3 weight 40
backend imgserver mode http
option httpchk HEAD /index .html
balance roundrobin
server img01 ip:80 check inter 2000 fall 3
server img02 ip:80 check inter 2000 fall 3
|
4、启动Haproxy服务,查看状态。
1
|
service haproxy start |
本文转自wks9751CTO博客,原文链接:http://blog.51cto.com/wks97/1747660 ,如需转载请自行联系原作者