• haproxy实现mysql从库负载均衡


    本文主要讲述通过haproxy实现mysql从库间的负载均衡,至于mysql主从的搭建,本文不再重述,可以参考我之前写的博客。

    1.首先下载haproxy包

    wget http://haproxy.1wt.eu/download/1.4/src/haproxy-1.4.13.tar.gz

    2.安装

    tar zxvf haproxy-1.4.13.tar.gz
    
    cd haproxy-1.4.13/
    
    make TARGET=linux26 PREFIX=/usr/local/haproxy  ##我的系统内核为2.6,所以target=linux26
    
    make install PREFIX=/usr/local/haproxy

    3.进行配置

    mkdir /etc/haproxy
    
    touch /etc/haproxy/haproxy.cfg
    
    vi /etc/haproxy/haproxy.cfg
     
    ##写入以下内容: 
    global
            daemon
            nbproc 1
            pidfile /var/run/haproxy.pid
    
    
    defaults
            mode tcp               #默认的模式mode { tcp|http|health },tcp是4层,http是7层,health只会返回OK
            retries 2               #两次连接失败就认为是服务器不可用,也可以通过后面设置
            option redispatch       #当serverId对应的服务器挂掉后,强制定向到其他健康的服务器
            option abortonclose     #当服务器负载很高的时候,自动结束掉当前队列处理比较久的链接
            maxconn 4096            #默认的最大连接数
            timeout connect 5000ms  #连接超时
            timeout client 30000ms  #客户端超时
            timeout server 30000ms  #服务器超时
            #timeout check 2000      #=心跳检测超时
            log 127.0.0.1 local0 err #[err warning info debug]
    
    
    ########test1配置#################
    listen test1
            bind 0.0.0.0:3306
            mode tcp
            #maxconn 4086
            #log 127.0.0.1 local0 debug
            server s1 192.168.103.59:3306
            server s2 192.168.103.52:3306
    ########frontend配置##############
     
    在test1配置下添加server s1 192.168.103.59:3306和server s2 192.168.103.52:3306,即mysql从库的ip和端口号,
    多个从库在下面继续添加。
     

    4.启动haproxy

    解压目录下执行haproxy -f /etc/haproxy/haproxy.cfg
     
    先将占用3306端口的程序停掉
    haproxy -f /etc/haproxy/haproxy.cfg
    (若提示错误:bash: haproxy: 未找到命令
    执行 1 cd /usr/local/haproxy/sbin
             2  ./haproxy -f /etc/haproxy/haproxy.cfg     
      
    )
     

    5.测试

    使用navicat连接安装haproxy的机器
    第一次连的52
     
    关闭连接,重新连103.55
     
    可见实现了mysql的负载均衡。
     

    6.其他注意事项

    查看haproxy的进程
    ps -ef | grep haproxy
     
    kill -9 28924
    干掉haproxy运行的进程
     
    再连55失败
     
    查看所有进程
    ps -ef
     
    修改配置文件:
    重新启动haproxy:
     
     
  • 相关阅读:
    从零开始的Python学习Episode 15——正则表达式
    从零开始的Python学习Episode 14——日志操作
    从零开始的Python学习Episode 13——常用模块
    从零开始的Python学习Episode 12——迭代器&生成器
    从零开始的Python学习Episode 11——装饰器
    从零开始的Python学习Episode 10——函数
    从零开始的Python学习Episode 9——集合
    从零开始的Python学习Episode 8——深浅拷贝
    Linux基础学习
    从零开始的Python学习Episode 7——文件基本操作
  • 原文地址:https://www.cnblogs.com/suixinpeng/p/5575729.html
Copyright © 2020-2023  润新知