首页 Linux网维 zabbix 监控TCP状态连接数

zabbix 监控TCP状态连接数

1、zabbix客户端,监控TCP状态脚本,并保存到的定路径(/usr/local/zabbix-agent/shells)# cat zabbix_linux_plugin.sh…

1、zabbix客户端,监控TCP状态脚本,并保存到的定路径(/usr/local/zabbix-agent/shells)# cat zabbix_linux_plugin.sh#!/bin/bash。

############################################################# $Name:         zabbix_linux_plugins.sh# $Version:      v1.0

# $Function:     zabbix plugins# $Create Date:  2014-08-10# $Description:  Monitor Linux Service Status

############################################################tcp_status_fun(){TCP_STAT=$1ss -ant | awk NR>1 {++s[$1]} END {for(k in s) print k,s[k]} > /tmp/netstat.tmp

TCP_STAT_VALUE=$(grep “$TCP_STAT” /tmp/netstat.tmp | cut -d -f2)if [ -z $TCP_STAT_VALUE ];thenTCP_STAT_VALUE=0

fiecho $TCP_STAT_VALUE}main(){case $1 intcp_status)tcp_status_fun $2;;;*)echo $”Usage: $0 {tcp_status key}”

esac}main $1 $2 $32、在客户端中修改zabbix_agentd.conf配置文件(/usr/local/zabbix-agent/etc/zabbix_agentd.conf)### Option: Include

#       You may include individual files or all files in a directory in the configuration file.#       Installing Zabbix will create include directory in /usr/local/etc, unless modified during the compile time.

## Mandatory: no# Default:# Include=# Include=/usr/local/etc/zabbix_agentd.userparams.conf# Include=/usr/local/etc/zabbix_agentd.conf.d/

