nagios基于NSClient监控windows系统.docx
- 文档编号:9738002
- 上传时间:2023-02-06
- 格式:DOCX
- 页数:12
- 大小:502.76KB
nagios基于NSClient监控windows系统.docx
《nagios基于NSClient监控windows系统.docx》由会员分享,可在线阅读,更多相关《nagios基于NSClient监控windows系统.docx(12页珍藏版)》请在冰豆网上搜索。
nagios基于NSClient监控windows系统
nagios基于NSClient监控windows系统
之前测试nagios监控Linux结果搞得笔者要吐血,太大意了,跟zabbix完全两个东西,但是笔者在测试windows的监控就如鱼得水多了,废话少说,直接上正题。
NSClient
Linux的被监控端需要安装check_nrpe以及插件,但是windows直接就一个NSClient就够了,所有的监控,就用它一个就够了!
版本的选用
上面是笔者下的版本,4.3和4.4的
后来下下来才发现……
4.4的就不能用啊!
也许是笔者打开的方式不对,但是4.4真的不能用
所以暂时就用4.3的,各位在测试的时候最好要确定版本!
安装
一系列默认点下一步就行了……
Windows下的安装就是简单……
在需要勾选的时候记得全部打钩
安装完了之后,点进服务开启桌面交互
这个东西计算机右键管理里面找
然后设置自动(默认是自动启动)
检测端口
12489和5666都要有才行
笔者用4.4版本的做测试12489端口就没有起来,也许是check_nt没有打开的原因。
Check_nt
测试命令
之前我产出里面监测linux用的nrpe,这里也是一样,还是先看看nt的插件和命令在不在
这里很明显,命令和插件都有,那么笔者来从远端测试一下虚拟机下的C盘多大!
这边显示快满了……笔者用笔记本开虚拟机,唉,进去看看是不是这样呢?
测试成功!
部署cfg配置文件及脚本
Nagios最头疼的就是脚本了,nt有几个常用的命令,我就复制粘贴到这里一下(to江涛:
这里我只有这一部分是复制粘贴!
),仅供参考。
首先是check_nt的语法及几个固定参数
语法:
check_nt-Hhost-vvariable[-pport][-wwarning][-ccritical][-lparams][-dSHOWALL][-u][-ttimeout]选项:
-h,--help显示帮助
-V,--version显示版本信息
-H,--hostname=HOST被监控主机名称或IP
-p,--port=INTEGER监控端口(默认为1248,不过我的nagios安装后端口为12489)
-s,--secret=
-w,--warning=INTEGER引发报警状态的阀值
-c,--critical=INTEGER引发严重错误状态的阀值
-t,--timeout=INTEGER连接尝试超时秒数(默认-l,--params=
-d,--display={SHOWALL}显示选项(目前仅支持SHOWALL)
-u,--unknown-timeout多长时间后返回UNKNOWN)
-v,--variable=STRING监控参数监控参数:
CLIENTVERSION=GettheNSClientversion如果用-l
CPULOAD=最后X分钟CPU的平均负载。
-l格式为:
-l
时间范围不能超过24*60分钟
阀值是一个百分比,最多一次可以监控10个阀值,比如:
ie:
-l60,90,95,120,90,95
UPTIME=获得主机开机时间。
无指定参数,也没有报警与错误阀值。
USEDDISKSPACE=指定磁盘的使用率。
只要求-l指定磁盘的驱动器号。
用-w指定报警阀值用-c指定错误阀值
MEMUSE=内存使用率。
用-w指定报警阀值用-c指定错误阀值
SERVICESTATE=监控一个或多个服务的状态。
-l格式为:
-l
可以使用-dSHOWALL指定返回某个服务的状态。
PROCSTATE=监控某个或某几个进程是否在运行。
命令格式类似于SERVICESTATE
COUNTER=监控Windows NT/2000的任何性能计数器。
-l格式为:
-l"\\
如果<描述>内容中不包含"%%",那它就做为标题显示。
例如:
"Pagingfileusageis%%.2f%%%%""%%.f%%%%pagingfileused."
对于计数器中包含“\","$"字符的最好都用上转值符号”\",以保证计数器名称正确。
INSTANCES=监控Windows NT/2000的任何性能计数器对象。
格式:
check_nt-H
Process),如果计数器名称有两个单词,需要用括号括起来。
返加的结果为用逗号分开的各计数器数据列表。
这样做的目的在于不登录进系统就可以在命令行下直接运行perfmon中的指定计数器。
它也可以用做脚本自动创建Nagios服务配置文件。
笔者把自己做的测试配置文件拿出来仅供参考
definehost{
host_name115
alias115-windows-test
address192.168.1.115
notification_interval0
notification_optionsd,u,r
max_check_attempts1
process_perf_data1
active_checks_enabled1
passive_checks_enabled0
notifications_enabled1
check_period24x7
notification_period24x7
contact_groupsadmins
}
defineservice{
uselinux-jim-server
host_name115
service_descriptionPING
check_commandcheck_ping!
100.0,20%!
200.0,50%
}
defineservice{
uselinux-jim-server
host_name115
service_description检查NSClient++版本
check_commandcheck_nt!
CLIENTVERSION
}
defineservice{
uselinux-jim-server
host_name115
service_descriptionCPU负载
check_commandcheck_nt!
CPULOAD!
-l5,80,90
}
defineservice{
uselinux-jim-server
host_name115
service_description内存使用
check_commandcheck_nt!
MEMUSE!
-w80-c90
}
defineservice{
uselinux-jim-server
host_name115
service_descriptionC盘使用情况
check_commandcheck_nt!
USEDDISKSPACE!
-lc-w80-c90
}
defineservice{
uselinux-jim-server
host_name115
service_descriptionexplorer情况
check_commandcheck_nt!
PROCSTATE!
-dSHOWALL-lexplorer.exe
}
defineservice{
uselinux-jim-server
host_name115
service_descriptionW3SVC
check_commandcheck_nt!
SERVICESTATE!
-dSHOWALL-lW3SVC
}
defineservice{
uselinux-jim-server
host_name115
service_description运行时间
check_commandcheck_nt!
UPTIME
}
在这里,我主机定义的host的IP为115
另外我调用的自己设置的服务linux-jim-server
defineservice{
namelinux-jim-server
check_freshness0;DefaultistoNOTcheckservice'freshness'
notifications_enabled1;Servicenotificationsareenabled
event_handler_enabled1;Serviceeventhandlerisenabled
flap_detection_enabled0;Flapdetectionisenabled
failure_prediction_enabled1;Failurepredictionisenabled
process_perf_data1;Processperformancedata
retain_status_information1;Retainstatusinformationacrossprogramrestarts
retain_nonstatus_information1;Retainnon-statusinformationacrossprogramrestarts
is_volatile0;Theserviceisnotvolatile
check_period24x7;Theservicecanbecheckedatanytimeoftheday
max_check_attempts1;Re-checktheserviceupto3timesinordertodetermineitsfinal(hard)state
normal_check_interval1;Checktheserviceevery10minutesundernormalconditions
retry_check_interval1;Re-checktheserviceeverytwominutesuntilahardstatecanbedetermined
contact_groupsadmins;Notificationsgetsentouttoeveryoneinthe'admins'group
notification_optionsw,u,c,r;Sendnotificationsaboutwarning,unknown,critical,andrecoveryevents
notification_interval0;Re-notifyaboutserviceproblemseveryhour
notification_period24x7;Notificationscanbesentoutatanytime
}
这里后面的标注是我直接从模板的cfg里面复制过来的,稍作修改,不是很喜欢它自己的模板,报警不能及时反映。
最后检查nagios.cfg之后servicenagiosreload。
部署结果
在这里我检测的进程W3SVC是IIS的进程,但是笔者我的笔记本是在很垃圾,虚拟机带不动IIS啊!
所以只能这样勉强搞一下了。
报警实例
笔者在这里只测试微信报警,因为微信稍微麻烦一点,笔者的微信号名字改不了,还是zabbix,
不过结果还是满意的!
那么,下一步,开始研究cacti吧!
期待cacti的产出文档!
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- nagios 基于 NSClient 监控 windows 系统
![提示](https://static.bdocx.com/images/bang_tan.gif)