本文介绍如何监视Windows计算机的 “ 私人 ”的服务,如CPU负载 , 磁盘使用率 , 内存使用率, 服务等等。对于这一点,我们需要在Windows机器上安装NSClient ++插件。 该插件通过与check_nt插件通信行为的Windows计算机和Nagios的和显示器实际服务之间的代理。 该check_nt插件已经安装Nagios的监控服务器上,如果您是我们的Nagios的安装指南。
我们假设你已经安装并根据我们的以下指南配置的Nagios服务器。
要监视Windows机器 ,你将需要遵循几个步骤,他们是:
- 在Windows计算机上安装NSClient ++ addon。
- 配置Nagios服务器以监视Windows计算机。
- 为Windows机器监视添加新的主机和服务定义。
- 重新启动Nagios服务。
为了使本指南简单,更容易,因为你在Nagios的安装已经完成了一些配置的。
- 一个check_nt命令定义已添加到command.cfg文件。 这个定义命令由check_nt插件来监视Windows服务。
- Windows的服务器主机模板已经在templates.cfg文件中创建。 此模板允许您添加新的Windows主机定义。
上述两个文件“command.cfg”和“templates.cfg”文件可以在/ usr /本地/ nagios的在/ etc /对象/目录中找到。 您可以修改和添加自己的定义,以满足您的要求。 但是,我建议你按照本文中介绍的指示,你会成功的监测您的Windows主机,在不到20分钟 。
第1步:在Windows计算机上安装NSClient ++代理
请使用下面的说明对远程Windows主机上安装NSClient ++代理 。 首先下载最新的稳定版本NSClient ++ 0.3.1插件的源文件,可以在下面的链接中找到。
一旦你下载了最新的稳定版本,解压NSClient ++文件到一个新的C:\ NSClient ++目录。
\ NSClient ++目录- > 运行 - >键入“cmd”,然后按回车,切换到C现在从开始屏幕打开一个MS-DOS命令提示符。
C:\NSClient++
接下来,注册使用以下命令在系统上NSClient ++服务。
nsclient++ /install
最后,安装使用以下命令将NSClient ++系统托盘 。
nsclient++ SysTray
打开Windows服务管理器 ,右击NSClient去属性 ,然后“ 登录 ”选项卡,然后单击复选框,上面写着“ 允许服务与桌面交互 ”。 如果尚未允许,请勾选方块以允许。
安装NSClient ++
位于C打开NSC.INI文件:\ NSClient ++目录,并取消注释所有的“ 模块 ”一节中规定,除了CheckWMI.dll和RemoteConfiguration.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更多的这类贵重物品。