监控案例之监控TCP连接数

五、监控案例之监控TCP

1、 安装agent,过程略

(下面是apt安装,如果是编译安装,请注意路径)

2、监控脚本

cd /etc/zabbix/zabbix_agentd.conf.d/
vim check_tcp.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_STAT_VALUE=$(grep "$TCP_STAT" /tmp/tcp_conn.txt | cut -d ‘ ‘ -f2)
        if [ -z $TCP_STAT_VALUE ];then
                TCP_STAT_VALUE=0
        fi
        echo $TCP_STAT_VALUE
}

main(){
	case $1 in
	    tcp_status)
		tcp_conn_status $2;
		;;
		*)
		echo "$0 + tcp_status + STATUS"
	esac
}

main $1 $2

3、授予权限

chmod a+x check_tcp.sh
chown zabbix.zabbix check_tcp.sh
chown zabbix.zabbix /tmp/tcp_conn.txt

4、创建conf文件引用脚本

cd /etc/zabbix/zabbix_agentd.conf.d/
chown zabbix.zabbix check.conf
vim check.conf
UserParameter=check_tcp[*],/etc/zabbix/zabbix_agentd.conf.d/check_tcp.sh "$1" "$2"

5、 如果是编译安装,还需要配置agent 配置文件导入自定义配置那文件

vim /etc/zabbix/zabbix_agentd.conf
263 Include=/usr/local/zabbix/etc/zabbix_agentd.conf.d/*.conf

6、 重启agent服务

systemctl restart zabbix-agent

7、 在被监控服务器为zabbix 用户授权:

vim /etc/sudoers
21 zabbix ALL =(ALL) NOPASSWD: ALL

8、server端测试获取数据

zabbix_get -s 192.168.7.105 -p 10050 -k "check_tcp["tcp_status","LISTEN"]"

添加模版

导入监控项

添加监控项

配置监控项

添加图形

创建图形

配置图形

创建触发器

配置触发器

添加表达式

配置完成

添加主机,如果有可以以现有的主机更改

模板选择我们刚刚创建的模板

查看图形

想要其它的TCP状态,需要修改check_tcp["tcp_status","LISTEN"]LISTEN这个值
如想要监控TIME-WAIT的值,修改成check_tcp["tcp_status","TIME-WAIT"]

原文地址:https://www.cnblogs.com/pansn/p/12667121.html

时间: 2024-11-03 03:44:52

监控案例之监控TCP连接数的相关文章

四、监控案例之监控tomcat

四.监控案例之监控tomcat 4.1监控tomcat 监控过程 4.1.1配置jdk环境 $ tar -xvf jdk-8u191-linux-x64.tar.gz $ ln -sv /usr/local/src/jdk1.8.0_191/ /usr/local/jdk $ vim /etc/profile export JAVA_HOME=/usr/local/jdk export TOMCAT_HOME=/apps/tomcat export PATH=$JAVA_HOME/bin:$JA

微服务监控案例之一

     首先,您需要了解什么是微服务架构设计,同时了解相关微服务与Docker介绍, 微服务架构的本质,是把整体的业务拆分成很多有特定明确功能的服务,通过很多分散的小服务之间的配合,去解决更大,更复杂的问题.对被拆分后的服务进行分类和管理,彼此之间使用统一的接口来进行交互.      微服务的特点决定了功能模块的部署是分布式的,以往在单应用环境下,所有的业务都在同一个服务器上,如果服务器出现错误和异常,我们只要盯住一个点,就可以快速定位和处理问题,但是在微服务的架构下,大部分功能模块都是单独部

zabbix监控linux和windows的tcp连接数

linux: 在linux上手动获得tcp连接数的命令为: netstat -an|awk '/^tcp/{++S[$NF]}END{for(a in S) print a,S[a]}' #ESTABLISHED       socket已经建立连接   #CLOSED            socket没有被使用,无连接   #CLOSING           服务器端和客户端都同时关闭连接   #CLOSE_WAIT        等待关闭连接   #TIME_WAIT         表

在zabbix上添加tcp连接数的监控项

搭建一个zabbix监控服务,但是zabbix上没有默认的模板对tcp连接数的监控.后去网上搜索好多文章都没有一个完成的操作步骤,可能本人还是小白吧. 以下详细写下本人的操作步骤. 1.检查安装包和了解zabbix对tcp连接数的监控配置过程. zabbix的服务器端和客户端的安装就不再累述了,直接说本次操作过程(该过程以RPM为例,源码包更简单). a.客户端上必须的安装包:zabbix-agent.zabbix-sender.zabbix-get和zabbix-web可以不用安装. b.了解

python监控TCP连接数

python监控TCP连接数 先来了解下/proc/net/tcp这个文件,这里记录的是ipv4下所有tcp连接的情况,包括下列数值 sl local_address rem_address st tx_queue rx_queue tr tm->when retrnsmt uid timeout inode 备注:文件中都是用的16进制 我们关注st这列, 状态码对照表 code 状态码 描述 00 ERROR_STATUS 01 TCP_ESTABLISHED 代表一个打开的连接 02 TC

zabbix监控windows tcp连接数

windows: 监控windows tcp的连接数有两种方式,一种是利用性能监视器,另一种方式是写个脚本. 在windows server2008上查看性能监视器: 利用下面这些做zabbix的监控项: 在zabbix页面添加监控项.注意key是从上面获取的. perf_counter["\TCPv4\Connections Established"] perf_counter["\TCPv4\Connections Active"] 用脚本监控windows t

监控服务器Nagios之三 监控案例

前边的两篇仅是Nagios服务端的安装与配置文件的解读,现在终于来到了第三篇,本篇将介绍下Nagios是如下实现监控的. 安装完Nagios之后,登录Web界面访问,在hosts一项中仅有localhost(hosts代表所监控的主机),如下图: 在Service中默认已经监控Nagios服务器本身的以下选项,如下图所示 上图中http处于WARNING状态,提示HTTP WARNING:HTTP/1.1 403 Forbidden - 5237 bytes in 0.003 second re

Netty 编解码技术 数据通信和心跳监控案例

Netty 编解码技术 数据通信和心跳监控案例 多台服务器之间在进行跨进程服务调用时,需要使用特定的编解码技术,对需要进行网络传输的对象做编码和解码操作,以便完成远程调用.Netty提供了完善,易扩展,易使用的编解码技术.本章除了介绍Marshalling的使用,还会基于编解码技术实现数据通信和心跳检测案例.通过本章,你将学到Java序列化的优缺点,主流编解码框架的特点,模拟特殊长连接通信,心跳监控案例.还在等什么,丰满的知识等你来拿! 技术:编解码,数据通信,心跳监控 说明:github上有完

zabbix-自定义监控项(监控网站80连接数)

自定义监控项(监控网站80连接数) 需求:监控某台web的80端口连接数,并出图: 第一步:客户端创建脚本: 客户端定义脚本,并编辑zabbix-agent配置文件实现运行定义的脚本: 客户端设置 vim /usr/local/sbin/estab.sh //创建脚本 #!/bin/bash ##获取80端口并发连接数 netstat -ant |grep ':80' |grep -c ESTABLISHED ##netstat -ant是查看当前连接数,grep ':80'是过滤出80端口,g