zabbix的搭建及操做(3)監控 MySQL 及 HTTP 狀態監控

書接上回 —— 詳情點擊

  Server端以配置好 mariadb(MySQL) 及 http 服務html

Zabbix實現監控 mysql 數據庫

  配置開始java

  server服務器端配置

vim /usr/local/zabbix/etc/zabbix_agentd.conf
結尾插入 鍵入G快進至結尾
UnsafeUserParameters=1  #容許全部字符的參數傳遞給用戶定義的參數
UserParameter=mysql.version,mysql -V  #定義鍵值 mysql.version 以及鍵值 mysql -V
UserParameter=mysql.status[*],/usr/local/zabbix/etc/agent_mysql.sh $1  #定義鍵值 mysql.status[*]
UserParameter=mysql.ping,mysqladmin -uroot -p123456 -P3306 -h192.168.10.10 ping | grep -c alive  #定義鍵值 mysql.ping
#指定 agent_mysql.sh腳本,使用此腳本檢查mysql的運行狀態,使用mysqladmin指定agent端的數據庫鏈接用戶密碼IP地址,保證其鏈接

  編輯 agent_mysql.sh腳本

vim /usr/local/zabbix/etc/agent_mysql.sh
#!/bin/bash
MYSQL_USER='root'       #用戶名
MYSQL_PWD='123456'      #密碼
MYSQL_HOST='192.168.10.10'      #主機IP地址
MYSQL_PORT='3306'       #數據庫端口
MYSQL_CONN="/usr/bin/mysqladmin -u${MYSQL_USER} -p${MYSQL_PWD} -h${MYSQL_HOST} -P${MYSQL_PORT}" #數據鏈接
# 參數是否正確
if [ $# -ne "1" ];then
 echo "arg error!" 
fi
# 獲取數據
case $1 in
 Uptime)
 result=`${MYSQL_CONN} status|cut -f2 -d":"|cut -f1 -d"T"`
 echo $result 
 ;;
 Com_update)
 result=`${MYSQL_CONN} extended-status |grep -w "Com_update"|cut -d"|" -f3`
 echo $result 
 ;;
 Slow_queries)
 result=`${MYSQL_CONN} status |cut -f5 -d":"|cut -f1 -d"O"`
 echo $result 
 ;;
 Com_select)
 result=`${MYSQL_CONN} extended-status |grep -w "Com_select"|cut -d"|" -f3`
 echo $result 
 ;;
 Com_rollback)
 result=`${MYSQL_CONN} extended-status |grep -w "Com_rollback"|cut -d"|" -f3`
 echo $result 
 ;;
 Questions)
 result=`${MYSQL_CONN} status|cut -f4 -d":"|cut -f1 -d"S"`
 echo $result 
 ;;
 Com_insert)
 result=`${MYSQL_CONN} extended-status |grep -w "Com_insert"|cut -d"|" -f3`
 echo $result 
 ;;
 Com_delete)
 result=`${MYSQL_CONN} extended-status |grep -w "Com_delete"|cut -d"|" -f3`
 echo $result 
 ;;
 Com_commit)
 result=`${MYSQL_CONN} extended-status |grep -w "Com_commit"|cut -d"|" -f3`
 echo $result 
 ;;
 Bytes_sent)
 result=`${MYSQL_CONN} extended-status |grep -w "Bytes_sent" |cut -d"|" -f3`
 echo $result 
 ;;
 Bytes_received)
 result=`${MYSQL_CONN} extended-status |grep -w "Bytes_received" |cut -d"|" -f3`
 echo $result 
 ;;
 Com_begin)
 result=`${MYSQL_CONN} extended-status |grep -w "Com_begin"|cut -d"|" -f3`
 echo $result 
 ;;

 *)
 echo 
"Usage:$0(Uptime|Com_update|Slow_queries|Com_select|Com_rollback|Questions|Com_insert|Com_delete|Com_commit|Bytes_sent|Bytes_received|Com_begin)" 
 ;;
esac

  爲腳本加權限

chmod 777 /usr/local/zabbix/etc/agent_mysql.sh 

  MySQL受權

mysql -uroot -p123456
grant all on *.* to root@'server.zabbix.com' identified by '123456';
flush privileges;
exit

    

 

  重啓server,agent,httpd服務

[root@server ~]# killall -9 zabbix_agentd
[root@server ~]# killall -9 zabbix_server
[root@server ~]# zabbix_agentd 
[root@server ~]# zabbix_server 
[root@server ~]# systemctl restart httpd

  server端測試

ln -s /usr/local/zabbix/bin/* /usr/local/bin/
zabbix_get -s 192.168.10.10 -k mysql.ping
zabbix_get -s 192.168.10.10 -k mysql.status[Com_select]

    

  web中添加服務模版

    爲實驗的嚴謹性,另需添加 對 server主機:192.168.10.10地址 的監控mysql

    配置主機建立主機web

    • 進行相關參數添加sql

     • 點擊主機建立模版數據庫

    • 點擊模版進行選擇vim

     • (爲快速查找)羣組Templates/Databases 中點擊 Mysql bash

     • 羣組 Templates/Operating systems 中點擊 Linux服務器

     • 羣組 Templates/Modules 中點擊 HTTPide

    • 先添加更新

     • 稍後便可綠色成功,點擊圖形

     • 建立圖形

     • 自定義名稱,點擊添加監控項

     • 找到 HTTP running 添加

     • 點擊添加

     • 可在 監測  > 圖形 中自行點擊各項查看

    • 可看見,mysql 及 http 中漸有數據產生

 

 

至此配置測試完成

相關文章
相關標籤/搜索