现在的位置: 首页 > 综合 > 正文

haproxy配置

2018年08月16日 ⁄ 综合 ⁄ 共 2443字 ⁄ 字号 评论关闭

1.安装

# wget http://haproxy.1wt.eu/download/1.3/src/haproxy-1.3.20.tar.gz 

# tar zcvf haproxy-1.3.20.tar.gz

# cd haproxy-1.3.20

# make TARGET=linux26 PREFIX=/usr/local/haproxy                                #将haproxy安装到/usr/local/haproxy

# make install PREFIX=/usr/local/haproxy

2.配置

安装完毕后,进入安装目录配置文件,默认情况下目录里是没有.cfg配置文件的,可以回到安装文件目录下将examples下的haproxy.cfg拷贝到usr/local/haproxy下。

# cd /usr/local/haproxy 

# vi haproxy.cfg

# vim haproxy.cfg

global      #全局配置

        log 127.0.0.1   local0   #日志输出配置,所有日志都记录在本机,通过local0输出

        #log 127.0.0.1  local1 notice 

        #log loghost    local0 info 

ulimit-n 82000       #设置每个进程的可用的最大文件描述符

        maxconn 4096      #最大连接数

        chroot /usr/local/haproxy      #改变当前工作目录 

        uid 99    #所属运行的用户uid

        gid 99    #所属运行的用户组 gid

        daemon  #以后台形式运行haproxy

        nbproc 2  #启动2个haproxy实例

        pidfile /usr/local/haproxy/logs/haproxy.pid    #pid文件位置

        #debug    #调试模式,输出启动信息到标准输出

        #quiet    #安静模式,启动时无输出

 

defaults  #默认设置

        log     127.0.0.1       local3  #日志文件的输出定向

        mode    http      #所处理的类别,默认采用http模式,可配置成tcp作4层消息转发

        option  httplog  #日志类别,采用httplog

        option  httpclose  #每次请求完毕后主动关闭http通道,haproxy不支持keep-alive,只能通过这种

        option  dontlognull 

        option  forwardfor  #如果后端服务器需要获得客户端真实ip,可通过这个参数从http Header中获得客户端ip

        option  redispatch 

        retries 2   #3次连接失败就认为后端服务器不可用,主要通过后面的 check 检查

        maxconn 2000   #最大连接数

        balance roundrobin  #负载均衡算法

        stats   uri     /haproxy-stats  #haproxy监控页面的访问地址

        contimeout      5000  #连接超时时间

        clitimeout      50000  #客户端连接超时时间

        srvtimeout      50000  #服务器端连接超时时间

 

listen  web_proxy 0.0.0.0:80              #运行的端口及主机名

        option  httpchk GET /ping.php  #用于健康检测的后端页面

 

        server  s1 192.168.0.101:80 weight 2 check  #后端的主机IP & 权衡

        #server s2 192.168.0.102:80 weight 2 check 

 

 

以其中一项为例:

 

server  s1 127.0.0.1:3121 weight 3 check

 

s1             是可自己定义的服务器别名

127.0.0.1:3121   服务器的IP地址以及端口号

weight 3        所能分配到请求的高低权衡,数字越大分配到的请求数就越高

check          接受 haproxy 的定时检查,以确定后端服务器的健康情况。

 

如需配置虚拟主机,相当简单,紧需修改 localhost 为你虚拟主机的的域名,加到haproxy配置中, 再为其分配后端服务器的参数即可。

 

例:

 

listen  www.x1.com 0.0.0.0:1080                    #运行的端口及主机名

   mode    http

   option  httpchk GET /index.htm              #用于健康检测的后端页面

   server  s1 127.0.0.1:3121 weight 3 check  #后端的主机 IP &权衡

   server  s2 127.0.0.1:3122 weight 3 check  #后端的主机 IP &权衡

 

listen  www.x2.com 0.0.0.0:1080                     #运行的端口及主机名

   mode    http

   option  httpchk GET /index.htm                     #用于健康检测的后端页面

   server  s1 127.0.0.1:3121 weight 3 check       #后端的主机 IP &权衡

   server  s2 127.0.0.1:3122 weight 3 check       #后端的主机 IP &权衡

 

 

保存配置后重新加载,即可生效,刷新管理页面也可看到新的虚拟主机。

抱歉!评论已关闭.