haproxy安装配置

HAProxy提供高可用性、负载均衡以及基于TCP和HTTP应用的代理,支持虚拟主机,它是免费、快速并且可靠的一种解决方案。HAProxy特别适用于那些负载特大的web站点, 这些站点通常又需要会话保持或七层处理。HAProxy运行在当前的硬件上,完全可以支持数以万计的并发连接。并且它的运行模式使得它可以很简单安全的整合进您当前的架构中, 同时可以保护你的web服务器不被暴露到网络上。

操作系统:

Ubuntu 16.04 LTS x64


安装haproxy之前,需要安装pcre, zlib等等

1:安装开发工具 

      apt-get install build-essential 

2:安装pcre 

      apt-get install libpcre3 libpcre3-dev

3:安装zlib 

      apt-get install zlib1g zlib1g-dev


安装haproxy

wget https://github.com/haproxy/haproxy/archive/v1.6.0.tar.gz

tar -xvf haproxy-1.6.0.tar.gz

cd haproxy-1.6.0

make TARGET=linux2628 USE_PCRE=1 USE_ZLIB=1 ARCH=x86_64

make PREFIX=/usr/local/haproxy install

注意:make的一些参数说明,可以去https://github.com/haproxy/haproxy上面了解


配置haproxy

haproxy的配置文件haproxy.cfg在解压后的examples目录里面有例子,直接拷贝一个修改即可

cd /usr/local/haproxy

mkdir conf

vim haproxy.cfg 输入如下内容

global
        maxconn         20000
        ulimit-n        80012
        log             127.0.0.1 local0
        nbproc          1
        daemon

defaults
        timeout server  5000
        timeout client  5000
        timeout connect 5000

#haproxy管理页面
frontend stats
        bind   *:9061
        mode   http
        stats refresh 5s
        stats  uri /stats

#http代理,这里演示代理tomcat
frontend txmall.com
        bind            *:8060
        mode            http
        log             global
        maxconn         8000

        default_backend tomcat

backend tomcat
        mode            http
        retries         2
        balance roundrobin
        server s1 192.168.1.200:8080
        server s2 192.168.1.201:8081

#tcp代理,这里演示代理mysql
listen mysql
        bind *:3306
        mode tcp
        server m1 192.168.1.100:3306
        server m2 192.168.1.101:3306

这里说一下tcp的代理,这里代理到mysql,只适用于读的场景

程序里面就可以直接连接haproxy的3306端口


最后,启动haproxy

/usr/local/haproxy/sbin/haproxy -f /usr/local/haproxy/conf/haproxy.cfg

启动之后,就可以访问  http://127.0.0.1:9061/stats 查看haproxy的管理页面

你可能感兴趣的:(haproxy)