haproxy是一款可靠,高性能的并且可以支持TCP/HTTP的负载均衡器。
1、下载:
haproxy官网:http://www.haproxy.org/
从中选择你下载的版本。这里以1.9为例。点击1.9.1进入下载。
下载完毕后,包名为:haproxy-1.9.1.tar.gz
2、安装
由于下载的是源码包,所以安装前需要进行编译。
2.1、解压源码包并进入该目录:
tar -zxvf haproxy-1.9.1.tar.gz
cd haproxy-1.9.1
2.2、编译:
make TARGET=linux2628 ARCH=x86_64 PREFIX=/usr/local/haproxy
- PREFIX 为指定的安装路径
- TARGET则根据当前操作系统内核版本指定
- - linux22 for Linux 2.2
- - linux24 for Linux 2.4 and above (default)
- - linux24e for Linux 2.4 with support for a working epoll (> 0.21)
- - linux26 for Linux 2.6 and above
- - linux2628 for Linux 2.6.28, 3.x, and above (enables splice and tproxy)
- ARCH为系统架构
本文的操作系统内核版本为3.10.0,TARGET指定为 linux2628。
查看系统内核版本架构:uname -r
2.3、安装:
make install PREFIX=/usr/local/haproxy
安装成功。
2.4、配置:
在/usr/local/haproxy中创建haproxy.cfg文件
vi /usr/local/haproxy/haproxy.cfg
global
log 127.0.0.1 local2
chroot /usr/local/haproxy
pidfile /var/run/haproxy.pid
maxconn 4000
user haproxy
group haproxy
daemon
defaults
mode http
log global
option httplog
option dontlognull
option http-server-close
option forwardfor except 127.0.0.0/8
option redispatch
retries 3
timeout connect 30s
timeout client 3m
timeout server 3m
maxconn 4000
# 界面统计
listen stats
mode http
bind 0.0.0.0:1080
stats enable
stats hide-version
stats uri /admin?stats
stats realm Haproxy\ Statistics
stats auth admin:admin
stats admin if TRUE
# 负载均衡前端配置
frontend http-in
bind *:80
mode http
option httpclose
option dontlognull
default_backend server
backend splash
balance roundrobin
server server1 127.0.0.1:5001 maxconn 1000
server server2 127.0.0.1:5002 maxconn 1000
server server3 127.0.0.1:5003 maxconn 1000
server server4 127.0.0.1:5004 maxconn 1000
3、启动
进入/usr/local/haproxy/sbin
cd /usr/local/haproxy/sbin
haproxy -f /usr/local/haproxy/haproxy.cfg
即可。
4、测试
访问http://localhost即可。
查看运行统计:http://localhost:1080/admin?stats
账号密码均为admin