免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2108 | 回复: 1
打印 上一主题 下一主题

haproxy部署学习 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-10-10 23:53 |只看该作者 |倒序浏览
测试部署结构如下:

192.168.1.1    192.168.1.11-192.168.1.14   192.168.1.2
-------+-----------+-----+-----+-----+--------+----
        |           |     |     |     |       _|_db
     +--+--+      +-+-+ +-+-+ +-+-+ +-+-+    (___)
     | LB1 |      | A | | B | | C | | D |    (___)
     +-----+      +---+ +---+ +---+ +---+    (___)
     haproxy        4 cheap web servers



1.下载haproxy:

cd /usr/local/
wget http://haproxy.1wt.eu/download/1.2/src/haproxy-1.2.18.tar.gz
tar zxvf haproxy-1.2.18.tar.gz
mv haproxy-1.2.18 haproxy
cd haproxy


2. 编译安装:

make TARGET=linux26 CPU=x86-64
我这里是64bit的redhat,如果你是32bit,使用命令:
make TARGET=linux26 CPU=i686
在当前目录下生成了haproxy


3. 复制并修改相应的实例文件:

mkdir /etc/haproxy
cp /usr/local/haproxy/examples/haproxy.cfg /etc/haproxy/
cp /usr/local/haproxy/examples/haproxy.init /etc/init.d/haproxy
chmod a+x /etc/init.d/haproxy

建立haproxy进程用户和用户组:
useradd -M -d /www/wwwroot -s /sbin/nologin www


vi /etc/haproxy/haproxy.cfg输入下面内容:

# this config needs haproxy-1.1.28 or haproxy-1.2.1
global
        log 127.0.0.1   local0 notice
        maxconn 51200
        ulimit-n 65536
        chroot /usr/share/haproxy
        user www
        group www
        daemon
        quiet
    nbproc 2

defaults
        log     global
        mode    http
        option httplog
        retries 3
        redispatch
        maxconn 51200
        contimeout      5000
        clitimeout      50000
        srvtimeout      50000

listen webfarm 192.168.1.1:80
       mode http
       balance roundrobin
       cookie SERVERID insert indirect
       option httpchk HEAD /index.html HTTP/1.0
       server webA 192.168.1.11:80 cookie A check inter 1000 rise 1 fall 3
       server webB 192.168.1.12:80 cookie B check inter 1000 rise 1 fall 3
       server webC 192.168.1.13:80 cookie C check inter 1000 rise 1 fall 3
       server webD 192.168.1.14:80 cookie D check inter 1000 rise 1 fall 3



总结:
haproxy(1.2.18版本)的负载均衡算法只有两种:roundrobin(轮巡)source(基于来源ip的)。
计划在version 1.3.10加入uri算法。
haproxy实现了Load Balancer(类似LVS的NAT方式)和对后端的realserver的健康检查,但如果要实现高可用性还需要和keeplived或heartbeat结合。
不过keeplived本身也具有对后端realserver的健康检查。
从上面可以看出,如果仅仅是使用它做负载均衡的话,我个人感觉他应该比nginx好一些,比LVS差一些。
做LB的比较关系:LVS > haproxy > nginx

不过要是haproxy加入vrrp framework,然后做成一个LB盒子应该不错。:)

论坛徽章:
0
2 [报告]
发表于 2008-10-11 10:13 |只看该作者

回复 #1 jackbillow 的帖子

和我测试的基本一样,我这里已经有一个在用呢?
感兴趣可以QQ交流一下。
HAproxy在一定的程度上确实是一个好东东,推荐大家也去尝试一下。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP