Prometheus - Concept

news/2024/11/8 16:48:41/

一 Prometheus 是什么

        Prometheus 是一个开源的 监控和报警系统 。该系统内置和基于时间序列地抓取、存储、查询、绘图数据、报警。
        现在是一个开源项目,继 K8S 后的第二个云原生计算基金会的托管项目,可见其火爆程度。

二 Prometheus 的特征

Prometheus 的特征:
        1)一个包含由度量名称和键值对 标识的 时间序列 数据多维数据模型(K-V,时间序列)
        2)基于一种灵活的查询语言来利用这种维度:PromQL
        3)单个服务器节点自主,不依赖分布式存储
        4)通过 HTTP 上的 pull 模型进行时间序列收集
        5)也可通过中间网关支持推送时间序列
        6)通过服务发现或静态配置发现目标(如在 prometheus.yml 配置 targets)
        7)多种图形和仪表板支持模式(如 grafana)

三 Prometheus 的架构及组件

        下图看着很复杂,但实际可以看成五个部分,Pushgateway / Job / exporter 属于数据采集
模块,Alertmanager 属于告警模块,可以看成是一块额外的软件,UI / Grafana / ... 是成图工
具,还有服务发现模块,核心组件为 Prometheus server。在 prometheus 官网 Getting started
下的就是 prometheus Server。
        一个基本的流程是:Prometheus 配置定时拉取各个节点的数据,默认拉取方式是 pull,也
可用 pushgateway 提供的 push 方式获取各个监控节点的数据,得到的监控数据就会存储在
TSDB 数据库中,然后通过内置的 PromQL 查询,可以在 prometheus 自带的 UI 展示,也可另外
将 Prometheus 监控数据接入 Grafana,交由 Grafana 统一管理,做出更丰富的图像展示。同时,
可以加入 Alertmanage 提供报警功能。

四 Prometheus 的优缺点

优点:
        1)高精细,可精确到 1~5 秒的采集精度
        2)高效,支持百万级的指标监控,多种数据模型;
        3)强大的查询语句 PromQL,可以适用多种查询场景;
        4)周边插件丰富开源
        5)支持 多样化的展示方式,除 grafana,还有很多第三方工具;
        6) 社区活跃,功能拓展及其他问题能有不少有效解决;
        7)易于维护,部署简单,可以通过二进制文件直接启动;
        等等。
缺点:
        1)大量采集任务下,采集速度与效率有瓶颈。单个 Prometheus Server 无法承受过大量
的采集任务,而在多个 Prometheus Server 进行分布采集的成本较高;
        2)可监控的数据类型有效;
        等等。

 

参考:Prometheus 官网: https://prometheus.io/


http://www.ppmy.cn/news/768861.html

相关文章

解决mac系统大小写切换异常问题

码农打字最要紧的是什么?当然是大小写切换,然而最近我遇到大小写无法正常切换的bug,一按中英文按钮直接转到系统输入法,取消勾选中英文切换输入法也没用。最后baidu几天,发现是微信老问题一直没修复,把微信…

mac切换node版本

1.安装node环境 npm install -g n 2.将node升级到稳定版本 sudo n stable 3.安装最新的node版本 sudo n latest 4.安装指定的node版本(最常用) sudo n v14.17.4 // 版本v自定义 5、检查目前安装了哪些版本的node,会出现已安装的node版本&am…

MacbookPro双显卡切换使用命令

sudo pmset -a GPUSwitch 0 // 强制使用集显 sudo pmset -a GPUSwitch 1 // 强制使用独显 sudo pmset -a GPUSwitch 2 // 自动切换模式

【nvm】mac系统切换node版本之后,yarn等全局安装的包都没了

切换回去就有了,看到网上的解释是node中npm下载的包只在当前版本的node下使用,切换后需要重新下载,我在win上面切换好像没有出现这种情况 https://www.nuomiphp.com/t/60e01b75c5e91a05f526edc1.html

mac下Python2.7和Python3之间切换

安装Python3.X版本 因为系统自带了Python2.7,所以我们首先需要安装Python3.X版本。 安装教程:《Mac版Python3安装/升级》 Python版本切换 路径 首先我们来看2个版本的安装路径: Python2.7: /System/Library/Frameworks/Python…

Mac系统下快捷切换到Win系统的方法

平常需要点击4部操作才可以重新启动到Win系统,通过下面的方法可以一步搞定。 使用AppleScript Editor 编辑保存如下脚本,使用的时候双击运行即可 do shell script "bless -mount /Volumes/BOOTCAMP/ -legacy -setBoot -nextonly" password &q…

Mac 如何切换不同版本python环境

Mac 如何切换不同版本python环境 Mac自带的python版本是python2.7,目前使用较多的是3.x的版本 将默认的python版本由2.x切换到3.x python2.7自带的,无需处理 环境变量如下: export PATH”/usr/bin/python2.7:${PATH}“ (我的环境变量&…

Mac 切换 JDK 版本

Mac 切换 JDK 版本 1 背景 近期为了体验一把 JDK17,在 idea 里面下载了 JDK17,如下图所示: 没想到下载这个会自动把我电脑的 JAVA 环境设置为 JDK17。 $ java -version openjdk version "17.0.5" 2022-10-18 LTS OpenJDK Runti…