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=scripts\
CheckExternalScripts.dll
2. 在NSClient安装目录下的scripts文件夹下,新建一个check_run.bat批处理文件,如下
文件名:check_run.bat
@echo off
tasklist |find "%1" >NUL
IF ERRORLEVEL GOTO err
IF ERRORLEVEL GOTO ok :err
echo CRITICAL: Process does not exist
exit /B :ok
echo OK: The process of normal
exit /B
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_run
command_line /usr/lib64/nagios/plugins/check_nrpe -H yourip -c check_run
}
修改windows.cfg
define service{
use generic-service-urgent,srv-pnp
host_name youip ;要展示信息的机器的ip
service_description check_fileexistspan
check_command check_run
}
效果
Nagios 利用NSClient++的check_nrpe方式使用自定义脚本监控windows的更多相关文章
- Golang 基于Prometheus Node_Exporter 开发自定义脚本监控
Golang 基于Prometheus Node_Exporter 开发自定义脚本监控 公司是今年决定将一些传统应用从虚拟机上迁移到Kubernetes上的,项目多而乱,所以迁移工作进展缓慢,为了建立 ...
- zabbix 自定义脚本监控activemq
1. 编写获取activemq队列积压消息(check-amq.sh) #!/bin/bash QUEUENAME=$ MQ_IP='172.16.1.56' curl -uadmin:admin h ...
- Nagios利用NSClient++监控Windows主机
在Nagios的libexec下有check_nt这个插件,它就是用来检查windows机器的服务的.其功能类似于check_nrpe.不过还需要搭配另外一个软件NSClient++,它则类似于NRP ...
- zabbix使用自定义脚本监控内存
我这里的脚本是监控centos7系统的内存.centos7系统的内存如何查看我之前的博客都是有的.这里直接写了监控步骤 1.首先是编写脚本. #!/bin/bash mem_total(){ TOTA ...
- nagios系列(七)nagios通过自定义脚本的方式监控mysql主从同步
nagios监控mysql主从同步 起因:nagios可能监控到mysql服务的运行情况,但确不能监控mysql的主从复制是否正常:有时候,同步已经停止,但管理人员却不知道. 登陆mysql从服务器, ...
- 在nagios中使用nrpe自定义脚本
nrpe的安装 tar xvfz nrpe-2.13.tar.gz cd nrpe-2.13 ./configure make all make install-plugin make inst ...
- nagios系列(八)之nagios通过nsclient监控windows主机
nagios通过nsclient监控windows主机 1.下载NSClient -0.3.8-Win32.rar安装在需要被监控的windows主机中 可以设置密码,此处密码留空 2.通过在nagi ...
- Nib加载的方式实现自定义TableView
实现的效果 实现原理: 通过在主界面中用Bundle 的LoadNib的方式进行自定义窗体文件加载并渲染界面 实现步骤 Step One 创建TableViewCell 窗体 Step Two 定义接 ...
- 类模板、Stack的类模板实现(自定义链栈方式,自定义数组方式)
一.类模板 类模板:将类定义中的数据类型参数化 类模板实际上是函数模板的推广,可以用相同的类模板来组建任意类型的对象集合 (一).类模板的定义 template <类型形参表> clas ...
随机推荐
- CentOS 用户/组与权限
useradd:添加用户 useradd abc,默认添加一个abc组 vipw:查看系统中用户 groupadd:添加组groupadd ccna vigr:查看系统中的组 gpasswd:将用户a ...
- 转载:java中抽象类和接口的作用与区别
abstract class和interface是Java语言中对于抽象类定义进行支持的两种机制,正是由于这两种机制的存在,才赋予了Java强大的面向对象能力. abstract class和inte ...
- c++基类指针指向继承类调用继承类函数
类里面重载运算符>>, 需要使用友元函数,而友元函数,不能作为虚函数. 所以,基类指针无法直接调用继承类里重构的 >> ; 使用类转换,能解决掉,基类指针 调用 继承类 ...
- VS2013安装及破解教程
https://blog.csdn.net/qq_33742119/article/details/80075352 软件下载的百度云链接,也可以在官网直接下载 链接:https://pan.baid ...
- JS 创建元素的三种方法
1.动态创建元素一 document.write() 例如向页面中输出一个 li 标签 <pre class="html" name="code"> ...
- sqlserver 临时表,多用户同时访问冲突吗?
当然不会冲突,一个井号的临时表(本地临时表),在数据库中物理表名并非你看到的,而是系统会为你的临时表生成一个唯一的表名,所以其它用户使用和建同样的表不会发生冲突.
- Tomcat 配置文件的解析
转载:https://www.cnblogs.com/sunshine-1/p/8990044.html https://www.cnblogs.com/kismetv/p/7228274.html ...
- 基础问题:设置radio、select、checkbox 的readonly 属性
编辑记录的时候,有时候需要禁止用户修改某些项目,常用的方法有以下两种: 1>设置表单的readonly属性问题:但是readonly属性对radio.select.checkbox这三个表单不起 ...
- Codeforces 1136D Nastya Is Buying Lunch (贪心)
题意: 给一个序列和一组交换序列(a,b),当且仅当a在b的前面(不允许有间隔),这两个数才能交换,问最后一个数最多能移动多少个位置. 分析: 这题是思路是十分的巧妙呀 , 用一个数组num[x] ...
- 1085 PAT单位排行 (25 分
每次 PAT 考试结束后,考试中心都会发布一个考生单位排行榜.本题就请你实现这个功能. 输入格式: 输入第一行给出一个正整数 N(≤),即考生人数.随后 N 行,每行按下列格式给出一个考生的信息: 准 ...