Zabbix监控服务器的TCP连接数

1、 被监控服务器上安装zabbix-agent
yum install zabbix-agent
systemctl start zabbix-agent
systemctl enabel zabbix-agent

2、编写脚本

复制代码
vim /tmp/tcp_status.sh
#!/bin/bash
tcp_conn_status(){
        TCP_STATE=$1
        ss -nat | awk 'NR>1 {++s[$1]} END {for (k in s) print k,s[k]}' > /tmp/tcp_conn.txt
        TCP_NUM=`grep "$TCP_STATE" /tmp/tcp_conn.txt | cut -d " " -f 2`
        if [ -z $TCP_NUM ];then
                TCP_NUM=0
        fi
        echo $TCP_NUM
}
main(){
        tcp_conn_status $1
}
main $1
复制代码

chmod +x /tmp/tcp_status.sh
chmod 777 /tmp/tcp_conn.txt #设定权限,不然zabbix server获取数据的时候提示无权限

3、配置zabbix_agentd.conf和userparameter_mysql.conf
vim /etc/zabbix/zabbix_agentd.conf
Server=127.0.0.1,10.122.77.20 #加上zabbix server地址,不然会提示没有权限
ServerActive=127.0.0.1,10.122.77.20 #加上zabbix server地址,不然会提示没有权限
UnsafeUserParameters=1 #允许所有字符在参数中传递给用户定义的参数

vim /etc/zabbix/zabbix_agentd.d/userparameter_mysql.conf
UserParameter=linux_status[*],/tmp/tcp_status.sh $1

systemctl restart zabbix-agent

4、在zabbix server上测试
zabbix_get -s 10.124.191.202 -p 10050 -k linux_status["LISTEN"]
zabbix_get -s 10.124.191.202 -p 10050 -k linux_status["ESTAB"]

5、在zabbix server上创建模板、监控项、图形

 

 

 

 6、在zabbix server创建主机调用模板

 

 7、图形展示

 

posted @   Me-lihu  阅读(508)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)
点击右上角即可分享
微信分享提示