HAProxy简介
Haproxy是一个开源的高性能的反向代理或者说是负载均衡服务软件之一,它支持双机热备、虚拟主机、基于TCP和HTTP应用代理等功能。
离线安装
环境
SUSE版本:SUSE Linux Enterprise Server 11 (x86_64)
Linux内核版本:Linux linux-5ujm 3.0.13-0.27-default #1 SMP Wed Feb 15 13:33:49 UTC 2012 (d73692b) x86_64 x86_64 x86_64 GNU/Linux
fesuser@linux-5ujm:~/xmye> tar -xzvf haproxy-1.7.9.tar.gz
fesuser@linux-5ujm:~/xmye> cd haproxy-1.7.9
fesuser@linux-5ujm:~/xmye/haproxy-1.7.9> uname -r ##查看当前系统版本号
3.0.13-0.27-default
fesuser@linux-5ujm:~/xmye/haproxy-1.7.9> make TARGET=linux3013 CPU=x86_64 PREFIX=/home/fesuser/xmye/haproxy ##编译,因为版本号为3.0.13,所以TARGET=linux3013
fesuser@linux-5ujm:~/xmye/haproxy-1.7.9> make install PREFIX=/home/fesuser/xmye/haproxy ##安装,路径与编译路径一致
- 配置
创建haproxy.cfg文件
global
daemon
maxconn 256
pidfile /home/fesuser/xmye/haproxy/haproxy.pid
defaults
log global
log 127.0.0.1 local2 #[err warning info debug]
option dontlognull #不记录健康检查的日志信息
option httpclose #每次请求完毕后主动关闭http通道
option redispatch #serverId对应的服务器挂掉后,强制定向到其他健康的服务器
timeout connect 5000ms
timeout client 50000ms
timeout server 50000ms
maxconn 30
retries 3 ###3次连接失败就认为服务不可用,也可以通过后面设置
listen admin-stats
bind 0.0.0.0:8089
stats enable ##启用状态监控
mode http
stats uri /stats
stats realm Haproxy\ Statistics # 统计页面密码框上提示文本
stats auth admin:admin # 统计页面用户名和密码设置
stats admin if TRUE #当通过认证才可管理
stats refresh 30s #统计页面自动刷新时间
listen http #http监听
bind 0.0.0.0:44944
mode http
log global
option httplog
balance leastconn
server upjas1 172.21.131.13:36000 weight 1 rise 2 fall 3
server upjas2 172.20.6.54:36001 weight 1 rise 2 fall 3
listen tcp #tcp监听
bind 0.0.0.0:6888
mode tcp
log global
option tcplog
balance first
server tcp1 172.20.6.54:588
更多配置见官方文档
http://cbonte.github.io/haproxy-dconv/1.7/configuration.html