Nagios 工作原理

  nagios通过nrpe插件和snmp协议进行主动监控。至于什么是主动监控可以参考上面所述。简单理解决就是nagios按照检测周期主动的获取远程主机的数据。这样一来实时性就要差一些了。nagios通过nrpe插件和snmp协议实现了对linux/unix服务器进行监控,同时通过snmp协议实现了对windows服务器、交换机、打印机等的监控。另外,nagios通过NSClient++客户端也可以对windows进行监控。

  NMS(网络管理平台)它会给管理员提供一个命令行接口,可以发送SNMP的操作指令到任何一个被监控主机,被监控端怎么才能接受监控端所发来的指令,而且能够理解它的指令呢?在被监控主机上要安装一个服务器进程,这个服务器进程只是用来接收来自于监控端的查询请求,并且能够解析对方的查询请求,并把对方请求的数据返回给对方。这个服务进程叫做Agent,一个远端代理,这个代理只是为了接收我们的查询指令或者其它的管理指令的而存在的,NMS向对方的Agent发送指令以后。Agent通过在本地执行一些操作来获取数据,并且将获取的结果返回给监控端。例如:磁盘空间,当前服务流量等。

但是任何一个人都向我们被监控端发送指令请求获取我们的数据,那么我们的隐密性九没了,所以为了避免这种情况,引入了一种简单的认证机制(comminuty)社区的名字就是双方通信的密码。NMS端向被监控主机发送我就是cominuty:XXX,被监控端如果认可:XXX,就把数据返回过去。

SNMP  v1版本中有3种comminuty模式: read-only,read-write,trap

read-only:管理端只能向被管理端发起获取信息的请求,也就是只能从被管理端读信息的

read-write:管理端可以向被管理端发送控制指令,也就是管理端有权限去操作被管理端。例如:让其shutdown

trap:被监控端能主动的去联系监控端的,告诉其这里有问题。

SNMP是基于UDP协议的Agent(被监控端被动打开udp:161端口),NMS(监控端被动打开udp:162端口)

SNMP基于udp协议主要是速度快,tcp协议可靠,但是需要三次握手,如果被监控端报警急需要处理,三次握手之后被监控端已经down机了。

Linux上关于sbmp的软件包有两个

net-snmp 【snmp的Agent被监控端所用】

net-snmp-util 【监控端所要用的命令集合】

注意:对于被监控端而言,只需要这一个包net-snmp。对于监控端而言,正常情况下如果只是为了获取信息,无论是get/set,使用这一个包就行了net-snmp-utils,但是如果说我们要接收被监控端通过trap发过来的通知信息的话,那么我们的监控端就必须要装上net-snmp这个包,并启用/etc/rc.d/init.d/snmptrapd 这个服务。

Nagios 工作原理的更多相关文章

  1. Nagios工作原理

    图解Nagios的工作原理 Nagios的主动模式和被动模式 被动模式:就如同上图所显示的那样,客户端起nrpe进程,服务端通过check_nrpe插件向客户端发送命令,客户端根据服务端的指示来调用相 ...

  2. zabbix监控的基础概念、工作原理及架构

    一.什么是zabbix及优缺点(对比cacti和nagios) Zabbix能监视各种网络参数,保证服务器系统的安全运营:并提供灵活的通知机制以让系统管理员快速定位/解决存在的各种问题.是一个基于WE ...

  3. zabbix监控的基础概念、工作原理及架构(一)

    zabbix监控的基础概念.工作原理及架构 转载于网络 一.什么是zabbix及优缺点 Zabbix能监视各种网络参数,保证服务器系统的安全运营,并提供灵活的通知机制以让系统管理员快速定位/解决存在的 ...

  4. cacti,zabbix,nagios各自原理及区别

    cacti,zabbix,nagios各自原理及区别 Taxing祥 0人评论 19462人阅读 2017-09-24 00:23:54   cacti原理: 1,构件(步骤): net_snmp:负 ...

  5. puppet工作原理及部署redis主从篇

    一.简介 1.国际惯例什么是puppet puppet是一种Linux.Unix.windows平台的集中配置管理系统,使用自有的puppet描述语言,可管理配置文件.用户.cron任务.软件包.系统 ...

  6. 菜鸟学Struts2——Struts工作原理

    在完成Struts2的HelloWorld后,对Struts2的工作原理进行学习.Struts2框架可以按照模块来划分为Servlet Filters,Struts核心模块,拦截器和用户实现部分,其中 ...

  7. 【夯实Nginx基础】Nginx工作原理和优化、漏洞

    本文地址 原文地址 本文提纲: 1.  Nginx的模块与工作原理    2.  Nginx的进程模型    3 . NginxFastCGI运行原理        3.1 什么是 FastCGI   ...

  8. HashMap的工作原理

    HashMap的工作原理   HashMap的工作原理是近年来常见的Java面试题.几乎每个Java程序员都知道HashMap,都知道哪里要用HashMap,知道HashTable和HashMap之间 ...

  9. 【Oracle 集群】ORACLE DATABASE 11G RAC 知识图文详细教程之RAC 工作原理和相关组件(三)

    RAC 工作原理和相关组件(三) 概述:写下本文档的初衷和动力,来源于上篇的<oracle基本操作手册>.oracle基本操作手册是作者研一假期对oracle基础知识学习的汇总.然后形成体 ...

