设为首页 收藏本站
查看: 1384|回复: 0

[经验分享] Zabbix应用三:Zabbix监控MySQL

[复制链接]

尚未签到

发表于 2017-12-31 17:46:24 | 显示全部楼层 |阅读模式
  利用Zabbix自带模版监控(Template App MySQL)MySQL服务
  一、添加模版:
  进入zabbix页面,找到'配置'->'主机'->'模版',点击'链接指示器'后面的'选择',如下图:
DSC0000.png

  在弹出的模版列表中选择'Template App MySQL',点击'添加'后,点击'更新'。
  现在监控MySQL的模版已经有了,但是还没没有数据,我们需要将从agentd端搜集到的数据渲染到模版中,才能显示。
  二、采集agentd端数据:
  在agentd端编写采集MySQL数据的脚本,内容如下:
  

#!/bin/bash  

  
MYSQL_HOST='127.0.0.1'
  
MYSQL_PORT='3306'
  
MYSQL_CONN="mysqladmin -P$MYSQL_PORT"
  

  
if [ $# -ne "1" ];then
  echo "arg error!"
  
fi
  

  
case $1 in
  Uptime)
  result=`${MYSQL_CONN} status|cut -f2 -d":"|cut -f1 -d"T"`
  echo $result
  ;;
  Com_update)
  result=`${MYSQL_CONN} extended-status |grep -w "Com_update"|cut -d"|" -f3`
  echo $result
  ;;
  Slow_queries)
  result=`${MYSQL_CONN} status |cut -f5 -d":"|cut -f1 -d"O"`
  echo $result
  ;;
  Com_select)
  result=`${MYSQL_CONN} extended-status |grep -w "Com_select"|cut -d"|" -f3`
  echo $result
  ;;
  
Com_rollback)
  result=`${MYSQL_CONN} extended-status |grep -w "Com_rollback"|cut -d"|" -f3`
  echo $result
  ;;
  Questions)
  result=`${MYSQL_CONN} status|cut -f4 -d":"|cut -f1 -d"S"`
  echo $result
  ;;
  Com_insert)
  result=`${MYSQL_CONN} extended-status |grep -w "Com_insert"|cut -d"|" -f3`
  echo $result
  ;;
  Com_delete)
  result=`${MYSQL_CONN} extended-status |grep -w "Com_delete"|cut -d"|" -f3`
  echo $result
  ;;
  Com_commit)
  result=`${MYSQL_CONN} extended-status |grep -w "Com_commit"|cut -d"|" -f3`
  echo $result
  ;;
  Bytes_sent)
  result=`${MYSQL_CONN} extended-status |grep -w "Bytes_sent" |cut -d"|" -f3`
  echo $result
  ;;
  Bytes_received)
  result=`${MYSQL_CONN} extended-status |grep -w "Bytes_received" |cut -d"|" -f3`
  echo $result
  ;;
  Com_begin)
  result=`${MYSQL_CONN} extended-status |grep -w "Com_begin"|cut -d"|" -f3`
  echo $result
  ;;
  

  *)
  echo "Usage:$0(Uptime|Com_update|Slow_queries|Com_select|Com_rollback|Questions|Com_insert|Com_delete|Com_commit|Bytes_sent|Bytes_received|Com_begin)"
  ;;
  
esac
  

  该好脚本中,没有配置连接MySQL的帐号信息,是因为如果在该脚本中设置的话,在使用myslqadmin收集mysql信息时,会提示:
  "Warning: Using a password on the command line interface can be insecure.1"
  这样会导致采集不到数据。
  为解决这个问题,我们需要将连接mysql的帐号信息写到mysql的配置文件中:
  vim /etc/my.cnf,添加如下一段:
  

[mysqladmin]  

  
user
=username  
password
="password"  

  然后重启mysql即可。
  三、在agentd端配置中添加UserParameter:
  万事俱备后,我们还需要在agentd中配置我们自定义的参数:
  vim zabbix_agentd.conf,添加如下信息:
  

UserParameter=mysql.status
  • ,/shell/zabbix_agent/mysql_status.sh $1  
    UserParameter
    =mysql.ping,mysqladmin -P 3306 ping | grep -c alive  

      第一行是通过执行我们上面自己编写的脚本来收集mysql数据信息,第二行是使用mysql的ping工具来检测mysql是否运行
      好,到这里就配置完毕了,重启agentd端zabbix服务即可。
      zabbix效果图:
      在zabbix主页面,找到'图形':
    DSC0001.png

      选择监控的主机名称,会发现多了MySQL的两项监控:
    DSC0002.png

      以上就是配置MySQL监控的全部

  • 运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
    2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
    3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
    4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
    5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
    6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
    7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
    8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

    所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-430319-1-1.html 上篇帖子: zabbix监控mysql,nginx 下篇帖子: zabbix学习系列之QQ消息报警
    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    扫码加入运维网微信交流群X

    扫码加入运维网微信交流群

    扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

    扫描微信二维码查看详情

    客服E-mail:kefu@iyunv.com 客服QQ:1061981298


    QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


    提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


    本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



    合作伙伴: 青云cloud

    快速回复 返回顶部 返回列表