zabbix 监控tcp 连接数
1. 先制作可以采取tcp 值的脚本
#!/bin/bash
tcp_conn_status(){
TCP_STAT=$1
ss -ant | awk 'NR>1 {++s[$1]} END {for(k in s) print k,s[k]}' > /tmp/tcp_conn.txt
TCP_NUM=$(grep "$TCP_STAT" /tmp/tcp_conn.txt | cut -d ' ' -f2)
if [ -z $TCP_NUM ];then
TCP_NUM=0
fi
echo $TCP_NUM
}
main(){
case $1 in
tcp_status)
tcp_conn_status $2;
;;
esac
}
main $1 $2
root@Z4:/etc/zabbix/zabbix_agentd.d# chmod +x tcp.sh
root@Z4:/etc/zabbix/zabbix_agentd.d# bash tcp.sh tcp_status LISTEN
29
2. 修改 agent.conf
UserParameter=linux.status[*],/etc/zabbix/zabbix_agentd.d/tcp.sh "$1" "$2"
重启agent
systemctl restart zabbix-agent
3. 使用zabbix_get 做测试
在proxy 或server 上运行
root@z2:~# zabbix_get -s 192.168.1.104 -p 10050 -k linux.status[tcp_status,LISTEN]
29
4.在前端添加模板并且创建监控项
5.把新制作的模板关联到主机,并且观察最新数据是否有值
若有值,创建图形即可
6.创建图形
7.验证
8.其他
当然,你可以添加更多的监控项,如TIME_WAIT 之类的,添加更多图形(可以放在一张大图中),不演示了