zabbix監控mysql 主從的狀態,寫一的腳本,然后設置一個key,創建模板套用這個key 獲取mysql 的主從狀態是否正常。
1.這里把我的腳本貼一下,腳本要給可執行權限
#!/bin/bash
#auther: joj
#description ?zabbix agent mysql slave status script
user=root
passwd=123456
port=$1
#自定義函數status
function status {
status=`/opt/mysql/mysql3306/bin/mysql -uroot -S /opt/mysql/mysql3306/var/mysql.sock -p123456 -e "show slave status\G;"|egrep 'Slave_IO_Running|Slave_SQL_Running'|awk '{print $2}'|egrep 'Yes'|wc -l`
if [ $status = 2 ];then
echo 2
else
echo 1
fi
}
#執行上邊的函數
status
2.自定義key
cat /etc/zabbix/zabbix_agentd.d/check_mysql.conf
UserParameter=sanguo.check.mysql[*], ?/data/salt/scripts/check_mysql.sh $1
重啟zabbix_agent
3.創建模板并鏈接主機
(1).創建Applications
(2).創建items ?獲取3316實例的slave狀態,也可以server上用zabbix_get -s ip -k sanguo.check.mysql[3316] 來獲取值
(3).創建trigger ?如果最后獲取的值不等于2 就觸發報警
(4).創建觸發action