nagios基于NSClient监控windows系统.docx

上传人:b****7 文档编号:9738002 上传时间:2023-02-06 格式:DOCX 页数:12 大小:502.76KB
下载 相关 举报
nagios基于NSClient监控windows系统.docx_第1页
第1页 / 共12页
nagios基于NSClient监控windows系统.docx_第2页
第2页 / 共12页
nagios基于NSClient监控windows系统.docx_第3页
第3页 / 共12页
nagios基于NSClient监控windows系统.docx_第4页
第4页 / 共12页
nagios基于NSClient监控windows系统.docx_第5页
第5页 / 共12页
点击查看更多>>
下载资源
资源描述

nagios基于NSClient监控windows系统.docx

《nagios基于NSClient监控windows系统.docx》由会员分享,可在线阅读,更多相关《nagios基于NSClient监控windows系统.docx(12页珍藏版)》请在冰豆网上搜索。

nagios基于NSClient监控windows系统.docx

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"\\\\counter","<描述>“描述参数是可选的仅用于要求输出浮点数的计数器。

如果<描述>内容中不包含"%%",那它就做为标题显示。

例如:

"Pagingfileusageis%%.2f%%%%""%%.f%%%%pagingfileused."

    对于计数器中包含“\","$"字符的最好都用上转值符号”\",以保证计数器名称正确。

INSTANCES=监控Windows NT/2000的任何性能计数器对象。

格式:

check_nt-H-p-vINSTANCES-l为一项性能计数器(比如:

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的产出文档!

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 总结汇报 > 学习总结

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1