一、Prometheus简介
Prometheus是一种开源的监控报警系统和是序列数据库【TSDB】。Prometheus采用Go语言开发,是一个系统和服务监控系统,以给定的时间间隔从配置的目标收集,度量,评估规则表达式,显示结果,并在观察到指定条件时触发警报。
Prometheus已经被广泛应用于数据中心监控,尤其是和Kubernetes结合的容器监控。而且Prometheus性能也足够支撑万台规模的集群。
Prometheus由两部分组成,一个是监控报警系统,另一个是自带的时序数据库【TSDB】
二、Prometheus特点
1、多维度数据模型
2、灵活的查询语言。
3、不依赖分布式存储,单个服务器节点是自主的。
4、通过基于HTTP的pull方式采集时序数据。
5、可以通过中间网关进行时序列数据推送。
6、通过服务发现或者静态配置来发现目标服务对象。
7、支持多种多样的图表和界面展示,比如Grafana等。
三、Prometheus运行流程
执行流程:prometheus根据配置定时去拉取各个节点的数据,默认使用的拉取方式是pull,也可以使用pushgateway提供的push方式获取各个监控节点的数据。将获取到的数据存入TSDB,一款时序型数据库。此时prometheus已经获取到了监控数据,可以使用内置的PromQL进行查询。它的报警功能使用alertmanager提供,alertmanager是prometheus的告警管理和发送报警的一个组件。prometheus原生的图标功能过于简单,可将prometheus数据接入grafana,由grafana进行统一管理。
四、搭建过程



