ilukujht 发表于 2017-1-23 08:37:29

CentOS下zabbix监控mysql5.6版本主从

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

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

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

2. 具体步骤1. 编写监控mysql主从脚本vim /usr/local/zabbix/shell/check_mysql_slave.sh
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
#!/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}" = "Yes" -a "${slave_is}" = "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. 查看脚本执行效果
1
2
3
4
5
6
# chmod a+x check_mysql_slave.sh
# sh check_mysql_slave.sh Slave_Running                                                   
1
# sh check_mysql_slave.sh Slave_Seconds
0
#




vim /usr/local/zabbix/etc/zabbix_agentd.conf.d/check_mysql_slave_key
1
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
6. 主机链接模板7. 查看结果在Zabbi Server端查看:
1
2
3
4
# /usr/local/zabbix/bin/zabbix_get -s mysql-slave-IP -k "mysql.slave"
0
# /usr/local/zabbix/bin/zabbix_get -s mysql-slave-IP -k "mysql.slave"
1




在页面上查看:



页: [1]
查看完整版本: CentOS下zabbix监控mysql5.6版本主从