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地址:

[root@monitor objects]# /usr/local/nagios/libexec/check_nrpe -H 192.168.10.9
NRPE v2.12

4、测试模块是否收集到数据(下面是已经收到的):

[root@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、然后重启就可以监控到了。

下面举例几个监控脚本:监控并发量:

#!/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的那几个值。

本文转自 小罗ge11 51CTO博客,原文链接:http://blog.51cto.com/xiaoluoge/1587997,如需转载请自行联系原作者

nagios配置监控的一些思路和工作流程相关推荐

  1. Nagios配置监控windows客户端

    客户端配置: 客户端下载安装NSclient 下载地址:http://nsclient.org/nscp/downloads 安装NSCP-0.4.1.090-Win32 .msi (本人window ...

  2. 计算机工作流程新图,工作流程责任分工.doc

    工作流程责任分工 1.技术规章制度编制流程图 牵头科室:企管办 配合科室:各科室 2.监控装置数据换装工作流程 牵头科室:线路科 配合科室:桥隧科材料科 5.限界技术资料管理流程 牵头科室:线路科桥隧 ...

  3. DCHP协议的工作流程简述

    DHCP:全称是 Dynamic Host Configuration Protocol﹐中文名为动态主机配置协议,它的前身是 BOOTP,它工作在OSI的应用层,是一种帮助计算机从指定的DHCP服务 ...

  4. Nagios 配置及监控

    Nagios 监控 在互联网日益发展的今天,监控的重要性已经不言而喻.可能打开一个URL要经过6-7层的处理,如果出了问题而没有监控将很难定位到问题所在.那哪些内容需要监控呢? 1.本地资源 (1) ...

  5. (转)Nagios 配置及监控

    Nagios 配置及监控 原文:http://blog.csdn.net/linuxlsq/article/details/52606824 Nagios 监控 在互联网日益发展的今天,监控的重要性已 ...

  6. Nagios远程监控软件的安装与配置详解

    Nagios远程监控软件的安装与配置详解 作者:redhat_hu Nagios是一款功能强大的网络监视工具,它可以有效的监控windows.linux.unix主机状态以及路由器交换机的网络设置,打 ...

  7. 运维监控利器Nagios之:nagios配置详解

    一.nagios配置过程详解 1.nagios默认配置文件介绍  nagios安装完毕后,默认的配置文件在/usr/local/nagios/etc目录下,每个文件或目录含义如下表所示: 2.配置文件 ...

  8. 实战Nagios NSCA方式监控Linux系统资源使用情况 -- Nagios配置篇 -- Nagios Server端

    现在说说在我们系统中如何是用NSCA方式来获取我们需要的被监控节点的资源使用情况信息. 先讲讲Nagios Server端的基本配置: 1. nagios web gui 访问配置,系统中使用的是na ...

  9. 实战Nagios NSCA方式监控Linux系统资源使用情况 -- Nagios配置篇 -- 被监控端

    Nagios要求被监控端按照约定格式定时将数据发送到Nagios端.监控包括节点和服务2种. 节点监控约定数据格式如下: [<timestamp>] PROCESS_HOST_CHECK_ ...

最新文章

  1. ElasticSearch基础杂烩-配置-索引-优化
  2. C# 可访问性不一致问题(修改成员的访问修饰符)。
  3. 如何获取 Teams Meeting 的上下文信息
  4. 对查询出来的结果进行筛选(having)
  5. [渝粤教育] 中国地质大学 Windows程序设计 复习题 (2)
  6. xshell 6 连接debian系统拒绝了密码_Xshell中操作Linux的常用命令,你知道几个?
  7. DateFormat PHP Class (php 处理日期)
  8. OpenCV: FFMPEG: tag 0x5634504d/‘MP4V‘ is not supported with codec id 12 and format ‘mp4 / MP4
  9. Python3.x:生成器简介
  10. 一次Rpc调用报错排查
  11. 英伟达驱动更新记录_英伟达GeForce显卡驱动411.63版更新内容
  12. Spring Boot ContentNegotiation 内容协商
  13. 计算机硬件性能及瓶颈,如何让自己的电脑没有瓶颈+硬件基础知识普及
  14. HTML+CSS实现网易云音乐首页(手机版)
  15. mmdetection训练自己的VOC数据集及常见问题
  16. 七大原则+23种设计模式
  17. JTAG 标准IEEE STD 1149.1-2013学习笔记(三)Test data registers
  18. 408 计算机组成,2018考研408计算机组成原理名词解释(6)
  19. Linux下开源库的使用(共享库文件头文件配置全局搜索)(WSL)
  20. ros::NodeHandle成员介绍

热门文章

  1. S标签实际大全(struts2)
  2. 刚发现 emacs的新的go-mode
  3. [原]Java 正则 多子串 匹配 替换
  4. laravel 登录失效
  5. web前端开发怎么学,web教程资源
  6. AngularJs 基础教程​ —— Select(选择框)
  7. C语言 学生宿舍管理系统
  8. html5模拟keyup事件
  9. shell的相关知识(变量、脚本定义)
  10. 关于routerOS设置PPPOE与HOTSPOT并存的说明