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上创建模板、监控项、图形

Zabbix监控服务器的TCP连接数_TCP

 

 

Zabbix监控服务器的TCP连接数_TCP_02

 

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

Zabbix监控服务器的TCP连接数_linux_03

 

 7、图形展示

Zabbix监控服务器的TCP连接数_vim_04