Nagios 利用NSClient++的check_nrpe方式使用自定义脚本监控windows

分类

NsClient++来监控windows主机有三种方式:check_nt、check_nrpe、nsca。check_nt自带很多功能,但是扩展性差,check_nrpe可以通过执行自己定义的脚本做到很好地扩展(官方推荐)。

原理

监控端通过check_nrpe把要监控的指令发送给被监控端,被监控端在本机执行监控任务,并把执行的结果发送回被监控端。

实现

以NSClient++0.3为例,示例的功能是监控某个进程是否运行。

1. 编辑NSClient配置文件NSC.ini,去掉以下几行前面的“;”号(去掉注释,使其生效)

NRPEListener.dll
script_dir=scriptsCheckExternalScripts.dll

2. 在NSClient安装目录下的scripts文件夹下,新建一个check_run.bat批处理文件,如下  

文件名:check_run.bat

@echo off
tasklist |find "%1" >NUL
IF ERRORLEVEL 1 GOTO err
IF ERRORLEVEL 0 GOTO ok

:err
echo CRITICAL: Process does not exist
exit /B 1

:ok
echo OK: The process of normal
exit /B 0

3. 在NSC.ini文件中[External Scripts]下面添加如下行:

check_run=scripts\check_run.bat   chrome.exe

:是[External Scripts]而不是[External Script]

4. 重启NSClinet

5. 可以在被监控端check_nrpe所在的目录(CentOs默认的安装目录为:/usr/lib64/nagios/plugins/)

./check_nrpe -H hostip -c check_run

:-H后写刚才脚本所在的机器,-c后写命令,这里对应配置文件中的check_run

如果结果与预期的一致,那么就可以继续配置监控端了

6. 配置监控端

修改commands.cfg

增加

define command{
        command_name    check_fileexistspan
        command_line    /usr/lib64/nagios/plugins/check_nrpe -H yourip -c check_fileexistspan
        }

修改windows.cfg

define service{
        use                     generic-service-urgent,srv-pnp
        host_name               youip   ;要展示信息的机器的ip
        service_description     check_fileexistspan
        check_command           check_run
        }

效果

时间: 2024-08-12 22:39:47

Nagios 利用NSClient++的check_nrpe方式使用自定义脚本监控windows的相关文章

Nagios利用NSClient++监控Windows主机(4)

在Nagios的libexec下有check_nt这个插件,它就是用来检查windows机器的服务的.其功能类似于check_nrpe.不过还需要搭配另外一个软件NSClient++,它则类似于NRPE.我们需要下载NSClient合适的版本,然后安装在被监控的windows主机上. Overview of NRPE NSClient++的原理如下图: 可以看到NSClient与nrpe最大的区别就是: NRPE: 被监控机上安装有nrpe,并且还有插件,最终的监控是由这些插件来进行的.当监控主

zabbix3.4上使用自定义脚本监控公网tcp端口时延情况

我们搭建了***,主要是利用公网地址上tcp端口映射进行连接,从而达到访问的目的.但是有时候,网络不稳定,或者是公网地址震荡异常,导致***连接异常,所以我们很有必要监控tcp端口的连接的时延情况,当时延大于1000ms时,会严重的影响到使用体验,这时就要排查网络原因了. 如果能利用zabbix监控tcp端口的情况,并统计,当达到一定阈值的时候就告警,方便及时排查. 一.思路     1.linux上,可以使用nmap程序扫描端口之外,还可以统计大致的扫描结果,可以利用每次扫描端口的耗时来衡量网

Nagios利用NSClient++监控Windows主机

一.简介 1.获取更多的NSClient原理,请参考NSClient++官方站点 NSClient++官网:http://www.nsclient.org/ 2.NSClient++与NRPE NSClient++的工作原理 NRPE的工作原理 Nagios对Windows主机的监控主要有三种方法 第一种是NSclient++ 第二种是NRPE 第三种是SNMP(不是很常用) NSclient++与nrpe最大的区别就是: 1.被监控机上安装有nrpe,并且还有插件,最终的监控是由这些插件来进行

zabbix自定义脚本监控pps(Packets per Second,包转发率)

一:介绍 网络的性能通常用吞吐率(throughput)这个指标来衡量.常用的网络吞吐率的单位有:PPS(即每秒发送多少个分组数据包).BPS(Bytes Per Second;即每秒发送多少字节).bPS (bits Per Second;即每秒发送多少比特).TPS(TransactionsPer Second;即每秒完成多少次发送过程). pps:(包每秒)包转发率标志了交换机转发数据包能力的大小.一般交换机的包转发率在几十Kpps到几百Mpps.包转发速率是指交换机每秒可以转发多少百万个

zabbix 自定义脚本监控配置之网卡

注:要添加自定义脚本监控,必须升级zabbix agent版本至2.0.0以上, 一:配置步骤 1. 完成自定义监控脚本的编写(windows或linux脚本) 脚本要求: (1)既然是监控,那必然要有输出结果值(字符串,数字皆可) (2)必须要求zabbix用户有执行权限,当然可以直接设置所有用户都有执行权限(chmod 777 脚本文件) (3)若脚本需要传入参数,按照参数传入的顺序,在脚本中可用$1-$9来引用传入的参数 2 找到zabbix agent的配置文件zabbix_agentd

nagios自定义脚本监控

客户端IP:192.168.1.11 服务端IP:192.168.1.12 目的:检查eip用户的java进程是否存在 客户端配置 脚本名:check_pid.sh 脚本如下: #! /bin/bash si=`ps -ef|grep java|grep eip|wc -l` if [ $si -eq 1 ];then echo "status ok" exit 0 else echo "The pro is down,plaese check!" exit 1 f

nagios自定义脚本监控<检查eip用户的java进程是否存在 >

客户端IP:192.168.1.11 服务端IP:192.168.1.12 目的:检查eip用户的java进程是否存在 客户端配置 脚本名:check_pid.sh 脚本如下: #! /bin/bash si=`ps -ef|grep java|grep eip|wc -l` if [ $si -eq 1 ];then echo "status ok" exit 0 else echo "The pro is down,plaese check!" exit 1 f

zabbix通过orabbix和自定义脚本监控oracle数据库

由于公司要上oracle数据库,需要对这个东西惊醒监控,于是去网上淘资料,发现有一个套件orabbix监控oracle的效果还不错,于是拿来试验了一下.orabbix是由JAVA写的一个套件,需要在oracle服务器上面安装JAVA环境才能运行.这里为了简便,可以使用yum -y install java来安装JAVA环境. 安装完java环境之后可以通过下面命令来检测是否安装成功: [[email protected] ~]# java -version java version "1.7.0

Cacti 自定义脚本监控

************************************************* 脚本内容: [[email protected] scripts]# cat get_snmp_network_data.sh #!/bin/bash # ======================================================================================== # goldengate health plugin for Na