1. 监控内容

windows服务器的内部参数包括以下

a. 内存使用状况

b. CPU负载

c. 磁盘使用状况

d. 服务状态

e. 运行的进程

2. 监控原理

在windows服务器内安装NSClient++的监控引擎,nagios服务器通过check_nt来获取监控数据

3.配置步骤

a.修改启动参数

b.windows服务器安装监控引擎

c.在Nagios服务器内建立监控主机和监控服务配置

d.重新启动Nagios服务

4.确认已经配置是否存在

在/usr/local/nagios/etc/objects/commands.cfg中是否有以下内容(允许使用check_nt来监控windows服务)


  1. # 'check_nt' command definition
  2. define command{
  3. command_name    check_nt
  4. command_line    $USER1$/check_nt -H $HOSTADDRESS$ -p 12489 -v $ARG1$ $ARG2$
  5. }

在/usr/local/nagios/etc/object/templates.cfg中是否有以下内容(这个用于未来添加新主机的时候的范例)


  1. define host{
  2. name                    windows-server  ; The name of this host template
  3. use                     generic-host    ; Inherit default values from the generic-host template
  4. check_period            24x7            ; By default, Windows servers are monitored round the clock
  5. check_interval          5               ; Actively check the server every 5 minutes
  6. retry_interval          1               ; Schedule host check retries at 1 minute intervals
  7. max_check_attempts      10              ; Check each server 10 times (max)
  8. check_command           check-host-alive        ; Default command to check if servers are "alive"
  9. notification_period     24x7            ; Send notification out at any time - day or night
  10. notification_interval   30              ; Resend notifications every 30 minutes
  11. notification_options    d,r             ; Only send notifications for specific host states
  12. contact_groups          admins          ; Notifications get sent to the admins by default
  13. hostgroups              windows-servers ; Host groups that Windows servers should be a member of
  14. register                0               ; DONT REGISTER THIS - ITS JUST A TEMPLATE
  15. }

5.nagios在第一次监控windows所必须修改的内容

修改/usr/local/nagios/etc/nagios.cfg

查找

#cfg_file=/usr/local/nagios/etc/objects/windows.cfg

改为

cfg_file=/usr/local/nagios/etc/objects/windows.cfg

保存文件。

/usr/local/nagios/etc/objects/windows.cfg 内包含了一些样例的主机、主机群和服务的定义模式。可以通过修改这些案例来测试监控对象。

6.安装windows监控引擎

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

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

安装方式,解压缩到C:\NSClient++

在指令模式下,在该目录下面运行以下命令,注册NSCient++的服务

nsclient++ /install

将NSCient++作为启动进程

nsclient++ SysTray

在服务列表中找到NSClientpp的服务。双击打开该服务的配置窗口则在登录分页中将“允许服务与桌面交互”勾选上。

编辑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++服务

当右下角出现了一个蓝色十字的ICON这表示

7.配置Nagios

建立需要监控的windows主机和服务对象

编辑文件windows.cfg

/usr/local/nagios/etc/objects/windows.cfg

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

  1. # 'check_nt' command definition
  2. define command{
  3. command_name    check_nt
  4. command_line    $USER1$/check_nt -H $HOSTADDRESS$ -p 12489 -v $ARG1$ $ARG2$
  5. }

在Service定义部分

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

 
  1. define service{
  2. use         generic-service
  3. host_name           winserver
  4. service_description NSClient++ Version
  5. check_command       check_nt!CLIENTVERSION
  6. }

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

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服务器是否显示

转载于:https://blog.51cto.com/zener/404123

