Nagios监控windows服务器有三种实现方式:SNMP,NSClient++,NRPE,后面两种方式都需要在Windows服务器上安装agent,现以NSClient++方式来监控Windows Server 2003.
WINDOWS2003SERVER的IP为:192.168.110.119
Nagios监控服务器IP为:192.168.110.157
1、按上篇博客中的方法先搭建好Nagios监控服务器。
2、安装NSClient++
访问http://nsclient.org/nscp/下载NSClient++,这里我使用的是NSClient++ 0.3.8.75的msi安装包。下载之后直接安装,过程中会提示输入Nagios监控服务器地址和密码。地址填写正确,密码不用设置。
安装如下图所示
3、配置NSClient++(实际上不用配置)
编辑安装目录下的NES.ini文件,打开NSClient++的端口。方法为找到:
[NSClient]
;port=12489
去掉port前的“;”就可以启用12489端口。
我的是安装在服务器的program files下的NSClient++-Win32-0.3.8目录中。在cmd中执行:
cd C:\Program files\NSClient++-Win32-0.3.5
netstat -an | more
查看12489端口是否正常监听在。
因为安装时候需要的模块已经勾选了,所以配置文件中不用再作设置。否则可以通过去掉每个模块前的;来启用该模块。
4、在Nagios监控服务器上测试
cd /usr/local/nagios/libexec ./check_nt -H 192.168.110.119 -p 12489 -s 770519 -v UPTIME
5、定义命令
cd /usr/local/nagios/etc/objects vim commands.cfg 在最后面加上以下内容: define command{ command_name check_nt command_line $USER1$/check_nt -H $HOSTADDRESS$ -p 12489 -s 770519 -v $ARG1$ $ARG2$ }
6、定义主机
cd /usr/local/nagios/etc/objects cp windows.cfg 119server.cfg vim 119server.cfg define host{ use windows-server host_name 119server #定义主机名,后面服务中的 host_name和这个要一样 alias My Windows Server address 192.168.110.119 } define service{ use generic-service host_name 119server #和上面主机定义中的host_name一样 service_description Uptime check_command check_nt!UPTIME }
7、启用配置文件
cd /usr/local/nagios/etc vim nagios.cfg 增加如下内容: cfg_file=/usr/local/nagios/etc/objects/119server.cfg
8、检测Nagios配置文件是否有错误
/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
service nagios restart
10、访问Nagios服务器
http://192.168.110.157/nagios