构建一个智能的运维监控平台,必须以运行监控和故障报警这两个方面为重点,将所有业务系统中所涉及的网络资源、硬件资源、软件资源、数据库资源等纳入统一的运维监控平台中,并通过消除管理软件的差别,数据采集手段的差别,对各种不同的数据来源实现统一管理、统一规范、统一处理、统一展现、统一用户登录、统一权限控制,最终实现运维规范化、自动化、智能化的大运维管理。
************************************ nagios 各目录作用 *************************************
************************************ nagios /etc下各目录文件的作用 *****************************
Nagios 在验证配置文件方面做的非常到位,只需通过一个命令即可完成:
# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
*************************************** NRPE *************************************************
Nagios 通过NRPE 来远端管理服务
1. Nagios 执行安装在它里面的check_nrpe 插件,并告诉check_nrpe 去检测哪些服务。
2. 通过SSL,check_nrpe 连接远端机子上的NRPE daemon
3. NRPE 运行本地的各种插件去检测本地的服务和状态(check_disk,..etc)
4. 最后,NRPE 把检测的结果传给主机端的check_nrpe,check_nrpe 再把结果送到Nagios状态队列中。
5. Nagios 依次读取队列中的信息,再把结果显示出来。
*************************************** pnpnagios *************************************************
pnp4nagios一个基于php和perl,用rrdtool将nagios采集的数据绘制图表的工具,以可视化图形的方式呈现给用户的一款nagios插件
*************************************** RRDtool *************************************************
RRDtool是一套可以把數據畫成圖表的程式,以時間為x軸、流量為y軸,而且可以動態更新圖表的程式,
RRDtool運作的大概流程︰
步驟一︰建立RRD檔,這個檔說來說去就是RRDtool的「專屬」資料庫啦!RRDtool以自有的格式存放流量
資料,下面會有比較詳細的說明。
步驟二︰「抓取資料」個人覺得是整個RRDtool最困難的一部分,因為RRDtool的資料是要靠自己弄出來
,不若MRTG內建抓資料功能,但是卻因為如此,可以「餵」給RRDtool畫圖的資料彈性也比較大,例如︰
snmp查詢結果、系統狀態、網頁中特定數字統計..等等。
步驟三︰抓下來的資料就用「rrdtool update」的指令更新步驟更新的RRD檔的內容,讓圖表能畫出最新
的流量。
步驟四︰這就是重點啦!透過「rrdtool graph」的指令來依據RRD檔的資料繪圖,這也是使用者唯一看
的到的東西,若規劃的不好會影響使用者閱讀上的困難!
迴圈︰由於要達成動態繪圖的圖表,第二步驟到第四步驟必須不斷的重複執行以維持資料的更新,目前
知道要達成迴圈的方法有兩種︰1、在Script中使用迴圈;2、使用cron這個排班程式做排班。
http://www.blogjava.net/ruoyoux/articles/257138.html
MRTG 能够通过 cfgmaker 和 indexmaker 快速建立配置文件和HTML页面
RRDtool 在这两方面都需要自己动手。数据的采集→插入数据→提取数据→绘图→建立 HTML ,这些步骤都是需要你自己动手的 RRDtool 所使用的数据库文件的后缀名是 ‘.rrd’。
总结RRDtool 和 MRTG 的不同之处
A) MRTG 是采用配置文件的方式来监控的;
RRDtool 则没有配置文件一说。所有操作都是通过命令(也可以写成script方式)执行
B) MRTG 有自动采集数据的功能(通过 snmp);
RRDtool 没有,需要手工或者通过 shell/perl 脚本来获取数据
C) MRTG 每次运行都会更新图片和日志;
RRDtool 默认知识接收数据,并不会绘图,除非手工执行 graph 命令
D) MRTG 采用明文的 log 方式存放历史数据;
RRDtool 采用数据库的方式来存放数据;
E) MRTG 无法回放日志数据,因为 MRTG 会对日志进行合并;
RRDtool 采用 RRA 的概念,把不同统计周期的数据单独存放,所以可以做到历史数据的回放功能
F) MRTG 的 log 中每种周期的记录的数量是自动维护的;
RRDtool 的 RRA 中的记录数是可以自定义的。
G) MRTG 中数据的统计时间间隔是固定的,例如 5分钟平均,30分钟平均,2小时平均,1天平均;
RRDtool 可以任意设置(试过1分钟一次)
H) MRTG 一张图只能显示2个对象;
RRDtool 可以显示多个。
I) MRTG 的数据类型只有 COUNTER 和 GAUGE 两种;
RRDtool 有5种,COUNTER、GAUGE、DERIVE、ABSOLUTE、COMPUTE
J) MRTG 的图表只能显示当前值、最大值、平均值;
RRDtool 可以显示当前值(LAST)、初值(FIRST)、最大值(MAX)、最小值(MIN)、平均值(AVG)、总和(TOTAL)等
K) MRTG 绘图方式只有 AREA、LINE 方式;
RRDtool 则有 AREA、LINE(1|2|3)、STACK 方式;
L) MRTG 负责搜集、存储、绘图、建档(HTML);
RRDtool 只负责存储、绘图这两个阶段,所以需要自己建立 HTML 文件
M) MRTG 的运算功能较差;
RRDtool 可以通过 CDEF 对取出来的数据进行算术和逻辑运算;
N)MRTG 只能原原本本的显示数据;
RRDtool 可以对数据进行处理,或者有条件的显示;
所谓抖动,是指状态在一定时间内变化过于频繁。如果某个对象处于抖动状态,那么这时候的状态变化也是无意义的。
Nagios通过统计状态变化的频度,与用户配置的阈值比对,来判定是进入还是退出抖动状态。
介绍nagios很赞的一篇博客 :http://www.cnblogs.com/mchina/archive/2013/02/20/2883404.html