1.1 Prometheus 简介

本文涉及的产品
可观测监控 Prometheus 版,每月50GB免费额度
简介: Prometheus 是一个开源的系统监控和警报工具,最初是在 SoundCloud 上构建的。自2012年启动以来,许多公司和组织都采用了 Prometheus,该项目拥有非常活跃的开发人员和用户社区。

Prometheus 是一个开源的系统监控和警报工具,最初是在 SoundCloud 上构建的。自2012年启动以来,许多公司和组织都采用了 Prometheus,该项目拥有非常活跃的开发人员和用户社区。它现在是一个独立的开源项目,独立于任何公司进行维护。为了强调这一点,并阐明该项目的治理结构,Prometheus 于2016年加入 CNCF (云原生计算基金会),成为继 Kubernetes 之后的第二个托管项目。2018 年 8 月 9 日,CNCF 宣布开放源代码监控工具 Prometheus 已从孵化状态进入毕业状态。

特性

Prometheus 的主要特性有:

  • 一个多维数据模型,包含由 metric 和 key/value 标识的时间序列数据
  • PromQL是一种灵活的查询语言
  • 不依赖分布式存储,单个服务器节点是自治的
  • 基于 HTTP 协议通过 pull 形式进行收集时间序列数据
  • push 形式的时间序列数据是通过一个中间网关来支持的
  • targets 可以通过服务发现或静态配置发现的
  • 多种模式的图形和仪表盘支持

组件

Prometheus 生态系统由多个组件组成,其中许多是可选的:

Prometheus Server:主要的 Prometheus 服务器,它抓取和存储时间序列数据
Client Libraries:用于检测应用程序代码的库,主要用于客户端。
Push Gateway:支持短期生命周期的 Jobs
Exporter:为 HAProxy、StatsD、Graphite 等服务提供数据。
Alert Manager:一个告警处理工具
各种支持工具

大多数的 Prometheus 组件是用 Go 语言来编写的,这使得他们可以很容易的构建并且使用静态的二进制文件来部署。

架构

这张图展示了 Prometheus 的架构及其生态系统的一些组成部分:

prometheus architrcture
【图片来自官方网站】

Prometheus 从各种采集端的 Job 中获取 Metric,要么直接获取,要么通过 Push Gateway 获取短生命周期 Job 。它在本地存储所有抓取的数据,并对这些数据处理聚合和记录以生成新的时间序列,或者生成警报消息。Grafana 或其他 API 使用者可以使用 PromQL 语法来查询使用数据。

Prometheus 适合做什么

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

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

Prometheus 不适合做什么

Prometheus 的值是很可靠的。您总是可以查看有关系统的统计信息,即使在出现故障的情况下也是如此。如果您需要100%的准确性,例如按请求计费,Prometheus不是一个好的选择,因为收集的数据可能不够详细和完整。在这种情况下,最好使用其他系统来收集和分析用于计费的数据,并使用 Prometheus 来完成剩下的监视工作。

并且 Prometheus 并不适合监控字符串类的监控指标。

关于日志类的监控,请使用其他日志系统,比如 Grafana 的 Loki ,可以在 Grafana 中进行展示。Loki 目前还在测试阶段,可以进行尝试,请在稳定后再用于生产系统。

相关实践学习
容器服务Serverless版ACK Serverless 快速入门:在线魔方应用部署和监控
通过本实验,您将了解到容器服务Serverless版ACK Serverless 的基本产品能力,即可以实现快速部署一个在线魔方应用,并借助阿里云容器服务成熟的产品生态,实现在线应用的企业级监控,提升应用稳定性。
相关文章
|
6月前
|
Prometheus Cloud Native 机器人
Prometheus告警简介
Prometheus告警简介
|
3月前
|
Prometheus 监控 Kubernetes
prometheus学习笔记之简介与安装
prometheus学习笔记之简介与安装
prometheus学习笔记之简介与安装
|
存储 Prometheus 监控
【Prometheus】什么是prometheus?prometheus简介
【Prometheus】什么是prometheus?prometheus简介
124 0
|
6月前
|
存储 Prometheus Cloud Native
「译文」Prometheus 查询语言 PromQL 简介
「译文」Prometheus 查询语言 PromQL 简介
|
6月前
|
Prometheus Kubernetes 监控
Prometheus Operator 与 kube-prometheus 之一 - 简介
Prometheus Operator 与 kube-prometheus 之一 - 简介
|
6月前
|
存储 Prometheus 监控
Prometheus实战篇:Prometheus简介
Prometheus 是一个开源的服务监控系统和时序数据库,其提供了通用的数据模型和快捷数据采集、存储和查询接口。
|
6月前
|
Prometheus Cloud Native 关系型数据库
prometheus|云原生|prometheus项目安装postgres-exporter监视组件的部署简介
prometheus|云原生|prometheus项目安装postgres-exporter监视组件的部署简介
313 0
|
Prometheus 监控 Cloud Native
【Prometheus简介】
【Prometheus简介】
128 0
|
存储 缓存 Prometheus
【监控利器Prometheus】——Prometheus简介与安装
Prometheus简介与安装 1、Prometheus简介 2、安装 Prometheus Server 3、 安装 Grafana
【监控利器Prometheus】——Prometheus简介与安装
|
存储 数据采集 Prometheus
Prometheus原理简介
充分了解Prometheus原理
617 0
Prometheus原理简介
下一篇
无影云桌面