监控Windows服务器相关推荐

  1. paramiko监控 windows服务器 被监控服务器只需要安装openssh服务即可基于wmic完成大部分监控...

    paramiko监控 windows服务器 被监控服务器只需要安装openssh服务即可基于wmic完成大部分监控 #!/usr/bin/python #-*- coding: UTF-8 -*-#+ ...

  2. 用Spotlight on windows 实时监控Windows服务器性能

    用Spotlight on windows 实时监控Windows服务器性能 2010-02-03 10:30:25|  分类: else |  标签: |字号大中小 订阅 用Spotlight on ...

  3. php服务器监控windows,用Linux上的cacti去监控windows服务器(图)

    用linux上的cacti去监控windows服务器 以前一直用cacti或者mrtg来监控交换机流量,很少用来监控服务器,最近突然有个任务需要监控windows服务器,一般刚装好的cacti,里面的 ...

  4. zabbix 监控 windows 服务器

    zabbix 监控 windows 服务器 步骤: 1.确定zabbix服务器的IP地址和 zabbix 版本 2.官网下载对应版本的zabbix-agent或 3.在要监控的windows服务器中安 ...

  5. cacti监控java_cacti监控windows服务器

    参考文献: 前提条件 二.准备好以下安装文件: 配置过程 一.被监控服务器设置(这里是windows服务器) 为window系统配置snmp服务及安装snmp informant(此处以64位的win ...

  6. cacti监控windows服务器

    参考文献: 通​过​C​a​c​t​i​监​控​w​i​n​d​o​w​s​资​源 前提条件 一.已安装好Cacti:ubuntu下cacti安装配置 二.准备好以下安装文件: Cacti_SNMP_ ...

  7. zabbix监控windows服务器CPU温度

    一.准备工具 instspeedfan452.exe   --->  https://filehippo.com/zh/download_speedfan/ tail-for-windows.z ...

  8. loadrunner 配置远程监控windows服务器系统资源

    今天决定监控远程windows xp上的系统资源,本来以为应该很好连接,在同一个局域网内,结果出了一堆问题,可能是第一次就让我遇到了一个棘手的操作系统,郁闷! (1)保证装有loadrunner的测试 ...

  9. Loadrunner监控windows服务器资源

    1.开启服务器Remote Procedure Call (RPC)和RemoteRegistry服务 2.设置服务器本地安全策略--本地策略--安全选项--网络访问:本地账户的共享和安全模型为经典 ...

最新文章

  1. eBPF内核探测中将任意系统调用转换成事件
  2. 为什么对象字面量没有名字?
  3. sort--排序函数
  4. 鸟哥的Linux私房菜(基础篇)-第零章、计算机概论(零.5)
  5. 有关Dispose,Finalize,GC.SupressFinalize函数-托管与非托管资源释放的模式
  6. 李航老师《统计学习方法》的代码实现、课件、作业等相关资源的最全汇总
  7. android 代码布局设置wrap_content,android ScrollView布局(wrap_content,最大大小)
  8. sql 数字减去null_减去两个16位数字| 8086微处理器
  9. 电大计算机网络技术基础,电大--2016年电大 计算机与网络技术基础小抄已排版.doc...
  10. 写给那些要找电子发票的数据接口规范的程序猿
  11. 五分钟回顾 | 2016年智能交通大事件
  12. eyoucms使用入门 一
  13. 太难了 | 2019年互联网寒冬,如何防止自己被裁员失业?
  14. GNN理论入门和小实践——从卷积讲起
  15. Java实现若干个数计算平均值并保留小数位 java计算平均值 java四舍五入保留小数
  16. jQuery赋值checked的几种写法:
  17. 华清远见百度网盘实训笔记
  18. background 互联网图片_“background-image:url(data:image”data类型的Url格式简介
  19. 河北职高计算机专业高考分数线,河北职高对口本科大学录取分数线
  20. 工作9年程序员面试华为要薪1万,华为员工:公司没这么低工资的岗.

热门文章

  1. ARFoundation入门到精通 - 1.8 远程调试
  2. linux--Flex and Bison
  3. net-java-php-python-人事工资管理系统计算机毕业设计程序
  4. 《HTTP》hfs快速搭建HTTP文件服务器
  5. CSS filter有哪些神奇用途
  6. Permission denied: user=dr.who, access=WRITE, inode=“/“:root:supergroup:drwxr-xr-x
  7. 10款最佳免费WiFi黑客工具(附传送门)
  8. 层次分析法------小学生都会的算法~~~
  9. jdk环境变量配置成功只需三步
  10. 实验四:进程同步与通信