设为首页 收藏本站
查看: 932|回复: 0

nagios用NsClient自定义windows监控

[复制链接]

尚未签到

发表于 2015-9-8 08:32:20 | 显示全部楼层 |阅读模式
Nagios用NsClient自定义windows监控
  NsClient++来监控windows主机有三种方式:check_nt,check_nrpe,nsca.
  相对而言,check_nrpe已经可以满足大部分的监控任务要求了。

  

  这三种方式在nsclient的PDF中说的很详细,但全是E文,根据我自己的部署过程,边做边写下自己理解:
  
  check_nt的使用方法:
  

  这是NsClient++默认的使用方法,但是他可以监控的功能比较基础,应该说是一种用于上手的监控手段吧。

  

  语法: check_nt -H host -v variable [-p port] [-w warning] [-c critical] [-l params] [-d SHOWALL] [-u] [-t timeout] 选项: -h, --help 显示帮助
-V, --version 显示版本信息  -H, --hostname=HOST 被监控主机名称或IP
  -p, --port=INTEGER 监控端口(默认为1248,不过我的nagios安装后端口为12489)
  -s, --secret=<password> 要求的密码
  -w, --warning=INTEGER 引发报警状态的阀值
  -c, --critical=INTEGER引发严重错误状态的阀值
  -t, --timeout=INTEGER 连接尝试超时秒数 (默认 -l, --params=<parameters> 参数传递给指定的监控项 (见下文)
  -d, --display={SHOWALL}显示选项(目前仅支持SHOWALL)
  -u, --unknown-timeout多长时间后返回 UNKNOWN)
-v, --variable=STRING 监控参数 监控参数: CLIENTVERSION = Get the NSClient version 如果用 -l <version> 指定版本号,则版本不同时会报警  CPULOAD = 最后X分钟CPU的平均负载。
  -l 格式为:-l <minutes range>,<warning threshold>,<critical threshold>。 时间范围不能超过 24*60分钟
  阀值是一个百分比,最多一次可以监控10个阀值,比如: ie: -l 60,90,95,120,90,95
  UPTIME = 获得主机开机时间。无指定参数,也没有报警与错误阀值。
  USEDDISKSPACE = 指定磁盘的使用率。只要求 -l 指定磁盘的驱动器号。用-w 指定报警阀值 用-c指定错误阀值
  MEMUSE = 内存使用率。用-w 指定报警阀值 用-c指定错误阀值
  SERVICESTATE = 监控一个或多个服务的状态。-l 格式为:-l <service1>,<service2>,<service3>,...。可以使用-d SHOWALL指定返回某个服务的状态。
PROCSTATE = 监控某个或某几个进程是否在运行。命令格式类似于SERVICESTATE  COUNTER = 监控Windows NT/2000的任何性能计数器。
  -l 格式为:-l "\\<performance object>\\counter","<描述>&#8220; 描述参数是可选的仅用于要求输出浮点数的计数器。
  如果<描述>内容中不包含"%%",那它就做为标 题显示。例如:"Paging file usage is %%.2f %%%%""%%.f %%%% paging file used."
      对于计数器中包含&#8220;\","$"字符的最好都用上转值符号&#8221;\",以保证计数器名称正确。
  INSTANCES = 监控Windows NT/2000的任何性能计数器对象。
  格式: check_nt -H <hostname> -p <port> -v INSTANCES -l <counter object> <counter object>为一项性能计数器 (比如: Process),如果计数器名称有两个单词,需要用括号括起来。返加的结果为用逗号分开的各计数器数据列表。
  这样做的目的在于不登录进系统就可以在命令行下直接运行perfmon中的指定计数器。它也可以用做脚本自动创建Nagios服务配置文件。
  例子:check_nt -H 192.168.1.1 -p 1248 -v INSTANCES -l Process
  以下是nagios的windows.cfg中使用check_nt的监控例子:
  #定义要被监控的windows主机名与主机的IP地址
define host{
use             windows-server  
host_name       ruanxi         
alias           My Windows Server
address         192.168.0.5     
}
#定义一个主机名组(可以不用管它)
define hostgroup{
hostgroup_name  windows-servers
alias           Windows Servers
}
#检查windows主机是否已经安装了NSClient++,及它的版本号
define service{
use                     generic-service
host_name               ruanxi
service_description     NSClient++ Version
check_command           check_nt!CLIENTVERSION
}
#监控 windows 主机的开机运作时间
define service{
use                     generic-service
host_name               ruanxi
service_description     Uptime
check_command           check_nt!UPTIME
}
#监控 windows 主机的 CPU 负载
define service{
use                     generic-service
host_name               ruanxi
service_description     CPU Load
check_command           check_nt!CPULOAD!-l 5,80,90    #CPU如果到达80%则报警,到达90%则警笛
}
#监控 windows 主机的内存使用状况
define service{
use                     generic-service
host_name               ruanxi
service_description     Memory Usage
check_command           check_nt!MEMUSE!-w 80 -c 90  #内存使用到达80%则warn,到达90%则Critical
}
#监控 windows 主机的 C:\ 的空间使用量
define service{
use                     generic-service
host_name               ruanxi
service_description     C:\ Drive Space
check_command           check_nt!USEDDISKSPACE!-l c -w 80 -c 90
}
#监控 windows主机的W3SVC设置的动作状况
define service{
use                     generic-service
host_name               ruanxi
service_description     W3SVC
check_command           check_nt!SERVICESTATE!-d SHOWALL -l W3SVC
}
#监控 windows 主机的 Explorer.exe 执行程序的运作状况,如程序终止了,则会发 CRITICA
define service{
use                     generic-service
host_name               ruanxi
service_description     Explorer
check_command           check_nt!PROCSTATE!-d SHOWALL -l Explorer.exe
}
#监控 windows 主机的 MSSQLSERVER 服务的运作状况,如服务终止了,则会发 CRITICAL
define service{
use                     generic-service
host_name               ruanxi
service_description     MSSQL
check_command           check_nt!SERVICESTATE!-d SHOWALL -l MSSQLSERVER
}

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-110797-1-1.html 上篇帖子: Nagios+139邮件短信通知报警文档 下篇帖子: An effective and common Performance test data monitor and collection tool based
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表