Haproxy下载地址:http://pan.baidu.com/share/link?shareid=1787182295&uk=1829018343

也可用wget http://haproxy.1wt.eu/download/1.4/src/haproxy-1.4.24.tar.gz

复制代码
[root@A local]# yum install -y gcc
[root@A local]# tar zxvf haproxy-1.4.24.tar.gz
[root@A local]# cd haproxy-1.4.24
[root@A haproxy-1.4.24]# make install
[root@A haproxy-1.4.24]# mkdir -p /usr/local/haproxy/etc
[root@A haproxy-1.4.24]# mkdir -p /usr/local/haproxy/sbin
[root@A haproxy-1.4.24]# cp examples/haproxy.cfg /usr/local/haproxy/etc
[root@A haproxy-1.4.24]# ln -s /usr/local/sbin/haproxy /usr/local/haproxy/sbin/haproxy
[root@A haproxy-1.4.24]# vi /usr/local/haproxy/etc/haproxy.cfg
复制代码
复制代码
global
        log 127.0.0.1 local0
        maxconn 4096                     #最大连接数
        chroot /usr/local/haproxy
        uid 99                           #所属运行的用户UID
        gid 99                           #所属运行用用户组
        daemon                           #以后台形式运行HAProxy
        nbproc 1                         #启动1个实例,可以启多个来提高效率
      
defaults
        log global
        mode http
        option httpclose       #每次请求完毕后主动关闭http通道
        option redispatch      #当serverId对应的服务器挂掉后,强制定向到其他健康的服务器
        option forwardfor      #
        option abortonclose    #当服务器负载很高的时候,自动结束掉当前队列处理比较久的链接
        option dontlognull     #保证HAProxy不记录上级负载均衡发送过来的用于检测状态没有数据的心跳包 
        retries 2
        maxconn 2000
        balance source         #如果想让HAProxy按照客户端的IP地址进行负载均衡策略,即同一IP地址的所有请求都发送到同一服务器时,需要配置此选项
        contimeout      5000
        clitimeout      50000
        srvtimeout      50000

listen web_proxy 10.10.3.163:80
        mode http
        server web1 10.10.3.13:8817 cookie app1inst1 check inter 2000 rise 2 fall 5
        server web2 10.10.3.151:8400 cookie app1inst2 check inter 2000 rise 2 fall 5

listen scoket_proxy 10.10.3.163:12315
        mode tcp
        server scoket1 10.10.3.158:12315 check inter 2000 rise 2 fall 5
        server scoket2 10.10.3.10:12315 check inter 2000 rise 2 fall 5

listen admin_stats
        bind *:1080               #监听端口
        mode http                       #http的7层模式
        option httplog                  #采用http日志格式
        log 127.0.0.1 local0 err
        maxconn 10
        stats refresh 30s               #统计页面自动刷新时间
        stats uri /stats                #统计页面url
        stats realm XingCloud\ Haproxy  #统计页面密码框上提示文本
        stats auth admin:admin          #统计页面用户名和密码设置
        stats hide-version              #隐藏统计页面上HAProxy的版本信息
复制代码

启动Haproxy

haproxy -f /usr/local/haproxy/etc/haproxy.cfg

停止Haproxy

killall haproxy

 访问

http://10.10.3.163:1080/stats

 配置直接重定向URL

 

现在HAProxy的算法也非常多,并不比专业的F5/LVS算法少,常用的算法有如下8种:
balance roundrobin,表示简单的轮询,建议关注;
balance static-rr,表示根据权重,建议关注;
balance leastconn,表示最少连接者先处理,建议关注;
balance source,表示根据请求源IP,跟Nginx的ip_hash算法相似,建议关注;
balance uri,表示根据请求的URI;
balance url_param,表示根据请求的URl参数;
balance hdr(name),表示根据HTTP请求头来锁定每一次HTTP请求;
balance rdp-cookie(name),表示根据据cookie(name)来锁定并哈希每一次TCP请求。

https://www.cnblogs.com/kgdxpr/p/3272861.html