linux mysql5.6 主从_CentOS下zabbix监控mysql5.6版本主从

上次Zabbix添加了监控MySQL性能,因此此次在其基础上添加主从监控,文章过程中不在介绍MySQL5.6版本相关细节处理,具体可以参考上次文章:

http://blog.csdn.net/ygqygq2/article/details/53264955

1. Zabbix添加自定义监控流程Zabbix agentd添加自定义key;

自定义key调用的是获取监控数据源脚本等;

添加Zabbix主机数据源模板,主机链接模板;

2. 具体步骤

1. 编写监控mysql主从脚本

vim /usr/local/zabbix/shell/check_mysql_slave.sh

#!/usr/bin/env bash

#Create by zijin 2014.09.28

##Need "grant REPLICATION CLIENT on *.* to zabbix_select@localhost identified by 'zabbix'"

#Mysql5.6

# mysql_config_editor set --login-path=local --host=localhost --user=zabbix_select -p

MYSQL_SOCK="/tmp/mysql.sock"

MYSQL_PWD="zabbix"

MYSQL="/usr/local/mysql/bin/mysql"

MYSQL_ADMIN="${MYSQL}admin"

ARGS=1

if [ $# -ne "$ARGS" ];then

echo "Please input one arguement:"

fi

case $1 in

Slave_Running)

slave_is=($(sudo ${MYSQL} --login-path=local -S $MYSQL_SOCK -e "show slave status\G"|egrep "\bSlave_.*_Running\b"|awk '{print $2}'))

if [ "${slave_is[0]}" = "Yes" -a "${slave_is[1]}" = "Yes" ];then

result="1"

else

result="0"

fi

echo $result

;;

Seconds_Behind)

result=$(sudo ${MYSQL} --login-path=local -S $MYSQL_SOCK -e "show slave status\G"|egrep "\bSeconds_Behind_Master\b"|awk '{print $2}')

echo $result

;;

*)

echo "Usage:$0(Slave_Running|Seconds_Behind)"

;;

esac

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

#!/usr/bin/env bash

#Create by zijin 2014.09.28

##Need "grant REPLICATION CLIENT on *.* to zabbix_select@localhost identified by 'zabbix'"

#Mysql5.6

# mysql_config_editor set --login-path=local --host=localhost --user=zabbix_select -p

MYSQL_SOCK="/tmp/mysql.sock"

MYSQL_PWD="zabbix"

MYSQL="/usr/local/mysql/bin/mysql"

MYSQL_ADMIN="${MYSQL}admin"

ARGS=1

if[$# -ne "$ARGS" ];then

echo"Please input one arguement:"

fi

case$1in

Slave_Running)

slave_is=($(sudo${MYSQL}--login-path=local-S$MYSQL_SOCK-e"show slave status\G"|egrep"\bSlave_.*_Running\b"|awk'{print $2}'))

if["${slave_is[0]}"="Yes"-a"${slave_is[1]}"="Yes"];then

result="1"

else

result="0"

fi

echo$result

;;

Seconds_Behind)

result=$(sudo${MYSQL}--login-path=local-S$MYSQL_SOCK-e"show slave status\G"|egrep"\bSeconds_Behind_Master\b"|awk'{print $2}')

echo$result

;;

*)

echo"Usage:$0(Slave_Running|Seconds_Behind)"

;;

esac

2. mysql赋权

grant REPLICATION CLIENT on *.* to zabbix_select@localhost identified by 'zabbix';

3. 查看脚本执行效果

[root@mysql64 shell]# chmod a+x check_mysql_slave.sh

[root@mysql64 shell]# sh check_mysql_slave.sh Slave_Running

1

[root@mysql64 shell]# sh check_mysql_slave.sh Slave_Seconds

0

[root@mysql64 shell]#

1

2

3

4

5

6

7

[root@mysql64shell]# chmod a+x check_mysql_slave.sh

[root@mysql64shell]# sh check_mysql_slave.sh Slave_Running

1

[root@mysql64shell]# sh check_mysql_slave.sh Slave_Seconds

0

[root@mysql64shell]#

4. Zabbix客户端添加自定义key

vim /usr/local/zabbix/etc/zabbix_agentd.conf.d/check_mysql_slave_key

UserParameter=mysql.slave[*],/usr/local/zabbix/shell/check_mysql_slave.sh $1 $2

1

2

UserParameter=mysql.slave[*],/usr/local/zabbix/shell/check_mysql_slave.sh$1$2

5. 添加Zabbix监控MySQL主从模板

从Zabbix页面导入模板Template App MySQL Slave.xml,如下链接为模板地址:

https://github.com/ygqygq2/zabbix/blob/master/%E6%A8%A1%E6%9D%BF/Template%20App%20MySQL%20Slave.xml

d3afe2a7f249564c2a6f92ea77e204e6.png

6. 主机链接模板

e19579e7b3fc7ce27005c669c2c508a0.png

7. 查看结果

在Zabbi Server端查看:

[root@zabbix-server ~]# /usr/local/zabbix/bin/zabbix_get -s mysql-slave-IP -k "mysql.slave[Seconds_Behind]"

0

[root@zabbix-server ~]# /usr/local/zabbix/bin/zabbix_get -s mysql-slave-IP -k "mysql.slave[Slave_Running]"

1

1

2

3

4

5

[root@zabbix-server~]# /usr/local/zabbix/bin/zabbix_get -s mysql-slave-IP -k "mysql.slave[Seconds_Behind]"

0

[root@zabbix-server~]# /usr/local/zabbix/bin/zabbix_get -s mysql-slave-IP -k "mysql.slave[Slave_Running]"

1

在页面上查看:

f58707215eb1d666932970ee8c07f858.png

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值