haproxy实现mysql slave负载均衡

简单画一个图:

一、服务器规划
192.168.116.132 (master)  -->写操作
192.168.116.129 (slave1)  -->读操作
192.168.116.131 (slave2)  -->读操作
192.168.116.130 (haproxy) -->代理
mysql主从复制配置略过。
 
二、安装配置haproxy
安装haproxy
tar zxf haproxy-1.4.21.tar.gz
cd haproxy-1.4.21
make TARGET=linux26 PREFIX=/app/haproxy 
make install PREFIX=/app/haproxy
mkdir /app/haproxy/{conf,log}

配置haproxy

vi /app/haproxy/conf/haproxy.cfg #添加如下内容
global
        log 127.0.0.1   local3 info    #日志相关
        log 127.0.0.1   local3 notice
        maxconn 10240
        chroot /app/haproxy
        uid root
        gid root
        daemon
        pidfile /app/haproxy/log/haproxy.pid

defaults
        #log     global
        mode    http
        #option httplog
        #option  dontlognull
        option  redispatch
        retries 3
        option redispatch
        maxconn         4096
        contimeout      50000
        clitimeout      50000
        srvtimeout      50000

listen  mysql-proxy
        bind 0.0.0.0:33307    #代理端口
        mode tcp              #模式 TCP
        option mysql-check user haproxy   #mysql健康检查,haproxy用户无任何权限,并且无密码
        balance roundrobin            #调度算法
        server mysql1-129 192.168.116.129:3306 weight 1 check  inter 1s rise 2 fall 2 #健康检查加上check
        server mysql2-131 192.168.116.131:3306 weight 1 check  inter 1s rise 2 fall 2
listen stats     #监控
           mode http
           bind 0.0.0.0:19999
           stats enable
           stats uri /dbs
           stats realm Global\ statistics
           stats auth admin:admin

启动haproxy

/app/haproxy/sbin/haproxy -f /app/haproxy/conf/haproxy.cfg
打开浏览器查看:
用户名及密码:admin/admin
 

posted on 2015-10-16 18:51  K‘e0llm  阅读(748)  评论(2编辑  收藏  举报

导航