Include=/usr/local/zabbix-agent/etc/zabbix_agentd.conf.d/*.conf            # 启用Include,在zabbix_agentd.conf.d目录下的所有.conf文件被引用

用来引用自定义key的配置文件3、在客户端中配置自定义KEY配置文件(/usr/local/zabbix-agent/etc/zabbix_agentd.conf.d/zabbix-linux-plugin.conf)。

# cat zabbix-linux-plugin.conf UserParameter=linux_status[*],/usr/local/zabbix-agent/shells/zabbix_linux_plugin.sh “$1” “$2” “$3”

4、以上配置完成,重启zabbix agent服务# /etc/init.d/zabbix_agentd restart5、tcp连接状态模板,这是配置好的模板,包括了TCP连接的11种状态,如果模板就需要一个一个的创建了。

# cat TCP_export_templates.3.0.xml 3.0

2016-06-18T06:34:48ZTemplates

Template Linux TCP StatusTemplate Linux TCP Status

TemplatesTCP Stauts

TCP Status CLOSE_WAIT00

linux_status[tcp_status,CLOSE-WAIT]3003090

030

00

01

00

0

TCP StautsTCP Status CLOSED

00linux_status[tcp_status,CLOSED]

300309003

00

00

10

00

TCP Stauts

TCP Status CLOSING00

linux_status[tcp_status,CLOSING]3003090

030

00

01

00

0

TCP Stauts                           # ESTABLISHED状态模板,我们通过zabbix_get命令获取这个KEY,看是否可以正常获取

TCP Status ESTABLISHED00

linux_status[tcp_status,ESTAB]     # 这就是Key哦3003090

030

00

01

00

0

TCP StautsTCP Status FIN_WAIT1

00linux_status[tcp_status,FIN-WAIT-1]

300309003

00

00

10

00

TCP Stauts

TCP Status FIN_WAIT200

linux_status[tcp_status,FIN-WAIT-2]3003090

030

00

01

00

0

TCP StautsTCP Status LAST_ACK

00linux_status[tcp_status,LAST-ACK]

300309003

00

00

10

00

TCP Stauts

TCP Status LISTEN00

linux_status[tcp_status,LISTEN]30030900

30

00

01

00

0TCP Stauts

TCP Status SYN_RCVD0

0linux_status[tcp_status,SYN-RECV]300

309003

00

00

10

00

TCP Stauts

TCP Status SYN_SENT00

linux_status[tcp_status,SYN-SENT]3003090

030

00

01

00

0

TCP StautsTCP Status TIME_WAIT

00linux_status[tcp_status,TIME-WAIT]

300309003

00

00

10

00

TCP Stauts

TCP Status Statistics9002000.0000100.0000

1101

00.00000.00000

000

00C8000002

0Template Linux TCP Statuslinux_status[tcp_status,CLOSED]

1000C8000

20Template Linux TCP Statuslinux_status[tcp_status,CLOSE-WAIT]

200000C80

20Template Linux TCP Statuslinux_status[tcp_status,CLOSING]

30C800C80

20Template Linux TCP Statuslinux_status[tcp_status,ESTAB]

4000C8C80

20Template Linux TCP Statuslinux_status[tcp_status,FIN-WAIT-1]

50C8C8000

20Template Linux TCP Statuslinux_status[tcp_status,FIN-WAIT-2]

60C8C8C80

20Template Linux TCP Statuslinux_status[tcp_status,LAST-ACK]

709600000

20Template Linux TCP Statuslinux_status[tcp_status,LISTEN]

800096000

20Template Linux TCP Statuslinux_status[tcp_status,SYN-RECV]

900000960

20Template Linux TCP Statuslinux_status[tcp_status,SYN-SENT]

1009600960

20Template Linux TCP Statuslinux_status[tcp_status,TIME-WAIT]

6、zabbix server 端通过zabbix_get命令进行测试,验证是否可以正常获取TCP状态值

[root@linux-node1 ~]# zabbix_get -s 172.16.10.152 -k linux_status[tcp_status,ESTAB]   2[root@linux-node1 ~]# zabbix_get -s 172.16.10.152 -k linux_status[tcp_status,LISTEN]

6通过测试,我们可以看到,已经可以正确获取到值了,那么我们接下来,就可以在web页面将模板进行导入了。7、zabbix web 监控页面导入tcp连接状态模板

zabbix 监控TCP状态连接数插图zabbix 监控TCP状态连接数插图1

模板(TCP_export_templates.3.0.xml)导入成功后,将模板链接到一台就机就可以了。

zabbix 监控TCP状态连接数插图2zabbix 监控TCP状态连接数插图3

最后我们来看下TCP状态有没有监控上吧。

zabbix 监控TCP状态连接数插图4

好了,数据也有了,图形展示也有了,监控TCP状态就介绍到这里了。

免责声明:文章内容不代表本站立场,本站不对其内容的真实性、完整性、准确性给予任何担保、暗示和承诺,仅供读者参考,文章版权归原作者所有。如本文内容影响到您的合法权益(内容、图片等),请及时联系本站,我们会及时删除处理。

作者: 3182235786a

为您推荐

linux文件命令

linux文件命令

在 Linux 中,我们可以使用 `with open()` 语句和 `write()` 函数来写入文件。以下是一个简单...
linux的命令

linux的命令

以下是一个简单的 Linux 命令示例,该命令将显示当前日期和时间: “`c #include <st...
linux 命令

linux 命令

由于 Linux 命令是由 C 语言编写的,因此下面是一个简单的用中文编写的 Linux 命令示例,它将输出“Hello...
linux命令tar

linux命令tar

这个问题看起来有些模糊,我不确定您是想了解如何在 Linux 系统中使用 tar 命令,还是如何编写一个名为 tar 的...
linux压缩命令

linux压缩命令

Linux压缩命令:高效管理文件和目录 Linux操作系统提供了一系列强大的压缩命令,使您能够高效地管理文件和目录。无论...

发表回复

返回顶部