Zabbix監控指定埠
生產上經常會監控某些具體埠狀態,下面介紹具體步驟:
主機名 | ip | 作業系統 | zabbix版本 |
zabbix-server | 172.27.9.63 | CentOS7.3.1611 | zabbix_server (Zabbix) 3.4.8 |
zabbix-agent | 172.27.9.65 | Centos7.3.1611 | zabbix_agentd (daemon) (Zabbix) 3.4.8 |
1.指令碼編寫
兩個指令碼,port_alert.sh為埠自發現指令碼,port.conf為指定的監控埠號
[root@zabbix-agent ~]# cd /etc/zabbix/script/
[root@zabbix-agent script]# more port_alert.sh
#/bin/bash
CONFIG_FILE=/etc/zabbix/script/port.conf
Check(){
grep -vE '(^ *#|^$)' ${CONFIG_FILE} | grep -vE '^ *[0-9]+' &> /dev/null
if [ $? -eq 0 ]
then
echo Error: ${CONFIG_FILE} Contains Invalid Port.
exit 1
else
portarray=($(grep -vE '(^ *#|^$)' ${CONFIG_FILE} | grep -E '^ *[0-9]+'))
fi
}
PortDiscovery(){
length=${#portarray[@]}
printf "{\n"
printf '\t'"\"data\":["
for ((i=0;i<$length;i++))
do
printf '\n\t\t{'
printf "\"{#TCP_PORT}\":\"${portarray[$i]}\"}"
if [ $i -lt $[$length-1] ];then
printf ','
fi
done
printf "\n\t]\n"
printf "}\n"
}
port(){
Check
PortDiscovery
}
port
[root@zabbix-agent script]# more port.conf
22
80
# abc 1
#ebc
50
3306
8080
10050
10051
3822
21
9100
注意兩個指令碼屬主為zabbix:zabbix。
配置檔案port.conf每個埠號一行,每行的被監控埠可以有空格,空行和註釋行#會被過濾。
2.修改被監控端的zabbix_agent.conf配置檔案,新增KEY值port.alert
[root@zabbix-agent ~]# view /etc/zabbix/zabbix_agentd.conf
UserParameter=port.alert,/etc/zabbix/script/port_alert.sh
重啟agent端zabbix服務
[root@zabbix-agent ~]# systemctl restart zabbix-agent
3.server端測試
[root@zabbix-server ~]# zabbix_get -s 172.27.9.65 -k port.alert
{
"data":[
{"{#TCP_PORT}":"22"},
{"{#TCP_PORT}":"80"},
{"{#TCP_PORT}":"50"},
{"{#TCP_PORT}":"3306"},
{"{#TCP_PORT}":"8080"},
{"{#TCP_PORT}":"10050"},
{"{#TCP_PORT}":"10051"},
{"{#TCP_PORT}":"3822"},
{"{#TCP_PORT}":"21"},
{"{#TCP_PORT}":"9100"}
]
}
測試成功,返回json格式的合法埠號
4.新建模板,建立自動發現規則
新建模板:
新建自動發現規則:
自動發現清單中新建監控項原型:
自動發現清單中新建觸發器:
新增表示式:
模板關聯主機:
檢視最新資料:
檢視告警資訊:
檢視微信端告警:
檢視郵件報警:
微信、郵件告警搭建連結: Linux/2018-09/../../Linux/2018-09/154433.htm" rel="nofollow,noindex" target="_blank">https://www.linuxidc.com/Linux/2018-09/154433.htm
Linux公社的RSS地址 : https://www.linuxidc.com/rssFeed.aspx
本文永久更新連結地址: https://www.linuxidc.com/Linux/2018-09/154434.htm