zabbix實現mysql數據庫的監控(三)


上面一章“zabbix實現mysql數據庫的監控(二)”使用MPM來監控mysql,但是遇到安裝問題始終解決不了,這里改用percona-monitoring-plugins進行zabbxi上監控mysql數據庫了。

percona-monitoring-plugins的詳細介紹請見:https://www.percona.com/software/mysql-tools/percona-monitoring-plugins

一、環境准備

  • php開發環境搭建
  • 下載percona-monitoring-plugins文件

1、php環境搭建

由於percona-monitoring-plugins是用php寫的,所以需要搭建php的開發環境,具體步驟如下:

1)安裝apache:安裝apache時需要提前安裝apr,apr-util,pcre依賴包

wget http://archive.apache.org/dist/apr/apr-1.4.5.tar.gz 
tar zxvf apr-1.4.5.tar.gz
cd apr-1.4.5
./configure --prefix=/usr/local/apr
make && make install

wget http://archive.apache.org/dist/apr/apr-util-1.3.12.tar.gz 
tar zxvf apr-util-1.3.12.tar.gz
cd apr-util-1.3.12
./configure --prefix=/usr/local/apr-util -with-apr=/usr/local/apr/bin/apr-1-config
make && make install

wget http://jaist.dl.sourceforge.net/project/pcre/pcre/8.10/pcre-8.10.zip
unzip pcre-8.10.zip
cd pcre-8.10
./configure --prefix=/usr/local/pcre
make && make install

--Apache安裝
cd httpd-2.4.17
./configure --prefix=/usr/local/apache
make && make install

2)安裝php:安裝php前需要提前安裝libxml2依賴

tar zxvf libxml2-2.6.32.tar.gz 
cd libxml2-2.6.32
./configure --prefix=/usr/local/libxml2 
make && make install

cd php-5.6.16
./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql --with-apxs2=/usr/local/apache/bin/apxs --with-mysqli=/usr/local/mysql/bin/mysql_config  \
--with-mysql-sock=/tmp/mysql.sock --with-config-file-path=/usr/local/lib --with-libxml-dir=/usr/local/libxml2
make && make install

3)配置apache和php

#修改apache配置文件,添加apache支持php
vim /usr/local/apache/conf/httpd.conf
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps

#到php安裝包里找php.ini.dist,如果沒有,php.ini-development也可以,然后將它復制到 /usr/local/lib/php.ini
cp php.ini-development php.ini.dist
cp php.ini.dist /usr/local/lib/php.ini

2、下載percona-monitoring-plugins文件

官網下載地址:https://www.percona.com/downloads/percona-monitoring-plugins/

為了方便,我們這里下載rpm版本,安裝后目錄結構是這樣的:

-----/var/lib/zabbix/percona
--------------------------scripts
--------------------------------get_mysql_stats_wrapper.sh
--------------------------------ss_get_mysql_stats.php
--------------------------templates
--------------------------------userparameter_percona_mysql.conf                                   #key配置文件
--------------------------------zabbix_agent_template_percona_mysql_server_ht_2.0.9-sver1.1.5.xml  #模板文件,需要導入前端zabbix模板中

二、安裝配置percona-monitoring-plugins

1、安裝percona-monitoring-plugins

[root@node1 software]# yum install percona-zabbix-templates-1.1.5-1.noarch.rpm

默認安裝到/var/lib/zabbix/percona目錄下面。

2、將key配置文件拷貝到zabbix_agentd.conf.d目錄下

[root@node1 zabbix_agentd.conf.d]# cp /var/lib/zabbix/percona/templates/userparameter_percona_mysql.conf /usr/local/zabbix/etc/zabbix_agentd.conf.d
[root@node1 zabbix_agentd.conf.d]# ll
總用量 20
-rw-r--r--. 1 root root 18866 11月 21 02:34 userparameter_percona_mysql.conf

如果沒有該目錄,可以手工新建一個。

3、確保zabbix_agentd.conf中包括以下參數:

[root@node1 etc]# vim zabbix_agentd.conf
      Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/

4、重啟agentd服務

[root@node1 etc]# /etc/init.d/zabbix_agentd restart

5、修改ss_get_mysql_stats.php腳本

[root@node1 etc]# vim /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php
            $mysql_user = 'mpm';
            $mysql_pass = 'mpm';
            $mysql_port = 3306;

確保以上用戶名和密碼是可以連接到mysql數據庫。

6、測試percona-monitoring-plugins

/usr/local/php/bin/php -q /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php --host 127.0.0.1 --items gg

gg表示監控中的一個item,正常情況下一般都是返回個數字,可以到tmp目錄下看緩存文件,里面存了各種監控項目及值。

7、將xml模板導入到zabbix中

到這里,用zabbix監控mysql就完成了,下面截取幾張具體監控效果:

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM