美文网首页
【zabbix】zabbix3.4.7+percona监控MyS

【zabbix】zabbix3.4.7+percona监控MyS

作者: Catke | 来源:发表于2017-09-19 16:49 被阅读0次

    在zabbix自带的MySQL监控模板中只有14项监控项,这对于MySQL的性能监控来说是远远不够的,在网上看到一些文章推荐使用percona,通过了解,percona的模板含有190多项监控项,对MySQL的监控比较全面,当然也有一些文章推荐使用lepus,但由于公司原本已装有zabbix,和在一些数据库的交流群问过一些大神后,最终还是选择部署percona来监控MySQL,当然还有个原因就是开源,以后可根据自己的需求去修改。
    下面即开始整个部署的过程(其中不包括zabbix的部署和模板的加载使用,如果需要了解,请猛击这里:http://www.jianshu.com/p/2a03d5e9f014)。
    最后,本文也有可能出现一些错误的地方,欢迎拍砖。

    一、环境准备
    操作系统:

    CentOS 6.5(zabbix_server):192.168.189.133
    CentOS 6.5(zabbix_agent):192.168.189.131

    数据库:

    MySQL 5.6

    软件:

    zabbix3.4.7(zabbix_server端和zabbix_agent端都已经部署好)
    percona

    二、部署开始

    在部署之前还是要啰嗦一下:请确保MySQL数据库添加安装好了zabbix_agent并在zabbix_server添加了zabbix_agent,即在WEB监控界面中可以监控到MySQL,并且一下的配置都是在agent(被监控机)中进行
    1、安装percona库

    # rpm -ivh http://www.percona.com/downloads/percona-release/redhat/0.1-3/percona-release-0.1-3.noarch.rpm
    

    2、安装部署监控环境
    percona的监控插件是用php写的,需要通过php连接MySQL来获取相关的数据,所以需要安装相关的依赖,当然,如果你的zabbix是使用php安装的,那么可以跳过此步(我这里跳过...)

    # yum -y install php php-mysql
    

    3、安装percona的zabbix模板

    # yum -y install percona-zabbix-templates
    

    之后使用rpm安装模板

    # rpm -ql percona-zabbix-templates
    

    安装完之后会提示生成如下文件

    /var/lib/zabbix/percona
    /var/lib/zabbix/percona/scripts
    /var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh
    /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php
    /var/lib/zabbix/percona/templates
    /var/lib/zabbix/percona/templates/userparameter_percona_mysql.conf
    /var/lib/zabbix/percona/templates/zabbix_agent_template_percona_mysql_server_ht_2.0.9-sver1.1.6.xml
    

    可以看到组成部分又一个shell脚本,一个php脚本,一个zabbix的配置文件,和一个zabbix模板xml文件,其中主要用途如下:
    get_mysql_stats_wrapper.sh:用于监控的脚本
    ss_get_mysql_stats.php:存放连接数据库的信息
    userparameter_percona_mysql.conf:用户自定义配置项文件
    zabbix_agent_template_percona_mysql_server_ht_2.0.9-sver1.1.6.xml:zabbix的模板,这个是适用于zabbix2.x版本的,但由于这里使用的是zabbix3.x版本,所以后面会给出某网友改写的适用于3.x版本的下载地址

    4、复制用户自定义配置项文件到zabbix配置目录

    # cp /var/lib/zabbix/percona/templates/userparameter_percona_mysql.conf /usr/local/zabbix/etc/zabbix_agentd.d/
    

    5、登录mysql,添加授权监控用户

    mysql > grant select,process,replication client on *.* to 'zabbix'@'192.168.189.131' identified by '123456';
    mysql > flush privileges;
    

    6、修改php文件

    # vim /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php
    

    修改以下内容:

    $mysql_user = 'zabbix_percona';
    $mysql_pass = '123456';
    

    7、修改监控脚本中的host项:

    # vim /var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh
    

    修改以下内容:

    HOST=192.168.189.131
    

    8、测试监控脚本是否可用

    # /var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh gg
    

    如果监控可用,执行以上命令后会显示一个数字


    在server端测试:

    # /usr/local/zabbix/bin/zabbix_get -s 192.168.189.131 -k "MySQL max-connections"
    

    正常情况下能出现一个数字,并不会报错
    异常情况最后提及
    11、下载模板:
    如果使用的是zabbix2.x版本,那么直接导出xml文件到本地,然后执行以下步骤即可,如果使用的是3.x版本,那么可以在此网址下载到相应的模板文件:http://jaminzhang.github.io/soft-conf/Zabbix/zbx_percona_mysql_template.xml
    10、进入web界面导入模板:



    过几分钟即可出现监控结果

    11、可能遇到的问题:
    1、在server端使用

    # /usr/local/zabbix/bin/zabbix_get -s 192.168.189.131 -k "MySQL max-connections"
    

    命令测试的时候有可能会出现以下问题:



    这是由于server在agent上的/tmp/host-mysql_cacti_stats.txt文件没有权限




    只要将其删除之后重建即可

    重建方法:再次执行以上命令即可
    最后结果如下:



    2、在web界面添加了模板之后在“最新数据”模块查看发现监控的名称都为灰色(不能监控)
    例如:

    查看:配置->主机->找到对应的主机->点击监控项

    找到对应的监控项:

    根据后面红色叹号的提示来修复即可,一般是一些比如数据库权限没弄好或者问题1的问题导致,也有可能是配置配置文件的时候出现错误,排查一下即可

    暂时能找到的只有这些问题,如有再发现的问题再补充!

    参考:http://www.fblinux.com/?p=599

    关于各个监控项意义:http://www.jianshu.com/p/516955dd3099

    相关文章

      网友评论

          本文标题:【zabbix】zabbix3.4.7+percona监控MyS

          本文链接:https://www.haomeiwen.com/subject/vlgwsxtx.html