Nagios的插件
NSClient的介绍:NSClient++是用来监控Windows主机时安装在Windows主机上的组件。被监控机上安装NSClient,,当监控主机将监控请求发给NSClient后,NSClient直接完成监控,所有的监控是由NSClient完成的.不需要额外的插件。这也说明了NSClient不灵活,没有可扩展性.它只能完成自己本身包含的监控操作,不能由一些插件来扩展.好在NSClient已经做的不错了,基本上可以完全满足我们的监控需要。
NSClient的工作原理图,如下:
http://blog.运维网.com/attachment/201210/095549164.png
NSClient++安装
关闭windows主机的防火墙
1、下载NSClient++插件
http://exchange.nagios.org/directory/Addons/Monitoring-Agents/NSClient%2B%2B/details
NSClient++-0.3.8-Win32
2、安装插件与配置
1) 安装过程十分简单,直接点击下一步,下一步即可。安装过程注意如下图的设置即可
http://blog.运维网.com/attachment/201210/095603491.png
2) 配置NSClient
编辑NSClient安装目录下的NSC.ini文件,修改后,重启NSClient即可,如下图
确保这些模块都添加了
http://blog.运维网.com/attachment/201210/095616602.png
Allowed_hosts 修改为nagios服务器端的ip
http://blog.运维网.com/attachment/201210/095629211.png
修改为自动启动
http://blog.运维网.com/attachment/201210/095642751.png
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插件。原理图如下
http://blog.运维网.com/attachment/201210/095654846.png
1、check_nt插件的使用说明
[*]# ./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命令
[*]# 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
[*]# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
[*]# service nagios restart
6、监控效果图
http://blog.运维网.com/attachment/201210/095707239.png
总结:
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还是不错的选择。
页:
[1]