Prometheus学习资料
是什么
高大上的监控平台
能给我带来什么
准确性和精确性的要求极大的贡献力量


特性
-
基于time series时间序列模型
时间序列模型,是一系列有序的数据,通常是等时间间隔的采样数据
-
基于K/V的数据模型
-
采用HTTP pull / push两种对应的数据采集传输方式
-
本身自带图形调试
-
最精细的数据采样理论上可以达到秒级采样

Prometheus组件



Prometheus metrics概念
Prometheus监控中,对于采集过来的数据统一称为metrics数据。其并不代表一种具体的数据格式,而是一种对于度量计算单位的抽象。
-
Gauges
最简单的度量标准,只有一个返回值,或者叫瞬时状态。例如我们想衡量一个等待队列中任务的个数、CPU使用率、内存使用率
-
Counters
Counter就是计数器,从数据量0开始累积计算,在理想状态下,只能永远增长或保持不变,不会下降(特殊情况另说)
比如累积用户访问量
-
Histograms
Histograms统计数据的分布状况,比如最小值,最大值,中位数,75百分位,90百分位,95百分位,99百分位












PromQL进阶






Promethus监控实例——CPU
node_cpu:监控cpu的key
node_cpu{
mode="idle"} #cpu空闲使用时间
increase(node_cpu{
mode="idle"}[1m]) #一分钟内CPU空闲使用时间
sum(increase(node_cpu{
mode="idle"}[1m])) #聚合多核CPU一分钟内CPU空闲使用时间
by(instance):此函数可以把sum加合到一起的数值,按照指定的一个方式进行一层拆分,instance代表的是机器名
sum(increase(node_cpu{
mode="idle"}[1m])) by(instance) #表示把sum函数中服务器加合再强行拆分出来
sum(increase(node_cpu[1m])) by(instance) #全部CPU时间一分钟增量
sum(increase(node_cpu{
mode="idle"}[1m])) / sum

本文详细介绍了Prometheus,一个高大上的监控平台,强调了它在准确性和精确性方面的作用。文章涵盖Prometheus的基本概念,如time series数据模型、K/V数据模型,以及HTTP pull/push数据采集方式。此外,还探讨了Prometheus组件,如metrics、Gauges、Counters和Histograms。文章进一步讲解了PromQL中的关键函数,如rate、increase、sum和topk,并介绍了服务发现、企业级监控数据采集方法、Exporter、Pushgateway以及Grafana的安装和配置。最后,文章提到了Prometheus的告警配置和管理。
最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



