nagios利用nscp监控windows

2013年7月18日 发表评论 阅读评论

nscp是windows下nagios监控client的一个合集。其包含check plugins 、check_nt、check_nrpe 、nsca client 、wmi checks 。一般需要的监测项基本都包含在内了 。

一、安装

下载地址: http://nsclient.org/nscp/downloads  ,直接下载下来的是msi包 。同windows下其他软件的安装一样,直接下一步下一步就好了。

NSClient

需要配置的一步如上图所示 。第一处需要添写允许的监控server的IP地址,第二处,是密码项,如果该处设置了密码,监控端就需要加上-s参数加密码认证 。modules块我未启用wmi check ,该插件的功能是可以通过编写本地脚本,调用被监控端的wmi系统进程来监控要监控的内容 。

如果配置完了上面的配置,需求有变更,需要更改时,可以进到nscp的安装目录,修改配置文件。其配置文件示例如下:

[/modules]
CheckDisk = 1
CheckEventLog = 1
CheckExternalScripts = 1
CheckNSCP = 1
CheckHelpers = 1
CheckSystem = 1
NRPEServer = 1
NSCAClient = 1
NSClientServer = 1
; Undocumented section
[/settings/default]
; ALLOWED HOSTS - A comaseparated list of allowed hosts. You can use netmasks (/ syntax) or * to create ranges.
allowed hosts = 192.168.8.200
[/modules]

以上我只列出了部分配置,配置方件以" ;"做为注释 。具体每项前,一般都有注释说明是做什么用途的。

二、被控端配置相关

默认安装完之后,就可以使用 。如果不能正常使用可以以下几方法检测 。

1、首先用server端的check_nrpe和check_nt插件对被控端的机器进行检测,看是否正常 ?

[root@web3 libexec]# ./check_nt -H 192.168.8.14 -p 12489 -v UPTIME
System Uptime - 23 day(s) 9 hour(s) 57 minute(s)
[root@web3 libexec]# ./check_nrpe -H 192.168.8.14
I (0,4,0,172 2012-05-08) seem to be doing fine...

如果能正常输出,表示正常 。需要注意的是check_nt默认检测的端口是 1248 ,而nscp 默认提供的check_nt端口是12489 。

2、如果上面的输出不正常。先在监控端使用下面的命令检测端口监听是否正常 。即确认是否启动 。

nestat -ano|findstr 5666
nestat -ano|findstr 12489

如果正常监听,再查看防火墙是否允许通过 防火墙 --> 例外 --> 添加端口 5666/TCP 12489/TCP  。

3、如果端口都未发现监听,就需要手动启下服务 。

services.msc --> NSClient++ 属性--> 登录 ---> 允许服务与桌面交互 --> 确定 

三、nagios server端配置 

关于nrpe 、nsca块不用新增,一般在检测其他机器时 ,都会事先配置过的 。这里只讲下check_nt ,配置如下:

define command{
        command_name    check_nt
        command_line    $USER1$/check_nt -H $HOSTADDRESS$ -p 12489 -v $ARG1$ $ARG2$
        }

如果设置了密码,其中command_line的行,需要换成下面的:

command_line    $USER1$/check_nt -H $HOSTADDRESS$ -p 12489  -s 888888 -v $ARG1$ $ARG2$

对主机监测的cfg配置文件增加下面的内容:

define service{
        use                     windows-service,srv-pnp
        host_name               361way
        service_description     Uptime
        check_command           check_nt!UPTIME
        }
define service{
        use                     windows-service,srv-pnp
        host_name               361way
        service_description     CPU Load
        check_command           check_nt!CPULOAD!-l 5,80,90
        }
define service{
        use                     windows-service,srv-pnp
        host_name               361way
        service_description     D: Drive Space
        check_command           check_nt!USEDDISKSPACE!-l d -w 80 -c 90
        }
define service{
        use                     windows-service
        host_name               361way
        service_description     java
        check_command           check_nt!PROCSTATE!-d SHOWALL -l java.exe
        }
define service{
        use                     windows-service
        host_name               361way
        service_description     explorer
        check_command           check_nt!PROCSTATE!-d SHOWALL -l exploer.exe
        }

平时在对windows监控时主要使用check_nt插件,check_nt的其他用法,可以在nagios server的libexec目录里执行./check_nt -h查看更多帮助说明。如果想使用check_nrpe也可以,不过需要先在NSClient或nscp安装目录下的nsclient.ini配置文件中进行配置定义:

check_cpu = checkCPU warn=80 crit=90 time=5m time=1m time=30s
check_disk = CheckDriveSize MinWarn=30% MinCrit=15% CheckAll FilterType=FIXED

使用和linux上的check_nrpe一样:

[root@web3 libexec]# ./check_nrpe -H 192.168.8.14 -c check_cpu
OK CPU Load ok.|'5m'=6%;80;90 '1m'=8%;80;90 '30s'=9%;80;90




本站的发展离不开您的资助,金额随意,欢迎来赏!

You can donate through PayPal.
My paypal id: itybku@139.com
Paypal page: https://www.paypal.me/361way

分类: 开源软件 标签:
  1. 本文目前尚无任何评论.
  1. 本文目前尚无任何 trackbacks 和 pingbacks.