zabbix 使用percona監控mysql數據庫


Zabbix模板自帶一個MySQL監控模板,但監控的項目比較少,生產環境推薦使用percona的監控插件。

https://www.percona.com/doc/percona-monitoring-plugins/1.1/zabbix/index.html


1.安裝percona插件(agent端):

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


2.percona是php寫的,所以agent連接MySQL必須安裝php和php-mysql

yum install php php-mysql -y
yum install percona-zabbix-templates -y 
      
#編輯zabbix_agent配置文件,這步一般默認配置都完成了:
#vi /etc/zabbix/zabbix_agentd.conf
#include=/etc/zabbix_agentd.conf.d/

查看安裝的percona:

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.7.xml


3.複製模板到該目錄下:

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


4.讓php可以連接到mysql上:

#在mysql上授權一個賬號
grant select,process,replicationclient on *.* to jiankong@localhost identified by "jiankong";
flush priveleges;
#process這個權限可以執行show processlist和kill這個命令。
#relicationclient權限可以查看master和slave的狀態。

#編輯percona的配置文件
vi /var/lib/zabbix/percona/scripts/ss_get_mysql_stats.php
$mysql_user = 'root';
$mysql_pass = 'password';
$mysql_port = 3306;


5.測試並修改監控腳本:

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


6.修改監控腳本,默認監控MySQL主從的,測試是否能用,如果是從庫返回值應該爲1,如果出錯的話此處需要手工修改:

/var/lib/zabbix/percona/scripts/get_mysql_stats_wrapper.sh running-slave


7.導入zabbix模板:

cd /var/lib/zabbix/percona/templates/
sz zabbix_agent_template_percona_mysql_server_ht_2.0.9-sver1.1.7.xml


8.下載到本地,然後在zabbix上導入

Configuration -> Templates-> Import

注意:導入模板的時候會出錯:

Invalid XML tag "/zabbix_export/date": "YYYY-MM-DDThh:mm:ssZ" is expected

解決:下載個3.0的模板導入即可解決。

https://www.ttlsa.com/wp-content/uploads/2016/07/Percona-MySQL-Server-Template.zip


附件中我已上傳,可以直接下載導入。


在生產環境中如果監控到主出現故障,則需要切換到從,則需要清除從庫的信息。

stop slave;
reset slave all;  #清除從庫的連接信息和二進制文件名位置,show slave status不再有效。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章