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 快速实现数据可视化的几种方式的更多相关文章

  1. QF——iOS中数据持久化的几种方式

    数据持久化的几种方式: 一.属性列表文件: .plist文件是种XML文件.数组,字典都可以和它互相转换.数组和字典可以写入本地变成plist文件.也可以读取本地plist文件,生成数组或字典. 读取 ...

  2. 基于MVC4+EasyUI的Web开发框架经验总结(12)--利用Jquery处理数据交互的几种方式

    在基于MVC4+EasyUI的Web开发框架里面,大量采用了Jquery的方法,对数据进行请求或者提交,方便页面和服务器后端进行数据的交互处理.本文主要介绍利用Jquery处理数据交互的几种方式,包括 ...

  3. 实现web数据同步的四种方式

    http://www.admin10000.com/document/6067.html 实现web数据同步的四种方式 1.nfs实现web数据共享 2.rsync +inotify实现web数据同步 ...

  4. 数据存储的两种方式:Cookie 和Web Storage

    数据存储的两种方式:Cookie 和Web Storage 1.Cookie Cookie的作用就像你去超市购物时,第一次给你办张购物卡,这个购物卡里存放了一些你的个人信息,下次你再来这个连锁超市时, ...

  5. RecyclerView 数据刷新的几种方式 局部刷新 notify MD

    Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...

  6. 数据存储的两种方式:Cookie 和Web Storage(转)

    数据存储的两种方式:Cookie 和Web Storage   数据存储的两种方式:Cookie 和Web Storage 1.Cookie Cookie的作用就像你去超市购物时,第一次给你办张购物卡 ...

  7. (转)基于MVC4+EasyUI的Web开发框架经验总结(12)--利用Jquery处理数据交互的几种方式

    http://www.cnblogs.com/wuhuacong/p/4085682.html 在基于MVC4+EasyUI的Web开发框架里面,大量采用了Jquery的方法,对数据进行请求或者提交, ...

  8. PHP中数据类型转换的三种方式

    PHP中数据类型转换的三种方式 PHP的数据类型转换属于强制转换,允许转换的PHP数据类型有: 1.(int).(integer):转换成整形2.(float).(double).(real):转换成 ...

  9. linux下实现web数据同步的四种方式(性能比较)

    实现web数据同步的四种方式 ======================================= 1.nfs实现web数据共享2.rsync +inotify实现web数据同步3.rsyn ...

随机推荐

  1. opensuse 安装 Anaconda3 之后出现Could not start d-bus. Can you call qdbus?

    最近在安装了opensue Leap42.1之后,想要学习一下python,就安装了Anaconda3,并且将Anaconda3的安装路径添加到了PATH里,但是在重新启动系统后,出现了"C ...

  2. hdu 1008

    题目意思是:给你N个数字  每个数字表示多少层楼  现在要你从0层楼开始坐电梯  一次按顺序走过这些楼层 规则是 上楼6秒 ,下楼4秒,每次到达一个楼层停5秒..... 思路:模拟 代码如下:(要注意 ...

  3. Android之使用HTTP协议的Get/Post方式向服务器提交数据

    1.Get方式 方法:通过拼接url在url后添加相应的数据,如:http://172.22.35.112:8080/videonews/GetInfoServlet?title=霍比特人&t ...

  4. Swift的一些基础内容

    //①判断字符串是否为空的方法 isEmpty var str:String = "www.baidu.com" if str.isEmpty { print("空字符串 ...

  5. jQuery插件实例一:年华时代插件Alert对话框

    在工作中使用jQuery插件相信对于程序员来说非常普遍,在网络上也有很多优秀的插件可供大家使用,功能非常强大.在之前用过的一些插件中,有些太过追求功能的强大和可配置性,造成使用的复杂度上升.个人认为与 ...

  6. ubuntu下xampp的安装

    转载:http://blog.csdn.net/zhoushengchao/article/details/6006584 首先,请从www.xampp.org下载最新版XAMPP.然后,将安装文件服 ...

  7. comparing-html5-mobile-ui-frameworks

    http://html5hub.com/comparing-html5-mobile-ui-frameworks/

  8. CS小分队第一阶段冲刺站立会议(5月9日)

    昨日完成工作:对新子项目进行构思规划 遇到问题:不知道如何将excel表导入C#,对于timer控件不熟悉 今日计划:完成将存在EXCEL表中的名单导入,并进行抽号,熟悉timer控件

  9. multipart/form-data

    Content-Type的类型扩充了multipart/form-data用以支持向服务器发送二进制数据

  10. dd面试经历

     HR面:看了我的简历,说fe做的简历就是不一样哈哈好吧,然后随便问了点项目,又问了什么时候可以去实习,就没了.三面:基本数据结构.冒泡排序.数组去重.ie与主流浏览器事件绑定.垂直居中的css实现方 ...