如何将Windows主机添加到Nagios监控服务器

本文介绍如何监视Windows计算机私人 ”的服务,如CPU负载磁盘使用率内存使用率, 服务等等。对于这一点,我们需要在Windows机器上安装NSClient ++插件。 该插件通过与check_nt插件通信行为的Windows计算机和Nagios的和显示器实际服务之间的代理。 check_nt插件已经安装Nagios监控服务器上,如果您是我们的Nagios的安装指南。

我们假设你已经安装并根据我们的以下指南配置的Nagios服务器。

  1. 如何在RHEL / CentOS 6.x / 5.x和Fedora 19/18/17上安装Nagios 4.0.1
  2. 将Linux主机添加到Nagios监控服务器

要监视Windows机器 ,你将需要遵循几个步骤,他们是:

  1. 在Windows计算机上安装NSClient ++ addon。
  2. 配置Nagios服务器以监视Windows计算机。
  3. 为Windows机器监视添加新的主机和服务定义。
  4. 重新启动Nagios服务。

为了使本指南简单,更容易,因为你在Nagios的安装已经完成了一些配置的。

  1. 一个check_nt命令定义已添加到command.cfg文件。 这个定义命令由check_nt插件来监视Windows服务。
  2. Windows的服务器主机模板已经在templates.cfg文件中创建。 此模板允许您添加新的Windows主机定义。

上述两个文件“command.cfg”“templates.cfg”文件可以在/ usr /本地/ nagios的在/ etc /对象/目录中找到。 您可以修改和添加自己的定义,以满足您的要求。 但是,我建议你按照本文中介绍的指示,你会成功的监测您的Windows主机,在不到20分钟

第1步:在Windows计算机上安装NSClient ++代理

请使用下面的说明对远程Windows主机上安装NSClient ++代理 首先下载最新的稳定版本NSClient ++ 0.3.1插件的源文件,可以在下面的链接中找到。

  1. http://sourceforge.net/projects/nscplus/

一旦你下载了最新的稳定版本,解压NSClient ++文件到一个新的C:\ NSClient ++目录。

\ NSClient ++目录- > 运行 - >键入“cmd”,然后按回车,切换到C现在从开始屏幕打开一个MS-DOS命令提示符。

C:\NSClient++

接下来,注册使用以下命令在系统上NSClient ++服务。

nsclient++ /install

最后,安装使用以下命令将NSClient ++系统托盘

nsclient++ SysTray

打开Windows服务管理器 ,右击NSClient属性 ,然后“ 登录 ”选项卡,然后单击复选框,上面写着“ 允许服务与桌面交互 ”。 如果尚未允许,请勾选方块以允许。

安装NSClient ++

位于C打开NSC.INI文件:\ NSClient ++目录,并取消注释所有的“ 模块 ”一节中规定,除了CheckWMI.dllRemoteConfiguration.dll的模块。

[modules]
;# NSCLIENT++ MODULES
;# A list with DLLs to load at startup.
;  You will need to enable some of these for NSClient++ to work.
; ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !
; *                                                               *
; * N O T I C E ! ! ! - Y O U   H A V E   T O   E D I T   T H I S *
; *                                                               *
; ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! !
FileLogger.dll
CheckSystem.dll
CheckDisk.dll
NSClientListener.dll
NRPEListener.dll
SysTray.dll
CheckEventLog.dll
CheckHelpers.dll
;CheckWMI.dll
;
; RemoteConfiguration IS AN EXTREM EARLY IDEA SO DONT USE FOR PRODUCTION ENVIROMNEMTS!
;RemoteConfiguration.dll
; NSCA Agent is a new beta module use with care!
;NSCAAgent.dll
; LUA script module used to write your own "check deamon" (sort of) early beta.
;LUAScript.dll
; Script to check external scripts and/or internal aliases, early beta.
;CheckExternalScripts.dll
; Check other hosts through NRPE extreme beta and probably a bit dangerous! :)
;NRPEClient.dll

取消对“allowed_hosts”中的“ 设置 ”部分中,定义你的Nagios监控服务器IP地址或留空让任何主机进行连接。

[Settings]
;# ALLOWED HOST ADDRESSES
;  This is a comma-delimited list of IP address of hosts that are allowed to talk to the all daemons.
;  If leave this blank anyone can access the deamon remotly (NSClient still requires a valid password).
;  The syntax is host or ip/mask so 192.168.0.0/24 will allow anyone on that subnet access
allowed_hosts=172.16.27.41

取消对“ ”中的“NSClient”部分中,并设置为默认端口“12489”。 确保打开“12489”端口上的Windows防火墙

[NSClient]
;# NSCLIENT PORT NUMBER
;  This is the port the NSClientListener.dll will listen to.
port=12489

