zoukankan      html  css  js  c++  java
  • zabbix监控mysql

    一、系统环境

      操作系统: centos 7

      zabbix版本:3.2.5

    二、安装zabbix客户端

      # wget http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch .rpm

      # yum -y install zabbix-release-3.2-1.el7.noarch

      # yum -y install zabbix-agent

      配置文件

      /etc/zabbix/zabbix_agentd.conf

    三、单点Mysql监控

      3.1 模块 Template App MySQL

      Zabbix官方提供的监控mysql的模板Template App MySQL,可以看到相关的Items和key

      

       3.2 查看信息要通过mysql命令

       把该模板Template App MySQL Link到相关的主机上面,发现Item的Status是不可用的,因为key的值是通过Mysql用户查看"show global status"信息或者用mysqladmin命令查看status或extended-status的信息而取的值。

       3.3 shell脚本

      # vim /data/monitor/mysql_zabbix.sh

    !/bin/bash
    # 
    # 2017/04/27
    MYSQL_PWD='Your_password'
    ARGS=1
    if [ $# -ne "$ARGS" ];then
    echo "Please input onearguement:" 
    fi
    case $1 in
    Uptime)
    result=` mysqladmin  -uroot -p${MYSQL_PWD} status 2>/dev/null|awk '{print $2}'`
    echo $result
    ;;
    Questions)
    result=`mysqladmin  -uroot -p${MYSQL_PWD} status 2>/dev/null|awk '{print $6}'`
    echo $result
    ;;
    Com_update)
    result=`mysqladmin  -uroot -p${MYSQL_PWD} extended-status 2>/dev/null|grep -w "Com_update"|awk '{print $4}'`
    echo $result
    ;;
    Slow_queries)
    result=`mysqladmin  -uroot -p${MYSQL_PWD} extended-status 2>/dev/null|grep -w "Slow_queries"|awk '{print $4}'`
    echo $result
    ;;
    Com_select)
    result=`mysqladmin  -uroot -p${MYSQL_PWD} extended-status 2>/dev/null|grep -w "Com_select"|awk '{print $4}'`
    echo $result
    ;;
    Com_rollback)
    result=`mysqladmin  -uroot -p${MYSQL_PWD} extended-status 2>/dev/null|grep -w "Com_rollback"|awk '{print $4}'`
    echo $result
    ;;
    Com_insert)
    result=`mysqladmin  -uroot -p${MYSQL_PWD} extended-status 2>/dev/null|grep -w "Com_insert"|awk '{print $4}'`
    echo $result
    ;;
    Com_delete)
    result=`mysqladmin  -uroot -p${MYSQL_PWD} extended-status 2>/dev/null|grep -w "Com_delete"|awk '{print $4}'`
    echo $result
    ;;
    Com_commit)
    result=`mysqladmin  -uroot -p${MYSQL_PWD} extended-status 2>/dev/null|grep -w "Com_commit"|awk '{print $4}'`
    echo $result
    ;;
    Bytes_sent)
    result=`mysqladmin  -uroot -p${MYSQL_PWD} extended-status 2>/dev/null|grep -w "Bytes_sent"|awk '{print $4}'`
    echo $result
    ;;
    Bytes_received)
    result=`mysqladmin  -uroot -p${MYSQL_PWD} extended-status 2>/dev/null|grep -w "Bytes_received"|awk '{print $4}'`
    echo $result
    ;;
    Com_begin)
    result=`mysqladmin  -uroot -p${MYSQL_PWD} extended-status 2>/dev/null|grep -w "Com_begin"|awk '{print $4}'`
    echo $result
    ;;
    *)
    echo "Usage:$0(Uptime|Questions|Com_update|Slow_queries|Com_select|Com_rollback|Com_insert|Com_delete|Com_commit|Bytes_sent|Bytes_received|Com_begin)"
    ;;
    esac
    

      # chmod a+x /data/monitor/mysql_zabbix.sh

      3.4 修改zabbix的配置文件

      Centos7 客户端配置

      # vim /etc/zabbix/zabbix_agentd.d/userparameter_mysql.conf

      UserParameter=mysql.ping,mysqladmin -uroot -p111111  ping | grep -c alive

      UserParameter=mysql.version,mysql -V

      UserParameter=mysql.status[*],/data/monitor/mysql_zabbix.sh $1

      

      mysql.status[*]zabbix检测mysql状态时,检测命令的key值,* 代表所有的检查选项,具体的内容参考Template App MySQL模板中的项目:

       

      3.5 测试脚本

       zabbix server 服务器上:

      #自己服务器上的zabbix_get的位置

       

      测试成功

    四、添加zabbix 监控 

       4.1 创建mysql主机群和主机

       配置 --->  主机 群组--- > 创建主机群组(MySQL)

      配置 --->  主机 ---> 创建主机

      

      4.2 将主机添加到模板中去

       

      配置完成之后,图像其实就能出来了,如果图像一直没有数据,把默认的图形删除掉,再按照原来的配置重新添加一遍。

      

  • 相关阅读:
    Android NDK 开发中 adb logcat 命令的使用
    android 工程里缺少 R.java 文件原因和解决方法
    用Linux命令行实现删除和复制指定类型的文件
    重载操作符与转换
    复制控制
    管理类的指针成员
    复制构造函数
    static类成员(变量和函数)
    lock failed, MQ already started 问题处理
    Mac无法启动RocketMQ,日志显示,runserver.sh: line 91: /Library/Internet: No such file or directory
  • 原文地址:https://www.cnblogs.com/bigberg/p/7249212.html
Copyright © 2011-2022 走看看