zabbix mon监控mysql_MON-DB-mysql通过zabbix监控processlist数量
本方案基本思路為先通過腳本將mysql的processlist數量輸出至文本文件,之后通過zabbix_agent的自定義參數方式獲取文件內的值并傳輸至zabbix的服務器端
1.mysql主從復制及同步延遲輸出至文本文件
腳本以及狀態文本文件的存放路徑:/data/myscript? ?(可按需配置)
創建目錄
命令:mkdir /data/myscript
進入目錄
命令:cd /data/myscript
創建processlist數量記錄文件
命令:touch?processlist_num
創建腳本文件:mysql_processlist_monitor.sh
命令:vi?mysql_processlist_monitor.sh
###添加如下內容###
#!/bin/bash
cd?/data/myscript
/usr/local/mysql/bin/mysql?-uroot -pXXXXXXXX?-e "select count(*) from information_schema.processlist;"|awk '{print $(NF-1)}'|sed -n "2,2p" >?processlist_num
###以上###
說明:
其中XXXX為mysql數據庫root用戶的密碼,建議創建一個只能查看數據庫連接情況的賬號status_check。
/usr/local/mysql/bin/mysql?為mysql命令全路徑
為腳本添加可執行權限:
chmod +x?mysql_processlist_monitor.sh
測試腳本:
命令:/data/myscript/mysql_processlist_monitor.sh? ? ? ? ? ? ? ? ? ? ? ?#執行腳本
命令:more?/data/myscript/processlist_num ? ? ?#查看是否有返回值
2.調整zabbix_agent配置,添加自定義參數
zabbix_agent配置文件路徑:/usr/local/zabbix/etc/zabbix_agentd.conf
配置zabbix_agentd.conf
命令:vi?/usr/local/zabbix/etc/zabbix_agentd.conf
###添加如下內容###
UserParameter=mysql_processlist_count,cat /data/myscript/processlist_num
###以上###
說明:
zabbix的自定義參數的格式為
UserParameter=key,command? ? ??#key為定義的鍵值,command為獲得返回參數的命令
通過定義mysql_processlist_count并讀取對應文件獲取對應的返回值
重啟zabbix
1)保存文件后重啟zabbix_agent
命令:ps -ef|grep zabbix
2)獲取所有zabbix的進程,并使用 kill -9 命令清除zabbix進程
命令:kill -9? 進程號
3)確認zabbix進程清除完畢后使用systemctl啟動zabbix
命令:systemctl start zabbix_agentd
4)檢查zabbix平臺上該服務器是否有多的返回值
3.配置定時任務持續刷連接數狀態
命令:crontab -e
###添加如下內容###
*/5 * * * * /data/myscript/mysql_processlist_monitor.sh
###以上###
4.zabbix監控內容
zabbix平臺通過監控mysql_processlist_count的值實現告警
mysql.processlist_count的值若大于1200,觸發告警通知管理員
總結
以上是生活随笔為你收集整理的zabbix mon监控mysql_MON-DB-mysql通过zabbix监控processlist数量的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 仙剑5前传司云崖音律石怎么过-司云崖攻略
- 下一篇: 生僻姓(多音字姓)