zabbix监控网络连接状态

您所在的位置:网站首页 zabbix网站 zabbix监控网络连接状态

zabbix监控网络连接状态

2023-09-02 05:12| 来源: 网络整理| 查看: 265

目录

一、环境准备

二、网络连接状态介绍

三、自定义监控key

四、给主机添加监控项

一、环境准备

1、搭建zabbix基础环境

zabbix基础环境部署参照:zabbix基础环境部署_桂安俊@kylinOS的博客-CSDN博客

2、给web1安装nginx环境,并加载status模块

以下实验部署均基于上述环境

二、网络连接状态介绍

1、TCP连接状态

建立连接的3次握手:

 断开连接的4次握手:

 

2、查看网络连接状态

模拟多人并发连接:

#在zabbixserver向web1发送模拟并发数据 #如果没有命令则需要安装httpd-tools ab -c 1000 -n 100000 http://192.168.2.20/ #最后一定要有反斜杠/ ,20是web1主机,主机环境详见前文《zabbix基础环境部署》

查看网络连接状态:

ss -antup #-a参数显示所有,-t显示TCP连接,-u显示UDP连接,-n以数字形式显示端口和IP,-p显示连接对应的进程名

 如上,State列显示了主机的所有网络连接状态,我们可以用zabbix监控脚本来远程获取每种网络连接状态的数量值。

三、自定义监控key

(注意创建自定义监控key要在agent端/usr/local/etc/zabbix_agentd.conf里打开Include,前文环境已经设置过,这里不再重复)

被监控端修改配置文件:

vim /usr/local/etc/zabbix_agentd.conf.d/net.status

输入如下内容:

UserParameter=net.status[*],/usr/local/bin/net_status.sh $1

重启agent:

killall zabbix_agentd zabbix_agentd

编写监控脚本net_statis.sh:

vim /usr/local/bin/net_status.sh

内容如下:

#!/bin/bash case $1 in estab) ss -antp | awk 'BEGIN{x=0} /^ESTAB/{x++} END{print x}';; close_wait) ss -antp | awk 'BEGIN{x=0} /^CLOSE-WAIT/{x++} END{print x}';; time_wait) ss -antp | awk 'BEGIN{x=0} /^TIME-WAIT/{x++} END{print x}';; esac chmod +x /usr/local/bin/net_status.sh

测试zabbix_get:

在web1本地执行zabbix_get,测试能否获取:

zabbix_get -s 127.0.0.1 -k 'net.status[time_wait]' zabbix_get -s 127.0.0.1 -k 'net.status[estab]' zabbix_get -s 127.0.0.1 -k 'net.status[close_wait]'

 

四、给主机添加监控项

配置--->主机,找到目标主机web1,选中后面的监控项:

 创建监控项:

 自定义监控项名称,键值手动输入,并添加自己想要监控的参数:

 

保存后可以看到多了一个监控项net_status:

监控测试:

如下可以看到有数据过来:

 可以在另一端主机比如zabbixservre使用ab进行并发访问测试:

#在zabbixserver端执行 ab -c 100 -n 10000 http://192.168.2.20/

 查看zabbix监控端数据图:

 



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3