环境:Ubuntu 12.04.5 LTS \n \l
我写的不详细,安装的时候请参考下面第一个链接!!!!!我也是按照他的步骤安装的!
http://sofar.blog.51cto.com/353572/1291013/ HAProxy详细配置过程
(1.4版本的软件包,有系统优化和打印服务的日志功能,还有启动脚本)
其他的参考:
http://johnsz.blog.51cto.com/525379/715922/ (Haproxy安装及配置)
haproxy-1.5.14.tar.gz //我安装的是这个版本(新的哦)
下载地址:http://fossies.org/linux/misc/haproxy-1.5.14.tar.gz/
去百度搜索也行!
大概的原理介绍和需求:
本文只是把haproxy用作代理,其他功能没用到。
haproxy可以做网站访问的代理,他监听一个端口 比如80(可以自己设置,一般为为咱们默认访问的80端口)
在配置文件中的listen这一行设置:
listen web_poll 1.1.1.1:80
这样你对网站的请求,比如你访问: http://www.abc.com:80 这个地址
你完全可以把http://www.abc.com这个域名指向代理服务器(haproxy所在服务器) 0.0.0.0,这样你表面上请求的是代理服务器,但实际上代理服务(haproxy)会把你的请求转发给真实服务器1.1.1.1上的apache的80端口,这样外面的人以为haproxy是真实的服务器,也就隐藏了真实的服务器,比较安全。
在配置文件server这一行配置:
server web1 2.2.2.2:80 cookie 1 check inter 2000 rise 3 fall 3
下面是一个具体的配置实例:
$ cat /etc/haproxy/haproxy.cfg
global
log 127.0.0.1 local3
maxconn 80000
chroot /usr/local/haproxy
uid 1004
gid 1004
daemon
quiet
nbproc 6
pidfile /var/run/haproxy.pid
defaults
log global
mode http
maxconn 80000
option httplog
option httpclose
option forwardfor
option dontlognull
option redispatch
retries 3
balance roundrobin
contimeout 30000
clitimeout 30000
srvtimeout 30000
listen web_poll 1.1.1.1:80
mode http
option httplog
option dontlognull
option logasap
option forwardfor
option httpclose
# option httpchk GET /index.html
server web1 2.2.2.2:80 cookie 1 check inter 2000 rise 3 fall 3
#server web2 192.168.0.64:80 cookie 1 check inter 2000 rise 3 fall 3
listen status 0.0.0.0:8080
stats enable
stats uri /stats
stats auth haha:111111
stats realm (Haproxy\ statistic)
注:1.1.1.1:80代表haproxy地址及端口,2.2.2.2:80代表真实的网站服务器的地址及端口。
根据你的实际情况,把这2个地址改成你自己相对应的!