Nagios的插件-NSClient++

NSClient的介绍:

NSClient++是用来监控Windows主机时安装在Windows主机上的组件被监控机上安装NSClient,,当监控主机将监控请求发给NSClient后,NSClient直接完成监控,所有的监控是由NSClient完成的.不需要额外的插件。这也说明了NSClient不灵活,没有可扩展性.它只能完成自己本身包含的监控操作,不能由一些插件来扩展.好在NSClient已经做的不错了,基本上可以完全满足我们的监控需要。

NSClient的工作原理图,如下:

 

NSClient++安装

关闭windows主机的防火墙 

1、下载NSClient++插件

http://exchange.nagios.org/directory/Addons/Monitoring-Agents/NSClient%2B%2B/details

 

NSClient++-0.3.8-Win32 

2、安装插件与配置

1) 安装过程十分简单,直接点击下一步,下一步即可。安装过程注意如下图的设置即可

 

2) 配置NSClient

编辑NSClient安装目录下的NSC.ini文件,修改后,重启NSClient即可,如下图

确保这些模块都添加了 

 

Allowed_hosts 修改为nagios服务器端的ip 

 

 

修改为自动启动

 

3) 模块作用说明,如下表

Module

Description

Commands

CheckSystem.dll

Handles many system checks

CPU, MEMORY, COUNTER etc

CheckDisk.dll

Handles Disk related checks

USEDDISKSPACE

FileLogger.dll

Logs errors to a file so you can see what is going on

N/A

NSClientListener.dll

Listens and responds to incoming requests from nagios

N/A

 

NSClient应用监控

NSClient++与Nagios服务器通信,主要使用Nagios服务器的check_nt插件。原理图如下

 

1、check_nt插件的使用说明

  
  
  
  
  1. [root@localhost libexec]# ./check_nt -h 
  2. 。。。。。。。。省略一些 
  3. This plugin collects data from the NSClient service running on a 
  4. Windows NT/2000/XP/2003 server. 
  5. Usage: 
  6. check_nt -H host -v variable [-p port] [-w warning] [-c critical] 
  7. [-l params] [-d SHOWALL] [-u] [-t timeout] 
  8. check_nt -H 192.168.1.1 -p 12489 -v INSTANCES -l Process 

2、检查Nagios目录下的libexec子目录,一定要存在check_nt

(例如:/usr/local/nagios/libexec/check_nt)

 

3、查看Nagios服务器下定义check_nt命令

  
  
  
  
  1. [root@localhost etc]# vim commands.cfg 
  2. define command { 
  3.             command_name check_nt 
  4.             command_line $USER1$/check_nt -H $HOSTADDRESS$ -p 12489 -v $ARG1$ $ARG2$ 
  5. register 1 

4、Windows系统监控应用

首先定义一个需要监控的主机,本例为监控本机,命令如下:

  
  
  
  
  1. define host{ 
  2.          use               windows-server   
  3.          host_name        10.15.62.137     
  4.          alias              My Windows Server       
  5.          address          10.15.62.137     
  6.         } 

1) 监控 windows 主机的内存使用状况 

  
  
  
  
  1. define service{ 
  2.         host_name               10.15.62.137 
  3.         service_description     memory usage 
  4.         use                     generic-service 
  5.         check_command           check_nt!MEMUSE!-w 80 -c 90 

2) 检查windows主机是否已经安装了NSClient++,及它的版本号

  
  
  
  
  1. define service{ 
  2.         host_name               10.15.62.137 
  3.         service_description     nsca version 
  4.         use                     generic-service 
  5.         check_command           check_nt!CLIENTVERSION 

5、检查nagios.cfg文件是否有误,然后重启nagios

  
  
  
  
  1. [root@localhost services]# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg  
  2. [root@localhost services]# service nagios restart 

6、监控效果图

总结:

 NSClient++还可以监控 windows 主机的 CPU 负载 check_nt!CPULOAD!监控 windows 主机的开机运作时间check_nt!UPTIME),监控 windows 主机的 C:\ 的空间使用量check_nt!USEDDISKSPACE!-l c! -w 80 -c 90), 监控 windows 主机的 Explorer.exe 进程运作状况,如程序终止,则会发 Critical (check_nt!PROCSTATE! -d SHOWALL -l explorer.exe),监控Windows主机的MySQL服务运行情况,如服务终止,则会发出CRITICALcheck_nt!SERVICESTATE! -d SHOWALL -l MySQL)等等,这里就不再一一列举,NSClient不借用插件已经满足了我们的基本监控需求,所以如果要监控windows服务器,NSClient还是不错的选择。

你可能感兴趣的:(nagios,nsclient++)