Zabbix监控系统默认没有监控端口连接数的功能,然而在实际业务中往往有这样的需求,本文以80端口为例,讲述实现监控端口连接数的两种方法。
首先需要准确的定位端口及统计连接数,然后再创建并部署模板,本文以监控80端口的连接数为例。
方法一
创建脚本
编写脚本/opt/zabbix/scripts/port_connections.sh:
# 只监控80端口的ESTABLISHED连接数,此外还有LISTEN/TIME_WAIT状态 netstat -ant | grep ESTABLISHED | awk '{print $4}' | awk -F: '$NF=="80"{print $NF}' | wc -l > /var/log/zabbix/port_conns.txt
chmod +x /opt/zabbix/scripts/port_connections.sh
创建定时任务
crontab -e
*/3 * * * * /opt/zabbix/scripts/port_connections.sh
创建监控项
登录Web控制面板创建模板,其他参数自行填写,但键值必须如下:
vfs.file.contents[/var/log/zabbix/port_conns.txt]
部署模板至对应的主机。
方法二
创建脚本
编写脚本/opt/zabbix/scripts/port_connections.sh:
# 监控所有占用80端口的连接数 netstat -ant | awk '{print $4}' | awk -F: '$NF=="80"{print $NF}' | wc -l
chmod +x /opt/zabbix/scripts/port_connections.sh
创建键值
在Zabbix配置文件/etc/zabbix/zabbix_agent.conf中加入如下参数:
UnsafeUserParameters=1 UserParameter=port_conns,/opt/zabbix/scripts/port_connections.sh
systemctl restart zabbix-agent
创建监控项
登录Web控制面板创建模板,监控项中的键值必须与“UserParameter”设定的相同,其他参数可自行填写:
port_conns
部署模板至对应的主机。
原创文章禁止转载:技术学堂 » Zabbix使用手册:监控主机端口连接数