Nagios 快速实现数据可视化的几种方式
Nagios 是一款强大的开源监控软件,但他本身不能绘图,只能查看当前数据,不能看历史数据以及趋势,也正因此,想要更舒适的使用就要搭配绘图软件,现在可搭配的绘图软件有很多,例如 pnp4nagios,rrdtools,grafana,cacti,以及 Cloud Insight,这些软件和 Nagios 有的还要搭配使用。
本文就介绍以下几种快速实现 Nagio 数据可视化的软件,以及它们的安装配置方式和展示效果图。
Pnp4nagios,Rrdtools
Pnp4nagios 利用 rrdtool 工具将 Nagios 采集的数据绘制成相关的图表,而 rrdtool 的安装需要一系列繁杂的依赖关系。
- 先 yum 安装各种依赖关系
- 再安装 rrdtools,期间若有对应的错误要一一安装相应的依赖库
- 最后安装 PNP4nagios
- 安装完成后配置文件,配置需要对 nagios 进行四个方面的配置,修改
nagios.cfg,command.cfg,templates.cfg,以及服务器配置文件 localhost.cfg
最后出来的图是这样的:
操作难度:3星
界面直观指数:2星
Nagiosgraph
Nagiosgraph 是 Nagios 监控系统的一个插件,用 RRD 格式收集服务性能数据,通过 CGI 显示出数据的图表,nagiosgraph 创建图表并根据数据图像报告生成 HTML 页面。
- 安装 nagiosgraph 组件,先下载源码包
- 检测环境要求,安装缺少的模块,同时还要注意版本的要求
- 安装,成功后编辑 nagios.cfg,commands.cfg,httpd.conf,templates.cfg 文件
- 重启 nagios,在 web 上即可看到
配置出来的图是这样的:
操作难度:3星半
界面直观指数:2星半
Graphite,Grafana
Graphite 从 nagios 收集数据,存储时间序列数据,根据需要呈现数据的图形。
Grafana 是一种专业的图形生成软件,只有数据展示的功能,是一个纯粹的 html/js 应用。它专注于提供丰富的方式来可视化时间序列指标。所以和 Graphite 搭配一起展示 Nagios 数据。
Graphios 是一个脚本,可以把 nagios 数据发送给 graphite ,解决 graphite 获取不到 nagios 数据的问题
- graphite 安装准备环境
- 获取安装包 graphite-web,carbon,whisper
- 配置 apache,初始化数据库
- 启动 graphite,设置登陆 graphite 的用户名及密码
- apache 添加 grafana 配置,设置登陆 grafana 的用户名及密码
- 安装elasticsearch
- 获取 grafana 源码,修改 config.js,设置登陆的用户及密码
- 配置 nagios 给 graphite 发送数据的脚本 graphios
- 配置 nagios,修改配置文件 nagios.cfg,commands.cfg,配置 nagios 使用 graphios
- 以上全部配置完,重启 nagios
图表基本上是这样的:
好好看,但至少你得掌握 Graphite,Grafana,Graphios 安装配置。
操作难度:5星
界面直观指数:4星半
Cacti
Cacti 是一套开源的,基于 RRDTool 良好绘图功能的网络流量监测图形分析工具,通过 NPC(Nagios Plugin for Cacti) 插件将nagios 的监控信息整合到监控页面中
- 安装 cacti 依赖包,安装cacti
- 设置 apache,mysql,php,cacti
- 安装插件之前先安装 PIA(Cacti-Plugin),之后安装 npc 插件,安装好后可以在 Cacti 界面里使用 Nagios
的功能 - 登录 cacti 后台,在插件管理中心安装并启用 NPC
图形展示是这样的:
操作难度:3星半
界面直观指数:2星
Cloud Insight
Cloud Insigh 是一个通过 StatsD 收集数据,使用 OpenTSDB 对性能指标进行聚合、分组、过滤,利用 highcharts 做前端展示的数据管理平台。
- 一键安装探针,40s 即可安装成功
修改 nagios 配置文件 nagios.cfg,Cloud Insight 配置文件 nagios.yaml
重启探针
出来的图形是这样的:
操作难度:2星
界面直观指数:4星
总结
综上, Nagios 想要看到实时数据显示情况以及历史趋势,那就需要配置数据可视化的插件,上面各种软件的配置情况如上,可根据自己喜好,时间,兴趣配置不同图形看一看。
还有,5.1假期快到了,你还有几天时间可以搞一搞?再顺道琢磨琢磨配置除了图表功能之外的其他功能!
Cloud Insight 集监控、管理、计算、协作、可视化于一身,帮助所有 IT 公司,减少在系统监控上的人力和时间成本投入,让运维工作更加高效、简单。想阅读更多技术文章,请访问 OneAPM 官方技术博客。
本文转自 OneAPM 官方博客
Nagios 快速实现数据可视化的几种方式的更多相关文章
- QF——iOS中数据持久化的几种方式
数据持久化的几种方式: 一.属性列表文件: .plist文件是种XML文件.数组,字典都可以和它互相转换.数组和字典可以写入本地变成plist文件.也可以读取本地plist文件,生成数组或字典. 读取 ...
- 基于MVC4+EasyUI的Web开发框架经验总结(12)--利用Jquery处理数据交互的几种方式
在基于MVC4+EasyUI的Web开发框架里面,大量采用了Jquery的方法,对数据进行请求或者提交,方便页面和服务器后端进行数据的交互处理.本文主要介绍利用Jquery处理数据交互的几种方式,包括 ...
- 实现web数据同步的四种方式
http://www.admin10000.com/document/6067.html 实现web数据同步的四种方式 1.nfs实现web数据共享 2.rsync +inotify实现web数据同步 ...
- 数据存储的两种方式:Cookie 和Web Storage
数据存储的两种方式:Cookie 和Web Storage 1.Cookie Cookie的作用就像你去超市购物时,第一次给你办张购物卡,这个购物卡里存放了一些你的个人信息,下次你再来这个连锁超市时, ...
- RecyclerView 数据刷新的几种方式 局部刷新 notify MD
Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...
- 数据存储的两种方式:Cookie 和Web Storage(转)
数据存储的两种方式:Cookie 和Web Storage 数据存储的两种方式:Cookie 和Web Storage 1.Cookie Cookie的作用就像你去超市购物时,第一次给你办张购物卡 ...
- (转)基于MVC4+EasyUI的Web开发框架经验总结(12)--利用Jquery处理数据交互的几种方式
http://www.cnblogs.com/wuhuacong/p/4085682.html 在基于MVC4+EasyUI的Web开发框架里面,大量采用了Jquery的方法,对数据进行请求或者提交, ...
- PHP中数据类型转换的三种方式
PHP中数据类型转换的三种方式 PHP的数据类型转换属于强制转换,允许转换的PHP数据类型有: 1.(int).(integer):转换成整形2.(float).(double).(real):转换成 ...
- linux下实现web数据同步的四种方式(性能比较)
实现web数据同步的四种方式 ======================================= 1.nfs实现web数据共享2.rsync +inotify实现web数据同步3.rsyn ...
随机推荐
- Python2安装说明
1.Python版本 Python 2.x的版本的,被称为Python2:是目前用的最广泛的,比如Python 2.7.12. Python 3.x的版本的,被称为Python3:是最新的版本的,比如 ...
- linux 使用 pyodbc 访问 ms sqlserver 数据库
一.安装linux下Sqlserver的驱动程序: 我们先来安装SqlServer的驱动程序,再安装ODBC相关的,目的是想尽快可以进行测试,因为在安装完Freetds之后,我们马上就可以在linux ...
- 小心C语言的定义与声明
小心C语言的定义与声明 转自360博客 注:为便于说明问题,文中提及的变量和函数都被简化. 一.起源 DBProxy在测试过程中,发现对其执行某步管理操作后,程序有时会崩溃,但不是每次都出现. 二.G ...
- ASP.NET基础笔记
MSDN: ...
- django-south
python manage.py schemamigration youappname --initial # --initial在数据库创建models定义的表,以及South需要的south_mi ...
- C#取枚举描述
一直都觉得枚举是个很不错的东西,可以给我们带来很多方便,而且也增加代码的可读性. 我在之前已经介绍过枚举的简要应用了,再次再来写下怎么获取枚举的描述. 源码如下: 首先,我们定义个含有描述的枚举类型 ...
- Jquery 1.8.2 click function - 动态
Jquery 动态按钮方法如下: $("#parentID").on("click",'.classname',function(){$(this).par ...
- Python 抓取网页乱码问题 以及EXCEL乱码
import codecs f1=codecs.open('items.json', 'r', encoding='utf-8').read().decode("unicode_escape ...
- 11.Warning (332060): Node: pi_fck3p was determined to be a clock but was found without an associated clock assignment.
解释及措施:(1):这个信号是不是你期望的时钟信号?还是被综合器误将普通信号综合成了时钟信号?有没有在代码中用过这个信号的上升沿/下降沿? (2):如果是期望的时钟信号,那么是否有可能调整管脚位置约束 ...
- SQLite函数详解之二
sqlite3支持的数据类型: NULL.INTEGER.REAL.TEXT.BLOB 但是,sqlite3也支持如下的数据类型 smallint 16位整数 integer ...