设为首页 收藏本站
查看: 1628|回复: 0

nagios配置监控的一些思路和工作流程

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2014-12-10 08:44:12 | 显示全部楼层 |阅读模式
nagios的监控原理:实际上很简单。我们在服务器端已经安装了nrpe服务,那么所有的客户端数据都是通过这个nrpe来收集,并且传到nagios服务器,在由nagios去调用生成。

工作过程:
(1)客户端在nrpe.cfg文件下已经定义了,调用模块的方式或者nagios识别的命令:
比如:command[check_ips]=/usr/local/nrpe/libexec/ip_conn.sh 8000 10000 (自己编写的脚本)
(2)服务器端通过check_nrpe -H 192.168.1.1 -c chekc_ips 。这个命令句可以手机到客户端这个脚本的数据。
(3)然互我们在服务端定义一个server.cfg就可以收集到关机这台主机的这个服务了。
服务器端:nagios的解析过程:
(1)nagios服务启动时,就回去加载nagios.cfg这个文件里面的数据。里面是我们定义的监控的类型:(cfg_file=/usr/local/nagios/etc/objects/192.168.10.1.cfg  #这一句我地宫一的这台主机文件存放的位置)
(2)到上面的目录下创建192.168.10.1.cfg这个文件。里面定义了监控的类型。
(3)还有contacts.cfg 你可以自己创建一个联系人,发邮邮件到你的邮箱.
#当然还有一些文件:如监控本机时候用到的command.cfg。假如启动报错。说没有这个命令。那么你就可以去command.cfg下面添加就可以了。

举例一个自己编写脚本监控服务报警的例子:
在客户端操作:
1、在/usr/local/nagios/libexec/目录下新建check_nginx文件:内容如下
#!/bin/bash
nginx=`/usr/bin/pgrep nginx`
if [ "$nginx" != "" ]
then
echo "nginx is run"
exit 0
fi
if [ "$nginx" = "" ]
then
exit 1
fi
#exit0表示正常。#exit1表示报警
2、编辑nrpe.cfg文件添加命令#给可执行权限和用户:
command[check_nginx]=/usr/local/nagios/libexec/check_nginx
3、服务器端,查看是否连接成功nrpe客户端,不成功的话看防火墙,和nrpe.cfg的allow添加服务器IP地址:
[iyunv@monitor objects]# /usr/local/nagios/libexec/check_nrpe -H 192.168.10.9
NRPE v2.12
4、测试模块是否收集到数据(下面是已经收到的):
[iyunv@monitor objects]# /usr/local/nagios/libexec/check_nrpe -H 192.168.10.9 -c check_nginx
nginx is run
5、编辑192.168.10.9.cfg文件添加这个服务:
define service{
                use                             generic-service
                host_name                       192.168.10.9
                service_description             check_nginx
                check_command                   check_nrpe!check_nginx
                         notifications_enabled           1
                check_period 24x7
                max_check_attempts 3
                 normal_check_interval 10
                retry_check_interval 1
                contact_groups admins
                notification_options w,u,c,r
                notification_interval 120
                notification_period 24x7
}
6、然后重启就可以监控到了。
wKiom1SGtoTA9ai3AAECqFTPzVo469.jpg

下面举例几个监控脚本:监控并发量:
#!/bin/sh
#xiaoluo
#2014.11.4
ip_conns=`netstat -an | grep tcp | grep EST | wc -l`
if [ $ip_conns -lt $1 ]
then
echo "OK -connect is $ip_conns"
exit 0
fi
if [ $ip_conns -gt $1 -a $ip_conns -lt $2 ]
then
echo "Warning -connect is $ip_conns"
exit 1
fi
if [ $ip_conns -gt $2 ]
then
echo "Critical -connect is $ip_conns"
exit2
fi
2、nrpe添加命令:command[check_ips]=/usr/local/nagios/libexec/check_ips 4000   8000 (4000报警。8000严重)
#编写脚本注意事项:
都用if判断,然后看返回值:
然后exit 0 表示正常
exit1 表示报警
exit2 表示严重        #这3个人跟我们写的脚本没有直接关系只是给nrpe的一个信号

到这,觉得改手工了,遇到问题的朋友可以交流一下。像监控mysql主从的,可以写一个监控两个状态是否都为yes然后在if判断。给exit的那几个值。


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-37704-1-1.html 上篇帖子: nagios一键安装脚本,nagios监控被监控主机上的应用服务mysql数据库 下篇帖子: nagios安装文档 监控
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表