zabbix利用自帶模板-監控mysql性能

環境:php

zabbix3.4.4 mysql

mariadb 5.5.56web

 

要求:  利用zabbix 自帶的模板 監控mariadb 上的 併發鏈接數,慢查詢數量,增刪改查、請求流量帶寬,mysql響應流量帶寬等sql

(1)建立監控用戶

grant all on *.* to zabbix@'localhost' identified by 'zabbix';

 

(2)編寫check_mysql.sh腳本

用於獲取mariadb 上的性能指標數據, 腳本以下數據庫

vim /usr/local/bin/chk_mysql.sh
#!/bin/bash #!/bin/bash #----------------------------------------------------------------------------------- #FileName: check_mysql.sh #Revision: 1.0 #Date: 2019/08/23 #Author: fxkj #Email: root@fxkjnj.com #website: www.fxkjnj.com #Description: #License: GPL #--------------------------------------------------------------------------------- # 用戶名 Mysql_user='zabbix' # 密碼 Mysql_password='zabbix' # 主機地址/IP Mysql_host='127.0.0.1' # 端口 Mysql_port='3306' #數據庫鏈接 Mysql_comm="/usr/bin/mysqladmin -u$Mysql_user -p$Mysql_password -h$Mysql_host -P$Mysql_port" #參數是否正確 if [ $# -ne "1" ];then echo "arg error!" fi #獲取數據 case $1 in Com_begin) $Mysql_comm extended-status | grep -w "Com_begin" | awk -F"|" '{print $3}';; Bytes_received) $Mysql_comm extended-status | grep -w "Bytes_received" | awk -F"|" '{print $3}';; Bytes_sent) $Mysql_comm extended-status | grep -w "Bytes_sent" | awk -F"|" '{print $3}';; Com_commit) $Mysql_comm extended-status | grep -w "Com_commit" | awk -F"|" '{print $3}';; Com_delete) $Mysql_comm extended-status | grep -w "Com_delete" | awk -F"|" '{print $3}';; Com_insert) $Mysql_comm extended-status | grep -w "Com_insert" | awk -F"|" '{print $3}';; Questions) $Mysql_comm extended-status | grep -w "Questions" | awk -F"|" '{print $3}';; Com_rollback) $Mysql_comm extended-status | grep -w "Com_rollback" | awk -F"|" '{print $3}';; Slow_queries) $Mysql_comm extended-status | grep -w "Slow_queries" | awk -F"|" '{print $3}';; Com_select) $Mysql_comm extended-status | grep -w "Com_select" | awk -F"|" '{print $3}';; Com_update) $Mysql_comm extended-status | grep -w "Com_update" | awk -F"|" '{print $3}';; Uptime) $Mysql_comm extended-status | grep -w "Uptime" | awk -F"|" '{print $3}';; esac

 

chmod +x  /usr/local/bin/chk_mysql.sh    #添加可執行權限

 

(3)修改agent配置文件

備註: 建立自定義key ,須要修改被監控端agent 的配置文件  vim

vim /usr/local/zabbix_agentd.conf

把 UnsafeUserParameters=0   修改成 UnsafeUserParameters=1   (是否容許自定義KEY)bash

把 #Include=/usr/local/etc/zabbix_agentd.conf.d/*.conf   修改成    Include=/usr/local/etc/zabbix_agentd.conf.d/*.conf   (加載配置文件路徑)併發

(4)建立自定義KEY

vim /usr/local/etc/zabbix_agentd.conf.d/mysql_status.conf
#獲取mairadb性能指標,對應上面的check_mysql.sh腳本
UserParameter=mysql.status[*],/usr/local/bin/chk_mysql.sh $1
#獲取mariadb版本
UserParameter=mysql.version,mysql -V
#獲取mariadb運行狀態 UserParameter
=mysql.ping,mysqladmin -uzabbix -pzabbix -P3306 -h127.0.0.1 ping | grep -c alive

備註:請注意修改你的數據庫信息,以及zabbix路徑信息ide

(5)重啓zabbix_agentd

killall zabbix_agentd zabbix_agentd

(6)測試自定義key是否生效

[root@mysql ~]# zabbix_get -s 127.0.0.1 -k mysql.status[Bytes_received] (任選一個 Template APP Mysql 中key 值測試 )
209

(7)給被監控主機 關聯 Mysql 模板

模板是zabbix系統提供的,進入zabbix web後臺,configuration-->hosts-->點擊你的主機name-->選擇template選項卡,選擇模板「Template App MySQL」,最後點擊update便可性能

(8) 查看數據

若是配置沒有異常,那麼能夠在graph中查看到2張監控圖,分別爲請求流量帶寬、響應流量帶寬、ops,點擊monitoring-->graphs-->選擇你的主機

分別選擇Graph「MySQL bandwidth」、「MySQL operations」,監控圖分別以下(圖片雙擊放大查看)

 

 

相關文章
相關標籤/搜索