随机推荐

  1. OpenCV中Kinect的使用(1)

    图像处理中一般为了更好的获取外部信息都会使用到Kinect,其优势在于除了传统的RGB摄像头之外,还拥有一个获取深度信息的3D深度感应器,因此可以获得外界物体的3维信息实现物体的跟踪.手势识别等各项功 ...

  2. java FTP 上传下载删除文件

    在JAVA程序中,经常需要和FTP打交道,比如向FTP服务器上传文件.下载文件,本文简单介绍如何利用jakarta commons中的FTPClient(在commons-net包中)实现上传下载文件 ...

  3. 第二章----python函数

    第一节:调用函数 1.函数是什么? 函数是组织好的,可以重复利用的. 2.为什么要用到函数? 提高应用的模块性,提高重复利用率.指的是:多个文件中可能都要用到该函数,直接拿来调用就行,不用在重复写一个 ...

  4. 如何通过PHP判断年份是否是闰年----两种方法

    1.定义:闰年是对4取余为0,对100取余不等于0,对400取余等于0的年是闰年. 2.代码: 第一种方法:直接函数判断 $day = date('Y'); if ($day%4==0&&am ...

  5. redis 列表的底层数据结构链表

    当一个列表键包含了数量比较多的元素,又或者列表中包含的的元素都是比较长的字符串,Redis就会使用链表作为列表键的底层实现 每个列表节点的数据结构为 列表数据接口中保存了 该节点前置节点的指针.后置节 ...

  6. Android开发:《Gradle Recipes for Android》阅读笔记(翻译)2.7——使用Android Studio签署发布apk

    问题: 想要使用Android studio生成签名配置,给他们分配build类型. 解决方案: Build菜单提供了生成签名配置,Project Structure窗口有tab用于分配不同的type ...

  7. 【BZOJ1820】[JSOI2010]Express Service 快递服务 暴力DP

    [BZOJ1820][JSOI2010]Express Service 快递服务 Description 「飞奔」快递公司成立之后,已经分别与市内许多中小企业公司签订邮件收送服务契约.由于有些公司是在 ...

  8. The C Programming Language Second Edition

    %12d  at least #include <stdio.h> main() { ,sum=,w=; ; ; w<=end; w++ ) { sum+=w; // for(wb= ...

  9. JavaScript正则中\1\2的作用

    一.示例 1. 验证6个相同的数字 var reg = new RegExp(/^(\d)\1{5}/g); var a = '333333'; if(reg.test(a)) { alert('ri ...

  10. 【题解】Digit Tree

    [题解]Digit Tree CodeForces - 716E 呵呵以为是数据结构题然后是淀粉质还行... 题目就是给你一颗有边权的树,问你有多少路径,把路径上的数字顺次写出来,是\(m\)的倍数. ...