【Prometheus】什么是prometheus?prometheus简介

简介: 【Prometheus】什么是prometheus?prometheus简介

一、什么是prometheus?

Prometheus官网

Prometheus开源代码

From metrics to insight

Power your metrics and alerting with the leading open-source monitoring solution.

以上是Prometheus官网首页上非常一句醒目的话。我们从这一句话中就可以知道Prometheus是一个开源的监控系统解决方案,能增强你的指标和警报。首先我们先有个印象,Prometheus是一个开源的监控系统。

Prometheus是一个开源监控系统,它前身是SoundCloud的警告工具包。从2012年开始,许多公司和组织开始使用Prometheus。该项目的开发人员和用户社区非常活跃,越来越多的开发人员和用户参与到该项目中。目前它是一个独立的开源项目,且不依赖与任何公司。为了强调这点和明确该项目治理结构,Prometheus在2016年继Kurberntes之后,加入了Cloud Native Computing Foundation。主要具有如下功能:

  1. 多维数据模型(由度量名称和键/值维度集定义的时间序列)
  2. PromQL,一种强大而灵活的查询语言,可以利用这个维度
  3. 不依赖分布式存储;单服务器节点是自治的
  4. 时间序列收集的HTTP拉模型
  5. 通过批处理作业的中间网关支持推送时间序列
  6. 通过服务发现或静态配置发现目标
  7. 多种图形和仪表板支持模式
  8. 支持分层和水平联合

二、体系结构概述

以下体系架构也是从官网上得到的。

Prometheus直接或通过中间推送网关从插入工具的作业中获取指标,用于短期作业。它将所有采集的样本存储在本地,并对这些数据运行规则,以便从现有数据中聚合和记录新的时间序列,或者生成警报。Grafana或其他API消费者可用于可视化收集的数据。

从上图中可以得出它主要包含的组件有

  1. Prometheus server :定期从静态配置的 Prometheus targets (数据源)或者服务发现的 targets (数据源)拉取数据。
  2. Retrieval:检索拉去到的数据分发给TSDB进行存储。
  3. HTTP server:用于接受外界的HTTP请求。
  4. TSDB:当新拉取的数据大于配置内存缓存区的时候,Prometheus会将数据持久化到磁盘(HHD/SSD)(如果使用 remote storage 将持久化到云端)。
  5. Prometheus 可以配置 rules,然后定时查询数据,当条件触发的时候,会将 alert(警告) 推送(pushalerts)到配置的 Alertmanager(警告管理器)。
  6. Alertmanager :收到警告的时候,可以根据配置,聚合,去重,降噪,最后发送警告。
  7. API client,Grafana:API client通过使用promQL查询数据,Grafana用于聚合数据将数据可视化。
  8. Web UI: Prometheus的web接口,可用于简单可视化,及语句执行或者服务状态监控。
  9. Short-lived jobs:存在时间不足以被删除的短暂和批量作业
  10. Pushgateway:shaort-lived jobs 在推出时将数据推给pushgateway,主要用于业务数据汇报等。

三、适用场景

Prometheus很适合记录任何纯数字时间序列。它既适用于以机器为中心的监控,也适用于高度动态的面向服务架构的监控。在微服务的世界中,它对多维数据收集和查询的支持是一个特别的优势。

Prometheus是为可靠性而设计的,它是您在停机期间使用的系统,允许您快速诊断问题。每个Prometheus服务器都是独立的,不依赖于网络存储或其他远程服务。当基础设施的其他部分出现故障时,您可以依靠它,并且不需要设置大量的基础设施来使用它。

四、不适用的场景

Prometheus重视可靠性。即使在故障情况下,您也可以随时查看系统的可用统计信息。如果您需要100%的准确度,例如按请求计费,Prometheus不是一个好的选择,因为收集的数据可能不够详细和完整。在这种情况下,您最好使用其他系统来收集和分析计费数据,并使用Prometheus进行其他监控。

例如:它不适用于实时计费系统

完结!


相关文章
|
3月前
|
Prometheus Cloud Native 机器人
Prometheus告警简介
Prometheus告警简介
|
4月前
|
存储 Prometheus 监控
Prometheus实战篇:Prometheus简介
Prometheus 是一个开源的服务监控系统和时序数据库,其提供了通用的数据模型和快捷数据采集、存储和查询接口。
|
4月前
|
Prometheus Cloud Native 关系型数据库
prometheus|云原生|prometheus项目安装postgres-exporter监视组件的部署简介
prometheus|云原生|prometheus项目安装postgres-exporter监视组件的部署简介
83 0
|
8月前
|
Prometheus 监控 Cloud Native
【Prometheus简介】
【Prometheus简介】
87 0
|
存储 缓存 Prometheus
【监控利器Prometheus】——Prometheus简介与安装
Prometheus简介与安装 1、Prometheus简介 2、安装 Prometheus Server 3、 安装 Grafana
【监控利器Prometheus】——Prometheus简介与安装
|
存储 数据采集 Prometheus
Prometheus原理简介
充分了解Prometheus原理
546 0
Prometheus原理简介
|
JSON Prometheus 监控
prometheus+grafana简介与linux下的安装
prometheus+grafana简介与linux下的安装
227 0
prometheus+grafana简介与linux下的安装
|
Cloud Native Prometheus 监控
带你读《Prometheus监控实战》之二:Prometheus简介
本书首先从监控体系讲起,介绍了关于监控的各种经典理论和方法。然后循序渐进地介绍了Prometheus的各个功能组件和配置方法,包括监控主机和容器、服务发现、警报管理,以及Kubernetes和运行其上的应用程序的监控。
|
存储 Prometheus 监控
1.1 Prometheus 简介
Prometheus 是一个开源的系统监控和警报工具,最初是在 SoundCloud 上构建的。自2012年启动以来,许多公司和组织都采用了 Prometheus,该项目拥有非常活跃的开发人员和用户社区。
1935 0
|
3月前
|
编解码 Prometheus 运维
Prometheus 的监控方法论
【1月更文挑战第24天】