Zabbix日常監控之lvs監控
阿新 • • 發佈:2018-06-20
gre sys 僅供參考 then bubuko ide AD 51cto color
內容太挫,實現的方法僅供參考!
參考博文:
Zabbix自建模板監控,自動發現LVS連接狀態:http://blog.51cto.com/kaibinyuan/1711863
一、自動發現主機並監控lvs的連接狀態
1、腳本內容
最初的
[root@lvs01 scripts]# cat lvs_discovery_ActConn.sh #!/bin/bash #filename: lvs_discovery.sh #author: MY_KEY=(`sudo /sbin/ipvsadm -L -n |egrep -v ‘TCP|UDP|Virtual|LocalAddress|ActiveConn之前的腳本內容‘ |grep "$1"|awk ‘$5 > 0 {print $2}‘`) length=${#MY_KEY[@]} printf "{\n" printf ‘\t‘"\"data\":[" for ((i=0;i<$length;i++)) do printf ‘\n\t\t{‘ printf "\"{#IFNAME}\":\"${MY_KEY[$i]}\"}" if [ $i -lt $[$length-1] ];then printf ‘,‘ fi done printf"]}\n" [root@lvs01 scripts]# 註釋說明:當前IP地址有活躍連接的時候才輸出IP地址
現在使用的
[root@lvs01 scripts]# cat ../scripts/lvs_discovery_ActConn.sh #!/bin/bash #filename: lvs_discovery.sh #author: MY_KEY=(`sudo /sbin/ipvsadm -L -n |egrep -v ‘TCP|UDP|Virtual|LocalAddress|ActiveConn‘ |grep "$1"|awk ‘{print $2}‘`) length=${#MY_KEY[@]} printf "{\n" printf ‘\t‘"\"data\":[" for ((i=0;i<$length;i++)) do printf ‘\n\t\t{‘ printf "\"{#IFNAME}\":\"${MY_KEY[$i]}\"}" if [ $i -lt $[$length-1] ];then printf ‘,‘ fi done printf "]}\n"
腳本測試結果:
2、配置文件內容
# monitor lvs status UserParameter=lvs.status.discovery,/etc/zabbix/scripts/lvs_discovery_ActConn.sh #UserParameter=lvs.status[*],sudo /sbin/ipvsadm -L -n | egrep -v ‘TCP|UDP|Virtual|LocalAddress|ActiveConn‘ | grep "$1" | awk ‘$$5 > 0 {print $$5}‘ UserParameter=lvs.status[*],sudo /sbin/ipvsadm -L -n | egrep -v ‘TCP|UDP|Virtual|LocalAddress|ActiveConn‘ | grep "$1" | awk ‘{print $$5}‘
3、重啟服務並測試
systemctl restart zabbix-agent.service
#在zabbix-server端測試: [root@zabbix-server ~]# zabbix_get -s 10.10.10.59 -k lvs.status.discovery { "data":[ {"{#IFNAME}":"10.10.10.60:80"}, {"{#IFNAME}":"10.10.10.61:80"}]} [root@zabbix-server ~]# zabbix_get -s 10.10.10.59 -k lvs.status[10.10.10.60] 2
4、創建模板以及加入自動發現規則
創建模板
創建自動發現規則
創建監控原型
創建圖形原型
設置觸發器
Zabbix日常監控之lvs監控