Graphite详解
Graphite详解
作者:chszs,未经博主允许不得转载。经许可的转载需注明作者和博客主页:http://blog.csdn.net/chszs
Graphite是一个开源实时的、显示时间序列度量数据的图形系统。Graphite并不收集度量数据本身,而是像一个数据库,通过其后端接收度量数据,然后以实时方式查询、转换、组合这些度量数据。Graphite支持内建的Web界面,它允许用户浏览度量数据和图。
Graphite有三个主要组件组成:
- 1)Graphite-Web
这是一个基于Django的Web应用,可以呈现图形和仪表板 - 2)Carbon
这是一个度量处理守护进程 - 3)Whisper
这是一个基于时序数据库的库
Graphite的整体架构图
一、Graphite的应用场景
Graphite通常用于监控基础设施级别的度量,比如CPU、内存、I/O利用率、网络吞吐量和延迟,当然Graphite在应用程序级的度量和业务级的度量方面也很不错。
Collectd是一个著名的、持续很久的Linux项目,它用于收集基础设施级的度量,在2012年被Graphite打包到项目中,作为Graphite的“写插件”。Collectd自带了很多采集插件,可以捕获从CPU到电池利用率方面度量数据,还可以度量Java和Redis方面。
通常度量不会直接发送给Graphite的后端,而是发送一次一个度量或采样给度量采集服务。StatsD是另一个开源项目,是一个著名的度量采集服务。它可以聚合接收到的采样数据,做计算统计,求平均值、标准差和其他一些统计,周期性地刷新数据到度量数据库。Graphite是StatsD的默认后端。
出于可视化的目的,内建Web界面是目前主流的选择。创建光滑的仪表板并不难,Grafana首先从Graphite获取信息,而且还可以与其它几个流行的度量数据库协同工作,比如InfluxDB、OpenTSDB和Premetheus。
当度量数据超过了预期的边界时,Graphite自身并不提供提醒功能。这方面有几个方案可以解决此问题。Cabot就是一个流行的选择,还可以使用另一个选择StackState,它提供了同样的功能。Cabot和StackState之间提醒功能的不同之处在于StackState集成了多个监控解决方案,它可以运行检查,不仅检查Graphite数据,而且检查各种以组合的监控数据。
二、Graphite的优点
- 1)Graphite非常快,它的架构是模块化可规模化的
- 2)Graphite很著名,有庞大的社区和广泛的支持
- 3)有很多与Graphite相互协作的开源工具
- 4)Graphite完成单个工作且做得很好
- 5)Graphite采用Apache 2.0许可证
三、Graphite的不足
- 1)Graphite不能对数据进行分片,因此要解决这个问题就是采用多个Graphite实例
- 2)Graphite的安装是一个很复杂的任务,尽管目前有了完整的Docker映像可以一次性安装Graphite及其依赖
Graphite详解相关推荐
- ELK学习笔记之Logstash详解
0x00 Logstash概述 官方介绍:Logstash is an open source data collection engine with real-time pipelining cap ...
- Jmeter - JMeter监听器 -上篇(详解教程)
目录 1.简介 2.预览监听器 3.常用监听器详解 3.1 察看结果树 3.2 汇总报告 3.3聚合报告 3.4后端监听器 3.5汇总图 3.6 断言结果 3.7比较断言可视化器 3.8 生成概要结果 ...
- influx配置文件详解
influx配置文件详解 官方文档: https://docs.influxdata.com/influxdb/v1.7/administration/config 全局配置 reporting-di ...
- X线DR医学图像 --- DR医用滤线栅及摩尔纹详解 (一) 滤线栅的原理
DR医用滤线栅详解 这是我曾经花了很多时间写的一个关于医用滤线栅的技术报告,里面都是以一问一答的方式讲述的.现在我以截图的方式分享给大家,希望对各位在普放医疗的战友有些许帮助. 1,滤线栅有什么用? ...
- InfluxDB详解
InfluxDB(时序数据库)(influx,[ˈɪnflʌks],流入,涌入),常用的一种使用场景:监控数据统计.每毫秒记录一下电脑内存的使用情况,然后就可以根据统计的数据,利用图形化界面(Infl ...
- 夜莺(Flashcat)V6监控(四):categraf-mtail日志收集插件详解
(一)mtail介绍 mtail 是谷歌开源的一款从应用日志中提取 metrics 的工具.categraf 将mtail作为一个插件集成了进来,并且兼容 mtail 的语法,简化了部署. ...
- 从命令行到IDE,版本管理工具Git详解(远程仓库创建+命令行讲解+IDEA集成使用)
首先,Git已经并不只是GitHub,而是所有基于Git的平台,只要在你的电脑上面下载了Git,你就可以通过Git去管理"基于Git的平台"上的代码,常用的平台有GitHub.Gi ...
- JVM年轻代,老年代,永久代详解
秉承不重复造轮子的原则,查看印象笔记分享连接↓↓↓↓ 传送门:JVM年轻代,老年代,永久代详解 速读摘要 最近被问到了这个问题,解释的不是很清晰,有一些概念略微模糊,在此进行整理和记录,分享给大家.在 ...
- docker常用命令详解
docker常用命令详解 本文只记录docker命令在大部分情境下的使用,如果想了解每一个选项的细节,请参考官方文档,这里只作为自己以后的备忘记录下来. 根据自己的理解,总的来说分为以下几种: Doc ...
最新文章
- 手把手教你安装OpenStack——Ocata安装指南(上)
- 大数据之Hadoop教程
- python环境搭建什么意思_如何搭建Python环境
- 使用console.table()调试javascript
- 范例 在 Setting 里加入 HiApk Settings 选项
- html5头像裁剪,移动端 上传头像 并裁剪功能(h5)
- JavaScript常用设计模式
- 编写可维护的JS 04
- 【CAD】CAD插件
- 【组队学习】【38期】组队学习内容详情!
- ps aux 中rss的单位
- qemu 规范路径_EVE-NG镜像添加技巧(以思科虚拟化产品为例)
- 编程浅谈-以一个初出茅庐的Java程序员视角
- 电灯开关-第12届蓝桥杯Scratch省赛2真题第1题
- 酒水行业数字化转型解决方案
- 网课答案搜题查询题库接口
- C++ 实现 ping 功能 域名(URL)解析实际 IP地址
- 家暴屡教不改能判刑吗
- 推荐一个 SpringBoot 2.x + vue 实现的个人支付宝、微信支付系统
- 数字1-7转换成星期一到星期天