Zabbix之五---Zabbix监控TCP连接数

实战一:实现zabbix监控TCP连接数

端口状态转换

TCP三次握手

TCP四次断开

1、配置主动模式的zabbix-agent服务器(node1主机)

(1)制作TCP连接数提取脚本

[root@node1 zabbix_agentd.d]# cat tcp_conn.sh 
#!/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

(2)加上执行权限,并验证效果。

[root@node1 zabbix_agentd.d]# chmod +x tcp_conn.sh  # 加上执行权限
[root@node1 zabbix_agentd.d]# bash tcp_conn.sh  tcp_status LISTEN  # 查看此时提取连接数的效果
12
[root@node1 zabbix_agentd.d]# bash tcp_conn.sh  tcp_status WAIT-TIME # 查看此时提取连接数的效果
0

验证完成脚本后,生成在/tmp/tcp_conn.txt文件是root用户的,可以将其文件删除或者修改属主为zabbix即可。

[root@node1 zabbix_agentd.d]# rm -rf  /tmp/tcp_conn.txt 
[root@node1 zabbix_agentd.d]# chown -R zabbix.zabbix   /tmp/tcp_conn.txt 

(3)在监控主动proxy模式的基础上修改/etc/zabbix/zabbix_agent.conf配置文件,主动模式的配置见上章:https://www.cnblogs.com/struggle-1216/p/12354813.html

Server=192.168.7.100,192.168.7.103,192.168.7.104 # zabbix-server服务器和主动模式proxy代理服务器
ServerActive=192.168.7.104  # 主动模式的proxy代理服务器
Hostname=192.168.7.101  #主动模式被监控的主机
UserParameter=linux_status[*],/etc/zabbix/zabbix_agentd.d/tcp_conn.sh $1 $2  # 定义模板名称,并调用/etc/zabbix/zabbix_agentd.d/tcp_conn.sh脚本,传递$1和$2参数。

(4)重启zabbix-agent服务

# systemctl restart zabbix-agent

(5)然后在主动模式的proxy主机上进行验证脚本的传递,显示数字之后,说明配置正确

[root@node4 ~]# zabbix_get  -s 192.168.7.101 -p 10050 -k "linux_status[tcp_status,LISTEN]"
12
[root@node4 ~]# zabbix_get  -s 192.168.7.101 -p 10050 -k "linux_status[tcp_status,WAIT-TIME]"
0

2、在zabbix网页上导入制作好的TCP监控模板

(1)打开zabbix网页,然后导入自制的TCP监控模板

 (2)选择自制的模板

 (3)将TCP监控连接数模板关联到前面主动模式监控的tomcat主机上

(4)将制作好的tcp模板关联上

 (5)查看TCP监控连接数信息

  

  

原文地址:https://www.cnblogs.com/struggle-1216/p/12355099.html