Nagios监控Windows的网卡流量

简介: Nagios监控Windows的网卡流量 使用/usr/local/nagios/libexec/中的check_traffic.sh,不但可以监控Linux的网卡流量,也可以监控Windows服务器的流量。

Nagios监控Windows的网卡流量

使用/usr/local/nagios/libexec/中的check_traffic.sh,不但可以监控Linux的网卡流量,也可以监控Windows服务器的流量。

1 Check_traffic.sh用法用法

 

[root@oracle libexec]#/usr/local/nagios/libexec/check_traffic.sh -h

Usage:

./check_traffic.sh [ -v ] [ -6 ] [ -r ] -V 1|2c|3 -C snmp-community -H host [ -L ] -I interface -w in, out-warning-value  -c in, out-critical-value -K/M -B/b

Example:

./check_traffic.sh -V 2c -C public -H 127.0.0.1 -I 4 -w 200,100 -c 300,200 -K -B

We can use -r to use Range Value Options:

Example:

./check_traffic.sh -V 2c -C public -H 127.0.0.1 -I 4 -r -w 200-300,100-200 -c 100-400,50-250 -K -B

If you don't use -K/M -B/b options, default -K -b, corresponding to Kbps

Make sure that the check interval greater than 5 Seconds.

Or modify the Min_Interval var in this file Line 180.

And, if you want in Verbose mode, use -v, to check the debug messages in the file /tmp/check_traffic.$$.

Or use ./check_traffic.sh [ -v ] -V 1|2c|3 -C snmp-community -H host -L

To list all interfaces on specify host.

 

2 Windows客户端的设置

在此例中使用windows 2008举例,IP192.168.19.142

 

 

 

 

 

2.1 安装SNMP服务 

Windows 2008中是通过添加feature来添加snmp服务的,详细过程请查看附件文档。 

而Windows2003是在控制面板-添加删除程序-添加删除组件-Management and Monitoring Tools中安装snmp服务的。

2.2 配置SNMP服务

使用services.msc启动服务控制台,设置snmp communitytrapssecurity,如下:(详细配置请查看附件文档)

 

然后重启snmp服务,可以使用cmdànetstat –an | find “161”验证snmp服务启动情况

3 Nagios服务器的设置

3.1 安装net-snmp的相关组件

         # yum install –y net-snmp*

3.2 编辑command.cfg文件

vi /usr/local/nagios/etc/object/command.cfg添加如下内容:

 

define command{

      command_name    check_bandwidth

      command_line    $USER1$/check_traffic.sh -V 2c -C snmp-community -H $HOSTADDRESS$ -I $ARG1$ -w $ARG2$,$ARG3$ -c $ARG4$,$ARG5$

        }

注:-C后参数为在服务器上设置的community值;

-I 为大写的i,为网卡接口的index

-w-c后的两个参数分别为in/out的流量阈值

 

3.3 编辑windows.cfg主机配置文件

首先使用如下的命令查看被监控的windows主机的网卡信息:

/usr/local/nagios/libexec/check_traffic.sh -V 2c -C snmp-community -H IPADD -L

然后会列出被监控机的网卡信息,查看需要监控的网卡,记录其index值即可。

如上例中所示中命令为:

/usr/local/nagios/libexec/check_traffic.sh -V 2c -C public1 -H 192.168.19.142 –L如下图所示:(图片在附件文档中)

 

vi windows.cfg添加如下内容:

 

define service{

        use                     generic-service

        host_name               winserver

        service_description        Traffic

        check_command          check_bandwidth!10!200000!300000!400000!500000

        }

此处的10为网卡信息的index值,此值通过如上的命令查看:

 

然后重启nagios服务即可。

 

若安装有PNP的话还可以查看波形图的流量监控。

