您的位置:首页 > 移动开发 > IOS开发

nagios 和nrpe 安装详解

2012-12-14 10:00 211 查看
Nagios 和nrpe 在超神的帮助下终于将自己的疑惑解开了。
现在总结一下
以免混淆 先定义两台主机,
nagios 主机 称为 A机
nrpe 服务主机 称为B机
1、 先在A机上按照文档安装 nagios 服务 这个照着文档来就可以了,没什么可说的。
但要清楚五个要素(监控对象,时间段 ,联系人,用什么监控,用什么报警)。
2 将nrpe 软件包安装到B 机上,make all 之后将插件check_nrpe 安装到A机的libexec 目录下面。 这个就是nrpe 客户端,在A上就是通过调用这个插件来控制B机。B机上要开启一个端口5666,需要在B机上 设置
service{
port 5666
…………
Only_from = A 的ip }

同时在 /etc/services 里面添加服务 nrpe 5666/tcp
到此A 已经能够进入到B了,但是AB之间的语言还是不通的,如何通就需要在B的 nrpe.cfg 文件中定义对应的命令。
比如:command[check_users]=/usr/local/nagios/libexec/check_users -w 5 -c 10
在A中执行check_users 时 B 就要有所反映,反映就是执行等号后面的内容。
到此 B 机已经配置完了。
(其实B所做的就是做好对A 的接待工作)
3 按照五要素 在A机上对B进行监控。
先定义主机,(这时的命令实际就是在A中定义的ping 命令)。
后定义服务,(这里的命令要和在B中的命令对应起来)
解释一下 check_command check_nrpe!check_users
Check_nrpe 要在A 中定义
command_name check_nrpe
command_line /usr/local/nagios/libexec/check_nrpe -H $HOSTADDRESS$ -c $ARG1$
该命令是在A 中执行,(check_nrpe只是一个命令别名而已,下面的才是命令的主体),在服务中定义的check_nrpe!check_users的作用就是开启nrpe 将check_users这个命令传送给B
配置已经完成了 ,开启nagios 即可。

疑问来了:
第一:如何安装新的插件:
解答: 首先将插件安装到B上
然后在B创建调用这个插件的命令 (一般用插件名字命名比较好)
剩下的工作全部在A上完成。
在A中只需要建立对应的服务
在建立的服务中修改check_command 命令为 check_nrpe!$commond (在B 中定义的命令)
这样 A 就能通过调用B中的插件来查看B的信息了。
第二 : 自己写的插件如何在nagios中工作的?
Nagios 的图形化界面中定义了几种不同的告警类别,而这些告警类如何和我们的脚本联系起来呢,如果我们只是echo ”ok” 或者echo”error” 之类的文本信息,nagios 如何识别呢?
通过检查返回值可以做到。通过 返回值来定义不通的状态。所以写脚本的时候要在判断语句中定义返回状态。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  nagios