1、安装nagios windows客户端

下载NSClient++的安装包,注意根据实际的32/64CPU来下载

下载地址 http://sourceforge.net/projects/nscplus

安装方法:直接双击登录

在C:/program files/nscplus目录中编辑NSC.INI,做以下更改

在[Module]部分,除了CheckWMI.dll和RemoteConfiguration.dll这两行的注释不要去掉,其他DLL的注释都去掉。
    在[Setting]部分的password设定一个密码,并把前面的注释去掉。

password=secret-password 改为 password=123456

在[Setting]部分的allowed_hosts部分设定Nagios的服务器IP或者设定一个IP段,并把前面的注释去掉。

allowed_hosts=192.168.200.249/32

在[NSClient]部分将port前的注释去掉,确认port的端口号是12489

  启动nsclient++服务

2、配置Nagios

  修改nagios.cfg文件,增加如下行

  cfg_dir=/usr/local/nagios/etc/services

  然后再/usr/local/nagios/etc/services下建立文件

  121.43.151.46.cfg(替换成你自己的IP地址)

3、在host的定义部分,可以修改实例中的host_name,alias,address三个部分来的参数。第一个参数use则是继承了template.cfg中对Windows的监控参数

define host{
        use             windows-server  ; 从template中继承相关监控参数
        host_name       winserver       ; 主机名称
        alias           My Windows Server       ; 别名
        address         192.168.1.2     ; IP地址
        }

4、也可以自己添加host_group

define hostgroup{
        hostgroup_name  windows-servers ; The name of the hostgroup
        alias           Windows Servers ; Long name of the group
        }

在Service定义部分

首先需要设定以下内容,用于确认监控对象的NSClient++的版本是否正确

define service{
use generic-service
host_name winserver
service_description NSClient++ Version
check_command check_nt!CLIENTVERSION
}

然后是定义监控对象的正常运行时间

check_command           check_nt!UPTIME

随后是定义CPU的负载状况,下面的定义表示在5分钟内的平均负载超过80%则发出警告WARNING,而超过90%则是危机报警CRITICAL alert

check_command           check_nt!CPULOAD!-l 5,80,90

定义内存负载状况,当内存使用率达到80则warning 90%则CRITICAL alert

check_command check_nt!MEMUSE!-w 80 -c 90

监控C盘空间,使用率达到80则warning 90%则CRITICAL alert

check_command check_nt!USEDDISKSPACE!-l c -w 80 -c 90

监控服务状态的格式,当服务停止了则发送CRITICAL alert

check_command check_nt!SERVICESTATE!-d SHOWALL -l W3SVC

监控系统进程,当进程处于非运行状态时,则发送CRITICAL alert

check_command check_nt!PROCSTATE!-d SHOWALL -l Explorer.exe

8.密码设定

编辑/usr/local/nagios/etc/objects/commands.cfg 在check_nt部分中,command_line后面添加一个参数-s "NSClient主机的密码"

command_line $USER1$/check_nt -H $HOSTADDRESS$ -p 12489 -s PASSWORD -v $ARG1$ $ARG2$

可以通过以下指令测试设备响应是否正常

/usr/local/nagios/libexec/check_nt -H 主机IP -p 12489 -s 密码 -v UPTIME

如果反馈的信息是System Uptime - 0 day(s) 8 hour(s) 44 minute(s) 则表示连接正常。

如果显示为could not fetch information from server,则有以下可能

密码不正确(最傻的可能,也是经常发生的可能)

服务器上有防火墙,需要开放12489端口。

在windows上的NSC.INI上的allow_hosts没有添加正确的nagios IP、

9.重新启动Nagios服务

在修改nagios配置文件之后,则可以运行/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

来验证配置文件是否正确。

service nagios restart

看看nagios的管理页面,被监控的windows服务器是否显示

