zabbix自定义监控tcp连接数

简介:

zabbix自定义监控tcp连接数(1)

首先在客户端修改配置文件


# vim /usr/local/zabbix/etc/zabbix_agentd.conf

1
2
UnsafeUserParameters=1
UserParameter=tcpconnect, /usr/local/zabbix/bin/zabbix_tcp .sh ------> tcpconnect为item key


然后增加脚本


# vim /usr/local/zabbix/bin/zabbix_tcp.sh

1
2
#!/bin/bash
netstat  -s| grep  "connections established" | awk  '{print$1}'


给脚本加权限


1
# chmod 755 /usr/local/zabbix/bin/zabbix_tcp.sh


客户端测试


1
/usr/local/zabbix/sbin/zabbix_agentd  -t tcpconnect


服务端测试


1
/usr/local/zabbix/bin/zabbix_get  -s 10.0.100.200 -k tcpconnect


测试0k后在zabbix web界面添加 组态--模板--创建或自定义模板--项目--创建监控项--填写名称和键值,键值即为tcpconnect--然后还能添加图形等等


zabbix自定义监控tcp连接数(2)

搭建一个zabbix监控服务,但是zabbix上没有默认的模板对tcp连接数的监控。后去网上搜索好多文章都没有一个完成的操作步骤,可能本人还是小白吧。

以下详细写下本人的操作步骤。

1、检查安装包和了解zabbix对tcp连接数的监控配置过程。

zabbix的服务器端和客户端的安装就不再累述了,直接说本次操作过程(该过程以RPM为例,源码包更简单)。

a、客户端上必须的安装包:zabbix-agent、zabbix-sender。zabbix-get和zabbix-web可以不用安装。

b、了解下tcp连接数的监控配置过程:客户端通过zabbix-agent服务通过本地脚本(自定义或自己根据情况编写shell或其他类型脚本)收集到的链接数状态的相应值,比如建立连接的、监听的、等待的等。然后发送给服务器。服务器端通过iteam项建立对客户端的连接数状态的监控。

2、在客户端编写监控tcp连接状态的脚本,并放在自定义位置。

#vi /etc/zabbix/scripts/tcp_connection_status.sh

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#!/bin/bash
SYNRECV(){
a=` /usr/sbin/ss  -ant |  awk  '{++s[$1]} END {for(k in s) print k,s[k]}'  grep  'SYN-RECV'  awk  '{print $2}' `
if  test  -z  "$a"
then
    echo  0
else
    echo  $a
fi
}
ESTAB(){
a=` /usr/sbin/ss  -ant |  awk  '{++s[$1]} END {for(k in s) print k,s[k]}'  grep  'ESTAB'  awk  '{print $2}' `
if  test  -z  "$a"
then
    echo  0
else
    echo  $a
fi
}
TIMEWAIT(){
a=` /usr/sbin/ss  -ant |  awk  '{++s[$1]} END {for(k in s) print k,s[k]}'  grep  'TIME-WAIT'  awk  '{print $2}' `
if  test  -z  "$a"
then
    echo  0
else
    echo  $a
fi
}
TOTAL(){
a=` /usr/sbin/ss  -ant |  awk  'BEGIN{t=0;} { t++; } END{print t; }' `
if  test  -z  "$a"
then
    echo  0
else
    echo  $a
fi
}
$1


2、在客户端中修改zabbix-agentd服务配置文件

/etc/zabbix/zabbix-agentd.conf

1
2
3
4
5
UnsafeUserParameters=1
UserParameter=synrecv, /etc/zabbix/scripts/tcp_connection_status .sh SYNRECV
UserParameter=estab, /etc/zabbix/scripts/tcp_connection_status .sh ESTAB
UserParameter=timewait, /etc/zabbix/scripts/tcp_connection_status .sh TIMEWAIT
UserParameter=total, /etc/zabbix/scripts/tcp_connection_status .sh TOTAL


上面代码中UserParameter后面的是zabbix监控项值就是说key项。


3、在客户端上重启zabbix-agent服务,并测试配置的key项。


1
2
service zabbix-agent restart 
zabbix_agentd -t synrecv (键值)


4、在服务器端测试key,并添加监控项iteam。

zabbix_get -s 1.1.1.1(客户机IP地址) -k synrecv(键值)


添加值。在zabbix web界面添加 组态--模板--创建或自定义模板--项目--

创建监控项--填写名称和键值,键值即为tcpconnect--然后还能添加图形等等,

注意:"键值"的一定要手动填写不能选择,因为这里是我们自定义,所以以上的键值分别是:synrecv、estab、timewait、total。








      本文转自027ryan  51CTO博客,原文链接:http://blog.51cto.com/ucode/1902827
,如需转载请自行联系原作者



相关文章
|
11月前
|
存储 SQL 监控
修改Zabbix源码实现监控数据双写,满足业务需求!
虽然对接Elasticsearch后有诸多好处,但是它不往数据库写历史数据了,同时还不再计算趋势数据了。有这么一个场景...
修改Zabbix源码实现监控数据双写,满足业务需求!
|
11天前
|
运维 监控 安全
【案例分享】中国通号卡斯柯公司:ZABBIX如何破解轨道交通监控难题
本文根据2023上海峰会上朱林贤的演讲整理,聚焦中国通号卡斯柯公司如何借助Zabbix实现轨道交通信号系统的智能化管理。作为中外合资企业,卡斯柯通过统一平台整合设备监控,大幅降低成本并提升灵活性,成功应用于国内外项目。文章探讨了传统监控系统的痛点、研发维护经验及国产化与开源技术挑战,为行业转型提供了宝贵启示。未来,开放协作将是推动轨道交通智能化发展的关键。
38 0
|
2月前
|
存储 缓存 监控
|
3月前
|
监控 Java 应用服务中间件
tomcat相关概念与部署tomcat多实例-zabbix监控(docker部署)
通过上述步骤,您可以在Ubuntu系统上成功编译并安装OpenCV 4.8。这种方法不仅使您能够定制OpenCV的功能,还可以优化性能以满足特定需求。确保按照每一步进行操作,以避免常见的编译问题。
73 23
|
3月前
|
监控 Java 应用服务中间件
tomcat相关概念与部署tomcat多实例-zabbix监控(docker部署)
通过上述步骤,您可以在Ubuntu系统上成功编译并安装OpenCV 4.8。这种方法不仅使您能够定制OpenCV的功能,还可以优化性能以满足特定需求。确保按照每一步进行操作,以避免常见的编译问题。
76 22
|
3月前
|
监控 Java 应用服务中间件
tomcat相关概念与部署tomcat多实例-zabbix监控(docker部署)
通过上述步骤,您可以在Ubuntu系统上成功编译并安装OpenCV 4.8。这种方法不仅使您能够定制OpenCV的功能,还可以优化性能以满足特定需求。确保按照每一步进行操作,以避免常见的编译问题。
86 25
|
8月前
|
监控 安全 Linux
在Linux中,zabbix如何监控脑裂?
在Linux中,zabbix如何监控脑裂?
|
4月前
|
监控 安全 前端开发
使用 Zabbix 监控堆外应用
使用 Zabbix 监控堆外应用
81 9
|
4月前
|
监控 数据可视化 Java
zabbix全面的监控能力
zabbix全面的监控能力
184 7
|
5月前
|
监控 Java Shell
监控堆外第三方监控工具Zabbix
监控堆外第三方监控工具Zabbix
85 5

推荐镜像

更多