一、promethues概述

什么是promethues

promethues 是一个开源的报警系统和监控工具包;从2012年成立以来,许多公司和组织都采用promethues,并且这个项目有着很活跃的社区和开发者;现在他是一个开源项目,可以独立于任何公司进行维护;为了注重其独立性,并且澄清其治理结构,2016年promethes成为继 Kubernetes 之后,第二个加入 Cloud Native Computing Foundation 的托管项目。

特性

prometheues 主要有一下特性:

  • 由metric名称和K/V键值对标识的时间序列的多维数据模型

  • 简单的查询语言 PromQL

  • 不依赖分布式存储,单个服务节点自动治理

  • 通过HTTP的PULL模型获取数据的时序集合

  • 支持通过网关push 时序数据

  • 通过服务发现或者静态配置发现目标

  • 支持多种图表和仪表盘模式

组件

promethues 的生态系统包含多种可选的组件:

  • Prometheus server ,获取时序数据
  • 应用代码使用的类库
  • 支持短生命周期的 push-gateway
  • 针对不同服务出的专用 exporters
  • 支持报警的报警组件 alertmanager
  • 其他支持的工具

架构

下图说明了promethues 和他的生态系统组件


promuthues架构图.png

promethus 直接从仪表jobs(例如: 获取内存的使用等) 获取metrics ; 或者通过push-gateway 获取short-live jobs 的 metrics;并对本地已生成的数据进行汇总,记录,运算 生成新的时间序列或者发生警报;Grafana或其他API可用于可视化收集数据;

什么时候适合用promethues

Prometheus 适用于记录纯粹的时间序列; 它适用于以机器为中心或者高度动态面向服务的架构,在微服务世界中,支持多维数据的查询和收集是其特殊的优势

什么时候不适合用promethues

promethues 重视可靠性,即使在故障情况下,你也可以随时查看关于系统的可用统计信息;如果你需要100% 的准确性,比如按照每一次请求计费,promethues 不是一个好的选择,因为搜集的数据可能不够详细或者完整,在这种情况下,你最好选择其他的监控系统完成计费信息的收集和分析,promethues用来监控系统的其他情况;

你可能感兴趣的:(一、promethues概述)