终于开始用下面的命令NSClient ++服务。

nsclient++ /start

如果你的正确安装和配置,你应该看到在一个黑色的内'M'黄色圆圈系统托盘中一个新的图标。

第2步:配置Nagios服务器和添加Windows主机

现在登录到Nagios的服务器 ,并添加Nagios配置文件中的某些对象定义监测新的Windows计算机。 打开windows.cfg文件和Vi编辑器中编辑。

[root@youcl]# vi /usr/local/nagios/etc/objects/windows.cfg

已为Windows机器定义的示例Windows主机定义,你可以简单地更改主机定义,就像HOST_NAME, 别名地址字段到合适你的Windows机器的值。

###############################################################################
###############################################################################
#
# HOST DEFINITIONS
#
###############################################################################
###############################################################################
# Define a host for the Windows machine we'll be monitoring
# Change the host_name, alias, and address to fit your situation
define host{
use             windows-server  ; Inherit default values from a template
host_name       winserver       ; The name we're giving to this host
alias           My Windows Server       ; A longer name associated with the host
address         172.31.41.53    ; IP address of the host
}

以下服务已添加和windows.cfg文件中启用。 如果希望添加一些其他需要监视的服务定义,可以简单地将这些定义添加到同一个配置文件中。 确保与在上述步骤中定义HOST_NAME改变在host_name对于这些所有的服务。

define service{
use			generic-service
host_name		winserver
service_description	NSClient++ Version
check_command		check_nt!CLIENTVERSION
}
Add the following service definition to monitor the uptime of the Windows server.
define service{
use			generic-service
host_name		winserver
service_description	Uptime
check_command		check_nt!UPTIME
}
Add the following service definition to monitor the CPU utilization on the Windows server and generate a CRITICAL alert if the 5-minute CPU load is 90% or more or a WARNING alert if the 5-minute load is 80% or greater.
define service{
use			generic-service
host_name		winserver
service_description	CPU Load
check_command		check_nt!CPULOAD!-l 5,80,90
}
Add the following service definition to monitor memory usage on the Windows server and generate a CRITICAL alert if memory usage is 90% or more or a WARNING alert if memory usage is 80% or greater.
define service{
use			generic-service
host_name		winserver
service_description	Memory Usage
check_command		check_nt!MEMUSE!-w 80 -c 90
}
Add the following service definition to monitor usage of the C:\ drive on the Windows server and generate a CRITICAL alert if disk usage is 90% or more or a WARNING alert if disk usage is 80% or greater.
define service{
use			generic-service
host_name		winserver
service_description	C:\ Drive Space
check_command		check_nt!USEDDISKSPACE!-l c -w 80 -c 90
}
Add the following service definition to monitor the W3SVC service state on the Windows machine and generate a CRITICAL alert if the service is stopped.
define service{
use			generic-service
host_name		winserver
service_description	W3SVC
check_command		check_nt!SERVICESTATE!-d SHOWALL -l W3SVC
}
Add the following service definition to monitor the Explorer.exe process on the Windows machine and generate a CRITICAL alert if the process is not running.
define service{
use			generic-service
host_name		winserver
service_description	Explorer
check_command		check_nt!PROCSTATE!-d SHOWALL -l Explorer.exe
}

最后,在注释中/usr/local/nagios/etc/nagios.cfg文件windows.cfg。

[root@youcl]# vi /usr/local/nagios/etc/nagios.cfg
# Definitions for monitoring a Windows machine
cfg_file=/usr/local/nagios/etc/objects/windows.cfg

最后,验证任何误差修改Nagios配置文件。

[root@youcl]# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
Total Warnings: 0
Total Errors:   0
Things look okay - No serious problems were detected during the pre-flight check

如果验证过程抛出任何错误消息,请修复这些错误,直到验证过程完成,没有任何错误消息。 一旦您修复这些错误,重新启动Nagios服务。

[root@youcl]# service nagios restart
Running configuration check...done.
Stopping nagios: done.
Starting nagios: done.

而已。 现在去给Nagios监控Web界面在“HTTP://您的服务器,IP地址/ nagios的 ”或“HTTP:// FQDN / nagios的 ”,并提供用户名“nagiosadmin”和密码。 检查远程Windows主机 ,并将被监控。

Nagios监视Windows主机

而已! 就目前而言,我起来崭露头角文章中,我将告诉你如何打印机交换机添加到Nagios的监控服务器 如果您在同时加入的Windows主机Nagios的任何困难。 请不要通过评论区发表评论您的疑问,到那时敬请关注youcl.com更多的这类贵重物品。

赞(52) 打赏
未经允许不得转载:优客志 » 系统运维
分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