mysql负载均衡 监控_使用HAProxy对MySQL进行负载均衡和状态监控

使用HAProxy对MySQL进行负载均衡和状态监控

转载请保留原文内容,并声明转载地址:http://www.doczj.com/doc/e23a311eff00bed5b9f31de0.html/blog/1284.html

乐搜(http://www.doczj.com/doc/e23a311eff00bed5b9f31de0.html)使用HAProxy已经很久了,但主要用在前端web请求的负载均衡和状态监控上,对于后端的Memcached以及MySQL却一直没有应用,最近对系统架构进行了小规模的整理,把MySQL 也收编到了HAProxy下,经过一段时间的使用,体验还是不错的。

详细的HAProxy的安装配置我就不说了,主要针对HAProxy如何监控检测后端MySQL服务器的状态说两句。

我们的环境由两台master和若干台slave数据库组成,在HA的配置中,可以设置灵活的策略和进行slave 的分组,如果系统更大了,将还会根据业务系统来拆分若干个master和slave组。

声明:以下内容应用和验证环境是基于FreeBSD 8.2 环境,MySQL在5.1以上版本,理论上Linux 的各个版本基本都能通过,如果有不能通过的情况,请别随意张口扔板砖,欢迎添加评论留言向我提问HA对MySQL状态监控实现的方式很多,不过大多逻辑都一样,使用自己编写的脚本程序(可以是shell、php、perl等你熟悉的语言)监控mysql的运行情况,然后通过HTTP的方式输出运行结果给HA,我使用的是shell程序来实现的监控,结合FreeBSD的inetd服务来实现监控端口的提供

6bfc557de1afb1172a3612ee1e22f986.png

1. 监控脚本编写

下面是我写的一段监控shell脚本,用于监控其中一台叫mdb1的master数据库replication运行:

1.#!/usr/local/bin/bash

2.MYSQL_HOST="mdb1"

3.MYSQL_PORT="3307"

4.MYSQL_USERNAME="michael"

5.MYSQL_PASSWORD="michael@http://www.doczj.com/doc/e23a311eff00bed5b9f31de0.html"

6.

7./usr/local/bin/mysql -h$MYSQL_HOST -P$MYSQL_PORT -u$MYSQL_USERNAME

-p$MYSQL_PASSWORD -e "show slave status\G;" > /tmp/check_mdb1_rep.txt

8.iostat=`grep "Slave_IO_Running" /tmp/check_mdb1_rep.txt |awk '{print

$2}'`

9.sqlstat=`grep "Slave_SQL_Running" /tmp/check_mdb1_rep.txt |awk '{print

$2}'`

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值