Prometheus和Grafana简介

文章目录

前言

官网地址

  • 灵活的时间序列数据库
  • 定制各式各样的监控规则
  • Prometheus的开发人员和用户社区非常活跃
  • 独立的开源项目,不依赖于任何公司
  • 继Kurberntes之后第二个入驻的项目

Prometheus架构

Prometheus 监控系统是由多个组件组成 Prometheus架构如下图所示

采集层

  • Exporters: Prometheus 定期通过HTTP请求从目标资源中拉取数据。目标资源可以是应用程序、系统、服务或其他资源。Prometheus提供大量Exporter(https://prometheus.io/docs/instrumenting/exporters/)
  • Pushgateway: 用于集中管理临时性或周期性任务的指标数据,并暴露给Prometheus Server

存储和处理层

数据存储: Prometheus Server整个架构的核心,负责汇总后来自Exporters,Pushgateway以及其他程序提供的指标数据,并将这些数据存储到本地磁盘上。Prometheus Server还可以将数据存储到第三方存储系统上,如InfluxDB,OpenTSDB,以满足高效的存储需求

**查询和分析:**提供强大的PromQL查询语言,支持多维数据查询和分析

展示层

**Web UI:**内置的Web页面,可以对Prometheus进行基本管理

**Grafana:**提供对Grafana的支持,为用户呈现更丰富的图表和仪表盘

**API clients:**包含多种编程语言的客户端库,用于与Prometheus API进行交互,为开发者提供简单易用的编程接口

告警层

**Altermanager:**负责接收来自Prometheus Server的告警事件,根据预定义的策略将告警通知发送到不同的通讯软件,如邮箱,微信等

Prometheus时间序列数据

什么是序列数据?

时间序列数据 (TimeSeries Data):按照时间顺序记录系统、设备状态变化的数据被称为时序数据

时间序列数据特点

  • 性能好 :关系型数据库对于大规模数据的处理性能糟糕。NOSQL 可以比较好的处理大规模数据,依然比不上时间序列数据库。
  • 存储成本低:高效的压缩算法,节省存储空间,有效降低 IO。

官方数据 :Prometheus 有着非常高效的时间序列数据存储方法,每个采样数据仅仅占用 3.5byte 左右空间,上百万条时间序列,30 秒间隔,保留 60 天,大概200多G。

Promethues适合场景

间,上百万条时间序列,30 秒间隔,保留 60 天,大概200多G。

Promethues适合场景

Prometheus 非常适合记录任何纯数字时间序列。它既适合以机器为中心的监控,也适合监控高度动态的面向服务的体系架构

相关推荐
tianyuanwo3 天前
Prometheus 服务部署指南:从架构原理到生产级落地
架构·prometheus
看浪的路人6 天前
第8讲:记忆系统的监控与运维——Prometheus 指标、Grafana 面板与告警体系
运维·grafana·prometheus
爬也要爬着前进7 天前
Prometheus通过Nginx-vts-exporter模块监控nginx服务
运维·nginx·prometheus
Crayon Lin8 天前
Prometheus
prometheus
学编程的小程9 天前
服务器日志太分散不好查?我用Promtail+Loki+Grafana把采集、查询和分析串起来了
服务器·python·grafana
川石课堂软件测试9 天前
JMeter异步接口测试实战
数据库·python·jmeter·mysql·kubernetes·测试用例·prometheus
lbb 小魔仙13 天前
Redis运行状态总靠手动查?我用redis_exporter+Prometheus把指标、告警和远程抓取全接起来了
redis·bootstrap·prometheus
程序员-Benothing13 天前
Linux系统监控工具全家桶:sar、dstat、glances、Prometheus
linux·运维·prometheus
花月C13 天前
Agent可观测性篇:Grafana
postgresql·grafana
wzq11_66613 天前
Prometheus监控——云原生与非云原生监控
云原生·prometheus