zoukankan      html  css  js  c++  java
  • Mysql监控

    Mysql监控 
      zabbix自带了一个监控mysql的模板,但是真正监控mysql的并不是zabbix自带的模板。而是percona公司的一个监控mysql模板 
     percona官网: www.percona.com

    Percona组成介绍

    1、php脚本    用来数据采集
    2、shell脚本  用来调用采集信息
    3、zabbix配置文件
    4、zabbix模板文件
    

    安装文档:https://www.percona.com/doc/percona-monitoring-plugins/LATEST/zabbix/index.html 
      percona 利用的是php来获取mysql的相关信息,所以如果我们想使用percona插件监控mysql就需要在agent端安装php。在安装文档上有写哦~ 
    1.png-135.5kB

    安装步骤: 查看上面的链接也可以进行安装 
    我们安装在zabbix-server上,因为上面有一个MySQL

     
    1. [root@linux-node1 web]# yum install http://www.percona.com/downloads/percona-release/redhat/0.1-3/percona-release-0.1-3.noarch.rpm
    2. [root@linux-node1 web]# yum install percona-zabbix-templates php php-mysql -y
    3. #percona插件是通过php去获取mysql的参数,所以我们要安装php和php-mysql
    4. 我们可以查看它都安装了那些软件
    5. [root@linux-node1 web]# rpm -ql percona-zabbix-templates
    6. /var/lib/zabbix/percona
    7. /var/lib/zabbix/percona/scripts
    8. /var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh #shell脚本
    9. /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php #php获取mysql信息
    10. /var/lib/zabbix/percona/templates
    11. /var/lib/zabbix/percona/templates/userparameter_percona_mysql.conf #zabbix配置文件
    12. /var/lib/zabbix/percona/templates/zabbix_agent_template_percona_mysql_server_ht_2.0.9-sver1.1.6.xml #zabbix模板文件
    13. percona组成我们已经说过了,此处只是略微介绍。

    我们将zabbix模板下载下来

     
    1. [root@linux-node1 web]# sz /var/lib/zabbix/percona/templates/zabbix_agent_template_percona_mysql_server_ht_2.0.9-sver1.1.6.xml

      然后我们需要将模板通过web界面导入到zabbix中 
    2.png-310.6kB
    2.png-90kB
    提示:如果出现错误,可能是zabbix 3.0版本的问题。我们这里提供了一个生产的模板 
    下载链接:http://pan.baidu.com/s/1pLjKvxh 密码:75g0 
    然后从新上传即可

    复制配置文件

     
    1. [root@linux-node1 web]# cp /var/lib/zabbix/percona/templates/userparameter_percona_mysql.conf /etc/zabbix/zabbix_agentd.d/
    2. [root@linux-node1 web]# ls /etc/zabbix/zabbix_agentd.d/
    3. #安装完软件包后会在/var/lib/zabbix/percona/templates/目录下产生一个配置文件,我们将它拷贝,因为在前面的博文中,我们已经修改过zabbix的配置文件[Include=/etc/abbix/zabbix_agentd.d/
    4. ] 所以将配置文件放在这个目录下,zabbix就会自己在这个目录下查找相关信息
    5. [root@linux-node1 web]# systemctl restart zabbix-agent.service
    6. 重启一下!

    下面就应该配置与MySQL的连接 
    /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php.cnf创建一个文件

     
    1. [root@linux-node1 ~]# cat /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php.cnf
    2. <?php
    3. $mysql_user = 'root';
    4. $mysql_pass = '';
    5. #用户名密码可以自己创建,有密码写密码,没密码为空就好了

    提示: 正常这里的用户我们应该创建一个专门用来监控的,由于我这里是测试环境。就不浪费时间了

     

    测试

    查看是否可以获取到值,随便找一个测试

     
    1. [root@linux-node1 ~]# cat /var/lib/zabbix/percona/templates/userparameter_percona_mysql.conf
    2. 选择一个肯定有值的key
    3. [root@linux-node1 ~]# cat /var/lib/zabbix/percona/templates/userparameter_percona_mysql.conf|grep gm
    4. UserParameter=MySQL.read-views,/var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh gm
    5. 测试结果如下:
    6. [root@linux-node1 ~]# cd /var/lib/zabbix/percona/scripts/
    7. [root@linux-node1 scripts]# ./get_mysql_stats_wrapper.sh gm
    8. 1
    9. [root@linux-node1 scripts]# ./get_mysql_stats_wrapper.sh gw
    10. 9736342
    11. 可以获取到值,说明没有问题

    温馨提示: shell脚本中数据库的路径是localhost,如果我们没有授权localhost会获取不到值

     
    1. [root@linux-node1 scripts]# cat get_mysql_stats_wrapper.sh
    2. HOST=localhost
    3. RES=`HOME=~zabbix mysql -e 'SHOW SLAVE STATUSG' | egrep '(Slave_IO_Running|Slave_SQL_Running):' | awk -F: '{print $2}' | tr ' ' ','`
    4. #mysql是通过命令来获取的,如果环境变量不一样 也可能造成影响

    Zabbix_Web界面配置 
      模板已经上传到zabbix中,这时候我们就需要进行设置了 
    1.png-155.4kB
    2.png-106.9kB
    提示: 我们还需要授权/tmp下的一个文件,因为默认情况下 zabbix在文件中获取的值 
    3.png-60.7kB
    修改完就可以获取值了,所以我们还需要测试 
    4.png-131.9kB

    结果如下图 
    5.png-202.5kB
    思想: 
      如果出现错误我们需要先查看shell的脚本,因为shell是去调用php。 错误的因素有很多,最简单的方法就是用shell 后面加上key 看看是否可以有值。 
      其中报错最多的地方就是php和mysql连接的问题,还有我们mysql授权的一些问题

  • 相关阅读:
    (转载)SAPI 包含sphelper.h编译错误解决方案
    C++11标准的智能指针、野指针、内存泄露的理解(日后还会补充,先浅谈自己的理解)
    504. Base 7(LeetCode)
    242. Valid Anagram(LeetCode)
    169. Majority Element(LeetCode)
    100. Same Tree(LeetCode)
    171. Excel Sheet Column Number(LeetCode)
    168. Excel Sheet Column Title(LeetCode)
    122.Best Time to Buy and Sell Stock II(LeetCode)
    404. Sum of Left Leaves(LeetCode)
  • 原文地址:https://www.cnblogs.com/chenshengqun/p/7985687.html
Copyright © 2011-2022 走看看