码迷,mamicode.com
首页 > 其他好文 > 详细

haproxy 基本应用

时间:2014-05-05 12:21:59      阅读:363      评论:0      收藏:0      [点我收藏+]

标签:linux



haproxy是一种免费、可靠的解决方案 。用于提供高可用、负载均衡和代理服务,尤其适用于高负载且需要持久连接或7层处理机制的web站点

下面从其基本配置,开启日志功能,统计页面输出相关配置,基于ACL实现动静分离 来演示其功能



haproxy基本配置

haproxy

172.16.15.17
vip (eth1)192.168.20.1
node1192.168.20.11
node2192.168.20.12


haproxy 配两个块网卡

后端两台服务器添加网关 指向192.168.20.1 添加主页


编辑配置文件

frontend websrv *:80
        default_backend webservers
backend webservers
        balance roundrobin
        server node1 192.168.20.11:80 check
        server node2 192.168.20.12:80 check




启动haproxy 访问172.16.15.17 轮巡访问到node1和node2的主页



开启日志


配置文件中全局端

log         127.0.0.1 local2

bubuko.com,布布扣

service rsyslog restart  重启日志服务
service haproxy restart


bubuko.com,布布扣


如果在frontend 下添加下面内容

 log     127.0.0.1 local3

再进行上面操作 则可为单独个frontend 代理记录日志


统计页面输出相关设置


1、stats enable

不能用在frontend

在backend webservers 下面添加 stats enable

登录 172.16.15.17/haproxy?stats

bubuko.com,布布扣

bubuko.com,布布扣



2、stats auth  进行认证

在stats enable下添加 stats auth tom:tom (假如用户名是tom 密码也是tom)

bubuko.com,布布扣



3、stats uri  

如果进一步进行安全设置 更换访问路径 可以用stats uri

在stats enable 下面添加 stats uri /jerry?stats 那么再访问172.16.15.17/haproxy?stats将是404 Not Found

bubuko.com,布布扣


4、更改自定义端口

listen  statistics

       bind *:4454

       stats enable

bubuko.com,布布扣





5、stats version 隐藏版本


listen  statistics
        bind *:4454
        stats enable
        stats uri /jerry?stats
        stats hide-version


bubuko.com,布布扣



6、stats admin  启用管理接口


bubuko.com,布布扣




基于ACL实现动静分离

访问静态页面和动态页面分别定向到特定的服务器

先在node1 和node2上都提供静态和动态页面访问文件


node1

bubuko.com,布布扣

node2

bubuko.com,布布扣



编辑配置文件

frontend  websrv
        bind *:80
    acl url_static       path_beg       -i /static /images /javascript /stylesheets
    acl url_static       path_end       -i .jpg .gif .png .css .js .html
    acl host_static      hdr_beg(host) -i img. video. down. ftp. imgs. image. videos.
    acl url_php         path_end        -i .php
    use_backend static          if url_static or host_static
   use_backend dynamic          if url_php
    default_backend             dynamic
ackend static
    balance     roundrobin
    server      node2 192.168.20.12:80  check
ackend dynamic
    balance     roundrobin
    server      node1 192.168.20.11:80  check



根据文件配置 虽然两个后端服务器都提供了动态和静态文件 但是访问静态时由node2来提供 访问动态页面时由node1提供

bubuko.com,布布扣

bubuko.com,布布扣










haproxy 基本应用,布布扣,bubuko.com

haproxy 基本应用

标签:linux

原文地址:http://baglinux.blog.51cto.com/8584908/1405755

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!