NSClient++ 0.3.x和NSClient++ 0.4.x的配置完全不一样,官方的文档也没有全部更新。我记录下自己的一些操作。
 
一、下载安装NSClient++
1、到http://nsclient.org/nscp/downloads页面下载程序,这里以ZIP包为例。
 
Nagios Windows客户端NSClient++ 0.4.x安装配置-LMLPHP
 
2、将zip包解压为C:\NSCP
在Powershell中运行以下命令:
#安装nscp服务
C:\NSCP\nscp.exe service --install --name nscp
Nagios Windows客户端NSClient++ 0.4.x安装配置-LMLPHP
 
3、根据需要启用模块,所有模块列表见C:\NSCP\modules文件夹
在Powershell中运行以下命令:
C:\NSCP\nscp.exe settings --activate-module CheckDisk
C:\NSCP\nscp.exe settings --activate-module CheckEventLog
C:\NSCP\nscp.exe settings --activate-module CheckExternalScripts
C:\NSCP\nscp.exe settings --activate-module CheckHelpers
C:\NSCP\nscp.exe settings --activate-module CheckSystem
C:\NSCP\nscp.exe settings --activate-module CheckWMI
C:\NSCP\nscp.exe settings --activate-module NRPEServer
 
4、添加已启用模块的默认设置
在PowerSHell
#添加默认设置
C:\NSCP\nscp.exe settings --generate settings --add-defaults
Nagios Windows客户端NSClient++ 0.4.x安装配置-LMLPHP
这样在C:\NSCP就有了配置文件nsclient.ini
 
添加Windows防火墙策略,开放5666端口给C:\NSCP\nscp.exe
在Powershell或CMD中输入:
netsh advfirewall firewall add rule name program="C:\NSCP\nscp.exe" localip=any remoteip=any profile=any action=allow
根据需要限制此策略的远程IP
 
修改NSClient++的允许服务器IP
修改配置文件nsclient.ini中[/settings/default]下的【allowed hosts】的值添加Nagios或Icinga服务端地址。
Nagios Windows客户端NSClient++ 0.4.x安装配置-LMLPHP
 
 
二、CheckCounter设置
CheckChounter功能属于CheckSystem模块
使用这个功能需要将配置文件nsclient.ini中[/settings/NRPE/server]下的【allow arguments】和【allow nasty characters】的值改为True。
Nagios Windows客户端NSClient++ 0.4.x安装配置-LMLPHP
 
重启nscp服务
net stop nscp
net start nscp
 
三、检查是否能够获取值
确认监控主机上的NRPE插件在编译时使用了--enable-command-args参数
 
在Linux监控端上运行一下命令确认配置是否成功:
check_nrpe ... MaxCrit
Nagios Windows客户端NSClient++ 0.4.x安装配置-LMLPHP
不仅返回正常,还有性能数据。
另外如下图所示可以指定性能数据中label的名称
Nagios Windows客户端NSClient++ 0.4.x安装配置-LMLPHP
 
一些排错:
a. 报“CHECK_NRPE: Socket timeout after 10 seconds.”错误的话请检查服务是否启动,防火墙策略是否正确。
b. 报“CHECK_NRPE: Error - Could not complete SSL handshake.”错误的话请检查主机是否在Allowed Hosts里面,修改配置文件中该项后是否未重启服务。
c. 报“Exception processing request: Request command contained illegal metachars!”错误的话请检查allow arguments和allow nasty characters是否都为True,修改配置文件中该项后是否未重启服务。
 
 
 
参考资料:
NSClient++ Help (#1) - Can't NRPE -c CheckCounter (#1044) - Message List http://www.nsclient.org/nscp/discussion/message/2775
Manual Installation of NSClient++ 0.4.x http://nsclient.org/nscp/wiki/doc/installation/0.4.x/manual
05-07 15:10