您的位置:首页 > 移动开发 > IOS开发

nagios 监控windows客户端

2014-04-25 10:34 344 查看
在实验过程中,参考此博文,另在最后发现在windows.cfg引用主机名字段不能含有特殊字符如:main+db等,在使用过程中请注意

Nagios的插件-NSClient++

2012-10-26 10:01:41

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、安装插件与配置

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



配置NSclient

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

确保这些模块都添加了



Allowed_hosts 修改为nagios服务器端的ip



修改为自动启动



模块作用说明,如下表

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插件的使用说明

[root@localhost libexec]# ./check_nt -h
。。。。。。。。省略一些
This plugin collects data from the NSClient service running on a
Windows NT/2000/XP/2003 server.
Usage:
check_nt -H host -v variable [-p port] [-w warning] [-c critical]
[-l params] [-d SHOWALL] [-u] [-t timeout]
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命令

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

4、Windows系统监控应用

首先定义一个需要监控的主机,本例为监控本机,命令如下:
define host{
use               windows-server
host_name        10.15.62.137
alias              My Windows Server
address          10.15.62.137
}


1) 监控 windows 主机的内存使用状况
define service{
host_name               10.15.62.137
service_description     memory usage
use                     generic-service
check_command           check_nt!MEMUSE!-w 80 -c 90
}


2) 检查windows主机是否已经安装了NSClient++,及它的版本号
define service{
host_name               10.15.62.137
service_description     nsca version
use                     generic-service
check_command           check_nt!CLIENTVERSION
}

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

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



总结:

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服务运行情况,如服务终止,则会发出CRITICAL(check_nt!SERVICESTATE! -d SHOWALL -l MySQL)等等,这里就不再一一列举,NSClient不借用插件已经满足了我们的基本监控需求,所以如果要监控windows服务器,NSClient还是不错的选择。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: