nagios window客户端监控

 环境:nagios server ip:192.168.1.2  客户端:192.168.1.78

这篇文档向你介绍怎样用 Nagios 去监控一个 Windows 主机的服务,包括:
  • 内存使用Memory usage
  • CPU负载CPU load
  • 硬盘空间Disk usage
  • 服务状态Service states
  • 运行进程Running processes
原理图解

      

 

监控私有的服务和 windows 主机需要你安装一个 agent windows 上,它就是 NSClient ++。
现在我们就在 windows 上来安装 NSClient++ addon 。用 check_nt 插件来和 NSClient++ addon
交流信息。 check_nt 插件必须已经安装到 Nagios server 端了。
其它 windows 客户端 ( 例如 NC_Net ) 也能用来代替 NSClient++ 。这里也不作讨论。
步骤:
监控一个新的 Windows 主机需要你按照一下几个步骤来进行,它们是:
1.       准备工作,也就是你有一个 nagios 监控系统,修改几处配置文件。
2.       安装客户端到要监控 Windows
3.       创建一个新的主机和服务来监控 W indows 主机
4.       重新起动 N agios
为了是你的工作更加简单,一些配置文件已经为你写好,你只需要做一些修改工作。
  • 一个check_nt命令已经在commands.cfg文件中被定义,这样你就可以用check_nt插件来监控Window services了。
  • 一个Windows server host 模板(叫做windows-server)也已经为你创建好了,在一个
  • 叫做templates.cfg的文件中。这样你就可以简单的去添加一个Windows host definitions
上面提到的所有文件都在 /usr/local/nagios/etc/objects/ 目录下。你可以根据自己的需要去修改配置文件。但是现在你需要做得就是按照下面的说明去操作。
一:准备工作
如果这是你第一次用 Nagios 来监控 Windows machine ,你必须先修改一下文件,来监控你的 第一个 Windows machine
A :编辑 Nagios 的主配置文件
命令: vi /usr/local/nagios/etc/nagios.cfg
B 添加如下
cfg_file=/usr/local/nagios/etc/objects/ 192.168.1.78 .cfg
C :保存并退出文件
二:安装 windows 客户端
Before you can begin monitoring private services and attributes of Windows machi
我这里选用的是 NSClient++ addon ,你可以在 http://sourceforge.net/projects/nscplus .
找到它的身影。那么现在就让我们来安装 NSClient++ addon 吧。
1 :若没有下载 NSClient++ addon 的最新版,请来这里转悠一下
http://sourceforge.net/projects/nscplus
2 :解压 NSClient++ files C:\NSClient++ 目录
3 :打开一个命令提示符界面并转到 C:\NSClient++ 目录
命令: cd C:\NSClient++
4 :使用一下命令注册 NSClient++ system service 到系统
命令: nsclient++ /install
5 :安装 NSClient++ systray ('SysTray' 大小写敏感 ):
命令: nsclient++ SysTray
注:我在几个电脑上都试过了,此条命令有点问题,但是我还是都执行了。
6 :打开计算机管理服务和应用程序,在服务项中找到 NSClientpp 服务,打开此服务的选项卡

,找到“登录”选项卡,将登录身份下的本地系统帐户下的“允许服务与桌面交互” 选上,如下图:

 

 

 

7 :编辑 NSC.INI 文件 ( C:\NSClient++ 目录下 ) ,做以下修改:
  • [modules]项中,将所有的*.dll前的注释去掉,除了CheckWMI.dllRemoteConfiguration.dll
  • [Settings]项中有客户端的密码设置,此项我还没有研究明白,暂时不做处理
  • [Settings] 项中,去掉'allowed_hosts'前的注释,并把你的Nagios server IP填上。
  • 例如allowed_hosts=127.0.0.1,192.168.1.2
  [NSClient] 项中,将 'port' 前的注释去掉,并保证端口号为 '12489' ( 默认端口 )
TIP :去掉注释就是将该行的第一个 号去掉,仅此而已。
8 :在命令行下启动 NSClient++ service
命令: nsclient++ /start
9 :如果安装成功,在你的任务栏的右边将会出现两个 十字架
10 :成功了,现在 Windows server 就可以添加到 Nagios monitoring configuration 中了 ...
三:配置 nagios
现在是为你的 nagios 定义 objects 的时间了。 为了省力,我打了如下命令
cp /usr/local/nagios/etc/objects/ windows.cfg / usr/local/nagios/etc/objects/ 192.168.1.78.cfg
  1 :打开 192.168.1.78 .cfg 删掉注释行, 做以下编辑
命令: vi /usr/local/nagios/etc/objects/ 192.168.1.78 .cfg
以下是 192.168.1.78 .cfg 文件的内容
define host{
use windows-server           ; 保留此行不做任何修改
host_name winserver                   可以修改为你喜欢的名字
alias My Windows Server           别名
address 192.168.1. 78                   windows 主机的 IP
}
如果是你的 第一个 Windows machine ,你也可以只修改 IP 那一项。
以下是服务的定义:
2 :客户端的版本
define service{
use generic-service
host_name winserver     ;对应上面你定义的名字
service_description NSClient++ Version
check_command check_nt!CLIENTVERSION
}
3 :客户端的开机总时间
define service{
use generic-service
host_name winserver
service_description Uptime
check_command check_nt!UPTIME
}
 
4 CPU 的使用
define service{
use generic-service
host_name winserver
service_description CPU Load
check_command check_nt!CPULOAD!-l 5,80,90
}
 
5 :内存的使用
如果超过 90 %则为 CRITICAL ,如果超过 80 %则为 WARNING
define service{
use generic-service
host_name winserver
service_description Memory Usage
check_command check_nt!MEMUSE!-w 80 -c 90
}
 
6 C 盘的使用
如果超过 90 %则为 CRITICAL ,如果超过 80 %则为 WARNING 。若要监控其它盘,将 service_description C:\ Drive Space 中的 C 改为 D E ,或 F 等,将 check_command check_nt!USEDDISKSPACE!-l c -w 80 -c 90 -l 后的 c 改为对应的 d e f 等。
define service{
use generic-service
host_name winserver
service_description C :\ Drive Space
check_command check_nt!USEDDISKSPACE!-l c -w 80 -c 90
}
 
 
7 Explorer 的监控
监控 Explorer 程序是否在运行,当然你也可以修改 -l 之后的 Explorer.exe ,来监控其它程序的运行
define service{
use generic-service
host_name winserver
service_description Explorer
check_command check_nt!PROCSTATE!-d SHOWALL -l Explorer.exe
}
8 :增加 Ftp 监控
define service{
        use                     generic-service
        host_name               winserver
        service_description     ftp
        check_command           check_ftp
        }
保存此文件
四:密码保护(我的 nagios NSClient ++没有密码设置)
如果你在 NSClient++ 配置文件中定义了你的密码,你就必须修改你的 check_nt 命令
打开 commands.cfg 文件来编辑
命令: vi /usr/local/nagios/etc/commands.cfg
check_nt 命令中包含的 "-s <PASSWORD>" 项的 PASSWORD 改为你的 windows 上设定的密码
define command{
command_name check_nt
command_line $USER1$/check_nt -H $HOSTADDRESS$ -p 12489 -s PASSWORD -v $ARG1$ $ARG2$
}
Save the file.
五:重启 nagios
此时你就会看到你监控的 windows 主机,如下图

 

 

你可能感兴趣的:(windows,职场,监控,nagios,休闲)