Prometheus

Prometheus 简介

2018-05-15  本文已影响253人  xufeibuaa

翻译 原文链接

什么是Prometheus

Prometheus是一个开源的监控和报警系统。从2012年初,很多公司和组织开始使用Prometheus,同时这个项目有了很多活跃的开发者和用户社区。现在prometheus是一个独立于任何公司的开源项目,于2016年加入了Cloud Native Computing Foundation,是kubernetes之后的第二个主要项目。

特性

组件

Prometheus生态系统包含很多组件(大多是都是可选择的)

架构

下面这张图展示了prometheus的建构和prometheus系统可能需要到的组件:


architecture.png

Prometheus直接抓取exporters或者支持prometheus的jobs的监控数据,通过PushGateway间接抓取push工作模式的短期任务的监控数据。prometheus本地存储所有的采样数据,运行相应的规则来聚合数据、根据以存在的数据产生新的时间序列数据或者产生警报。Grafana或者其它可视化工具可以调用API可视化收集到的数据。

Prometheus使用的场景

Prometheus工作于任何记录纯数字的时间序列数据。它适用于以机器为中信的监控,也适用于高动态的、面向服务体系架构的监控。在微服务中,prometheus支持多维度的数据收集和展示是很有用处的。

Prometheus是专门为可靠性而设计的,当处理有问题的系统或服务时,为你提供诊断数据,使你能够快速的诊断问题。每个prometheus服务是单机的,不依赖于网络存储或者其它的远端服务。因此,你可以依赖prometheus,当你基础设施的其它部分坏掉的时候;同时部署、使用prometheus很简单。

Prometheus不适用的场景

Prometheus的核心在于可靠。你能够看到你的系统的统计数据,即使系统或者服务有问题(因为prometheus通过pull的方式收集数据,所以能够识别服务是否有问题)。如果你需要精准度很高的监控数据,比如按请求计费,prometheus不是一个好的选择;因为prometheus收集的数据可能不是很详细或者很完整。这种情况下,你最好选择其它的系统来收集和分析关于计费的数据;prometheus可以为你其它的监控提供服务。

上一篇下一篇

猜你喜欢

热点阅读