使用nagios检测windows服务器的更多相关文章

  1. Nagios 监控Windows服务器(详细篇)

    1. 监控内容 windows服务器的内部参数包括以下 a. 内存使用状况 b. CPU负载 c. 磁盘使用状况 d. 服务状态 e. 运行的进程 2. 监控原理 在windows服务器内安装NSCl ...

  2. Send email alert from Performance Monitor using PowerShell script (检测windows服务器的cpu 硬盘 服务等性能,发email的方法) -摘自网络

    I have created an alert in Performance Monitor (Windows Server 2008 R2) that should be triggered whe ...

  3. 搭建基于Nagios的监控系统——之监控远程Windows服务器

    分享了如何监控Linux服务器,我们来看看使用Nagios如何监控Windows服务器. 第一部分:配置被监控的Windows服务器   首先,访问 http://sourceforge.net/pr ...

  4. 如何利用PowerShell完成的Windows服务器系统安全加固实践和基线检测

    0x00 前言简述 最近单位在做等保测评,由本人从事安全运维方面的工作(PS:曾经做过等保等方面的安全服务),所以自然而然的与信安的测评人员一起对接相关业务系统的检查,在做主机系统测评检查时发现了系统 ...

  5. nagios检测http

    /usr/local/nagios/etc/server/下相应的地址检测加上以下一段   (server下的cfg文件是检测相应服务器的模块)  define service{        use ...

  6. 部署AlwaysOn第一步:搭建Windows服务器故障转移集群

    在Windows Server 2012 R2 DataCenter 环境中搭建集群之前,首先要对Windows服务器故障转移集群(Windows Server Failover Cluster,简称 ...

  7. svn从Windows服务器上迁移到Linux上

    svn从Windows服务器迁移到Linux服务器    author:headsen chen   2017-10-16  16:50:32  个人原创,转载请注明.否则依法追究法律责任       ...

  8. Nagios 监控windows server Apache 服务

    监控机需要使用check_apachestatus.pl插件插件下载地址:https://exchange.nagios.org/directory/Tutorials/Other-Tutorials ...

  9. 【zabbix】Windows服务器获取IIS站点以及程序池状态

    在使用zabbix做Windows服务器监控的时候遇到一个比较棘手的问题,检测IIS站点状态. 普通情况下,只要用浏览器访问iis站点测试一下返回码是不是200即可判断状态,但是我这次遇到的是iis使 ...

随机推荐

  1. thinkphp 模板里嵌入 php代码

    <php> echo 'nihao';</php><?phpecho 'gge';?> Php代码可以和标签在模板文件中混合使用,可以在模板文件里面书写任意的PHP ...

  2. Centos6.5 DNS配置

    服务器端:192.168.186.130 1.安装 # yum -y install bind* 2.主要配置文件 [root@localhost named]# vim /etc/named.con ...

  3. [科普]什么是SysWow64

    Wow!什么是Wow64 今天有个同事,被SysWow64搞晕了.这里简单介绍一下. 64位的Windows并不是简单地把所有东西都编译成64位就万事大吉的.关于64位的CPU应该做成什么样子,Int ...

  4. BLOCK方式实现OC程序中多个页面判定用户是否登录

    在程序中经常会遇到这种情况,用户刚进入我们软件的时候我们是无需要求用户登录的,但是在下面的页面中,例如收藏,购买等页面的时候,显然在多个页面需要多次判定用户是否登录.试着用block简单的实现了一下该 ...

  5. 第12章—整合Redis

    spring boot 系列学习记录:http://www.cnblogs.com/jinxiaohang/p/8111057.html 码云源码地址:https://gitee.com/jinxia ...

  6. django--博客--forms组件-用户注册

    ---------------------------------------------前端页面简易代码----------------------------------------------- ...

  7. Django组件 - cookie、session、用户认证组件

    一.cookie 1.会话跟踪技术 1)什么是会话跟踪技术 我们需要先了解一下什么是会话!可以把会话理解为客户端与服务器之间的一次会晤,在一次会晤中可能会包含多次请求和响应.例如你给10086打个电话 ...

  8. Python 模块之 pyexcel_xls

    一.适用场景 在很多数据统计或者数据分析的场景中,我们都会使用到excel: 在一些系统中我们也会使用excel作为数据导入和导出的方式,那么如何使用python加以辅助我们快速进行excel数据做更 ...

  9. PHP memcache的使用教程

    (结尾附:完整版资源下载) 首先,为什么要用memcached?如果你看过InnoDB的一些书籍,你应该知道在存储引擎那一层是由一个内存池的.而在内存池中 又有一个缓冲池.而缓冲池就会缓冲查找的数据, ...

  10. JPA 对象关系映射之关联关系映射策略

    关联关系映射 关联关系映射,是映射关系中比较复杂的一种映射关系,总的说来有一对一.一对多和多对多几种关系.细分起来他们又有单向和双向之分.下面我们逐一介绍一下. 回页首 单向 OneToOne 单向一 ...