目录
相关文章
|
5月前
|
Arthas 监控 Java
Arthas 可以用于监控和诊断在 Windows 系统下部署的 Tomcat 服务
Arthas 可以用于监控和诊断在 Windows 系统下部署的 Tomcat 服务
719 2
|
10月前
|
监控 安全 API
7.6 Windows驱动开发:内核监控FileObject文件回调
本篇文章与上一篇文章`《内核注册并监控对象回调》`所使用的方式是一样的都是使用`ObRegisterCallbacks`注册回调事件,只不过上一篇博文中`LyShark`将回调结构体`OB_OPERATION_REGISTRATION`中的`ObjectType`填充为了`PsProcessType`和`PsThreadType`格式从而实现监控进程与线程,本章我们需要将该结构填充为`IoFileObjectType`以此来实现对文件的监控,文件过滤驱动不仅仅可以用来监控文件的打开,还可以用它实现对文件的保护,一旦驱动加载则文件是不可被删除和改动的。
7.6 Windows驱动开发:内核监控FileObject文件回调
|
5月前
|
监控 安全 API
7.2 Windows驱动开发:内核注册并监控对象回调
在笔者上一篇文章`《内核枚举进程与线程ObCall回调》`简单介绍了如何枚举系统中已经存在的`进程与线程`回调,本章`LyShark`将通过对象回调实现对进程线程的`句柄`监控,在内核中提供了`ObRegisterCallbacks`回调,使用这个内核`回调`函数,可注册一个`对象`回调,不过目前该函数`只能`监控进程与线程句柄操作,通过监控进程或线程句柄,可实现保护指定进程线程不被终止的目的。
7.2 Windows驱动开发:内核注册并监控对象回调
|
10月前
|
监控 安全 API
7.5 Windows驱动开发:监控Register注册表回调
在笔者前一篇文章`《内核枚举Registry注册表回调》`中实现了对注册表的枚举,本章将实现对注册表的监控,不同于32位系统在64位系统中,微软为我们提供了两个针对注册表的专用内核监控函数,通过这两个函数可以在不劫持内核API的前提下实现对注册表增加,删除,创建等事件的有效监控,注册表监视通常会通过`CmRegisterCallback`创建监控事件并传入自己的回调函数,与该创建对应的是`CmUnRegisterCallback`当注册表监控结束后可用于注销回调。
7.5 Windows驱动开发:监控Register注册表回调
|
10月前
|
监控 安全 API
7.1 Windows驱动开发:内核监控进程与线程回调
在前面的文章中`LyShark`一直在重复的实现对系统底层模块的枚举,今天我们将展开一个新的话题,内核监控,我们以`监控进程线程`创建为例,在`Win10`系统中监控进程与线程可以使用微软提供给我们的两个新函数来实现,此类函数的原理是创建一个回调事件,当有进程或线程被创建或者注销时,系统会通过回调机制将该进程相关信息优先返回给我们自己的函数待处理结束后再转向系统层。
7.1 Windows驱动开发:内核监控进程与线程回调
|
10月前
|
监控 Windows
4.4 Windows驱动开发:内核监控进程与线程创建
当你需要在Windows操作系统中监控进程的启动和退出时,可以使用`PsSetCreateProcessNotifyRoutineEx`函数来创建一个`MyCreateProcessNotifyEx`回调函数,该回调函数将在每个进程的创建和退出时被调用。PsSetCreateProcessNotifyRoutineEx 用于在系统启动后向内核注册一个回调函数,以监视新进程的创建和退出,
4.4 Windows驱动开发:内核监控进程与线程创建
|
10月前
|
监控 安全 Windows
4.3 Windows驱动开发:监控进程与线程对象操作
在内核中,可以使用`ObRegisterCallbacks`这个内核回调函数来实现监控进程和线程对象操作。通过注册一个`OB_CALLBACK_REGISTRATION`回调结构体,可以指定所需的回调函数和回调的监控类型。这个回调结构体包含了回调函数和监控的对象类型,还有一个`Altitude`字段,用于指定回调函数的优先级。优先级越高的回调函数会先被调用,如果某个回调函数返回了一个非NULL值,后续的回调函数就不会被调用。当有进程或线程对象创建、删除、复制或重命名时,内核会调用注册的回调函数。回调函数可以访问被监控对象的信息,如句柄、进程ID等,并可以采取相应的操作,如打印日志、记录信息等。
4.3 Windows驱动开发:监控进程与线程对象操作
|
1月前
|
网络安全 虚拟化 Windows
windows 11安装openSSH server 遇到的"kex_exchange_identification: read: Connection reset"问题
windows 11安装openSSH server 遇到的"kex_exchange_identification: read: Connection reset"问题
|
2月前
|
PHP Windows
【Azure App Service for Windows】 PHP应用出现500 : The page cannot be displayed because an internal server error has occurred. 错误
【Azure App Service for Windows】 PHP应用出现500 : The page cannot be displayed because an internal server error has occurred. 错误