zabbix監控mysql


一、系統環境

  操作系統: centos 7

  zabbix版本:3.2.5

二、安裝zabbix客戶端

  # wget http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch .rpm

 

  # yum -y install zabbix-release-3.2-1.el7.noarch

  # yum -y install zabbix-agent

  配置文件

  /etc/zabbix/zabbix_agentd.conf

三、單點Mysql監控

  3.1 模塊 Template App MySQL

  Zabbix官方提供的監控mysql的模板Template App MySQL,可以看到相關的Items和key

  

 

   3.2 查看信息要通過mysql命令

   把該模板Template App MySQL Link到相關的主機上面,發現Item的Status是不可用的,因為key的值是通過Mysql用戶查看"show global status"信息或者用mysqladmin命令查看status或extended-status的信息而取的值。

   3.3 shell腳本

  # vim /data/monitor/mysql_zabbix.sh

!/bin/bash
# 
# 2017/04/27
MYSQL_PWD='Your_password'
ARGS=1
if [ $# -ne "$ARGS" ];then
echo "Please input onearguement:" 
fi
case $1 in
Uptime)
result=` mysqladmin  -uroot -p${MYSQL_PWD} status 2>/dev/null|awk '{print $2}'`
echo $result
;;
Questions)
result=`mysqladmin  -uroot -p${MYSQL_PWD} status 2>/dev/null|awk '{print $6}'`
echo $result
;;
Com_update)
result=`mysqladmin  -uroot -p${MYSQL_PWD} extended-status 2>/dev/null|grep -w "Com_update"|awk '{print $4}'`
echo $result
;;
Slow_queries)
result=`mysqladmin  -uroot -p${MYSQL_PWD} extended-status 2>/dev/null|grep -w "Slow_queries"|awk '{print $4}'`
echo $result
;;
Com_select)
result=`mysqladmin  -uroot -p${MYSQL_PWD} extended-status 2>/dev/null|grep -w "Com_select"|awk '{print $4}'`
echo $result
;;
Com_rollback)
result=`mysqladmin  -uroot -p${MYSQL_PWD} extended-status 2>/dev/null|grep -w "Com_rollback"|awk '{print $4}'`
echo $result
;;
Com_insert)
result=`mysqladmin  -uroot -p${MYSQL_PWD} extended-status 2>/dev/null|grep -w "Com_insert"|awk '{print $4}'`
echo $result
;;
Com_delete)
result=`mysqladmin  -uroot -p${MYSQL_PWD} extended-status 2>/dev/null|grep -w "Com_delete"|awk '{print $4}'`
echo $result
;;
Com_commit)
result=`mysqladmin  -uroot -p${MYSQL_PWD} extended-status 2>/dev/null|grep -w "Com_commit"|awk '{print $4}'`
echo $result
;;
Bytes_sent)
result=`mysqladmin  -uroot -p${MYSQL_PWD} extended-status 2>/dev/null|grep -w "Bytes_sent"|awk '{print $4}'`
echo $result
;;
Bytes_received)
result=`mysqladmin  -uroot -p${MYSQL_PWD} extended-status 2>/dev/null|grep -w "Bytes_received"|awk '{print $4}'`
echo $result
;;
Com_begin)
result=`mysqladmin  -uroot -p${MYSQL_PWD} extended-status 2>/dev/null|grep -w "Com_begin"|awk '{print $4}'`
echo $result
;;
*)
echo "Usage:$0(Uptime|Questions|Com_update|Slow_queries|Com_select|Com_rollback|Com_insert|Com_delete|Com_commit|Bytes_sent|Bytes_received|Com_begin)"
;;
esac

  # chmod a+x /data/monitor/mysql_zabbix.sh

 

  3.4 修改zabbix的配置文件

  Centos7 客戶端配置

  # vim /etc/zabbix/zabbix_agentd.d/userparameter_mysql.conf

 

  UserParameter=mysql.ping,mysqladmin -uroot -p111111  ping | grep -c alive

  UserParameter=mysql.version,mysql -V

  UserParameter=mysql.status[*],/data/monitor/mysql_zabbix.sh $1

  

  mysql.status[*]zabbix檢測mysql狀態時,檢測命令的key值,* 代表所有的檢查選項,具體的內容參考Template App MySQL模板中的項目:

   

 

  3.5 測試腳本

   zabbix server 服務器上:

  #自己服務器上的zabbix_get的位置

   

  測試成功

四、添加zabbix 監控 

   4.1 創建mysql主機群和主機

   配置 --->  主機 群組--- > 創建主機群組(MySQL)

  配置 --->  主機 ---> 創建主機

  

 

  4.2 將主機添加到模板中去

   

 

  配置完成之后,圖像其實就能出來了,如果圖像一直沒有數據,把默認的圖形刪除掉,再按照原來的配置重新添加一遍。

  

 


免責聲明!

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



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