haproxy实现MySQL负载均衡的配置

一、利用haproxy做MySQL的负载均衡

1.架构

1台haproxy服务器、2台MySQL的服务器

haproxy能够正常使用、MySQL服务器也能够正常访问。

2.haproxy的配置文件

(1)我的配置文件[可选]

vim /etc/haproxy/haproxy.cfg

 

# this config needs haproxy-1.1.28 or haproxy-1.2.1

 

global

        log 127.0.0.1   local0

        log 127.0.0.1   local1 notice

        #log loghost    local0 info

        maxconn 4096

        #chroot /usr/share/haproxy

        uid 99

        gid 99

        #daemon

        debug

        #quiet

 

defaults

        log     global

        mode    http

        option  httplog

        option  dontlognull

        retries 3

        #redispatch

        maxconn 2000

        contimeout      5000

        clitimeout      50000

        srvtimeout      50000

listen mysql_3306 *:3306

        mode tcp

        option  tcpka

        balance roundrobin

        server mysql_01 192.168.8.116:3306 check inter 3000 rise 1 fall 3

        server mysql_02 192.168.8.115:3306 check inter 3000 rise 1 fall 3

(2)配置文件的修改【必选】

只需要在你原来的haproxy配置文件中添加如下内容即可:

listen mysql_3306 *:3306

        mode tcp

        option  tcpka

        balance roundrobin

        server mysql_01 192.168.8.116:3306 check inter 3000 rise 1 fall 3

        server mysql_02 192.168.8.115:3306 check inter 3000 rise 1 fall 3

 

说明:

           *:3306          haproxy服务器(本机)的IP与端口,即客户端可用 haproxy_IP:3306连接数据库

           mode tcp   以tcp的方式连接数据库。

           option tcpka       开启tcp检测服务器存活功能

           balance roundrobin              采用轮询的调度方式

           mysql_01             为名字,可随便写,不冲突就行

           192.168.8.116:3306   MySQL服务器的IP与端口号

           inter  3000                            每隔3000ms检测一个健康状态

      rise 1                                在离线的状态下,只要检测1次成功,就让其上线;

           fall  3                             如果检测3次都失败,将此server剔除

3.开启haproxy的日志功能

haproxy默认是不会开启日志的,所以要手动开启。而且要利用rsyslog去记录日志。

(1)修改系统日志配置文件

vim /etc/rsyslog.conf

2019101215445674.png

记住此处local0,haproxy.cnf文件中也要开启0的。详情见(3)修改haproxy配置文件

(2)修改系统日志配置参数

vim /etc/sysconfig/rsyslog

20191012154456133.png

-c  2  指定rsyslog运行的版本号

-r     开启接受外来日志消息的功能,其监控514UDP端口

-m  0 修改syslog的内部mark消息写入间隔时间(0为关闭,无间隔,随时都写)(2为每2分钟写入一次)

(3)修改haproxy的配置文件

vim /etc/haproxy/haproxy.cfg

20191012154456128.png

此处的local0和(1)中文件设置相对应。此处我设置的日志级别为info

(4)重启服务

service haproxy  restart

service rsyslog restart

(5)查看日志

20191012154456126.png

2019-10-12T14:42:49+08:00(时间) localhost(主机) haproxy[26584](程序): 192.168.8.112:53347 [12/Oct/2019:14:41:59.812] mysql_3306 mysql_3306/mysql_02 0/0/50016 740 cD 2/2/2/2/0 0/0

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值