操做系統: centos 7python
zabbix版本:3.2.5mysql
# wget http://repo.zabbix.com/zabbix/3.2/rhel/7/x86_64/zabbix-release-3.2-1.el7.noarch .rpmsql
# yum -y install zabbix-release-3.2-1.el7.noarchshell
# yum -y install zabbix-agentvim
配置文件centos
/etc/zabbix/zabbix_agentd.confbash
Zabbix官方提供的監控mysql的模板Template App MySQL,能夠看到相關的Items和key服務器
把該模板Template App MySQL Link到相關的主機上面,發現Item的Status是不可用的,由於key的值是經過Mysql用戶查看"show global status"信息或者用mysqladmin命令查看status或extended-status的信息而取的值。測試
# vim /data/monitor/mysql_zabbix.shspa
!/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
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模板中的項目:
在zabbix server 服務器上:
#本身服務器上的zabbix_get的位置
測試成功
配置 ---> 主機 羣組--- > 建立主機羣組(MySQL)
配置 ---> 主機 ---> 建立主機
配置完成以後,圖像其實就能出來了,若是圖像一直沒有數據,把默認的圖形刪除掉,再按照原來的配置從新添加一遍。