Prometheus - Concept

一 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.hqwc.cn/news/17688.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Mysql (insert,update操作)

1.创建表: 创建员工表employee,字段如下: id(员工编号),name(员工名字),gender(员工性别),salary(员工薪资) …

【网络编程】应用层协议——HTTP协议

文章目录 一、HTTP协议基本认识二、URL的认识2.1 urlencode和urldecode 三、HTTP协议格式3.1 HTTP请求与响应格式3.2 如何保证请求和响应被应用层完整读取?3.3 请求和响应如何做到序列化和反序列化?3.4 代码验证请求格式3.5 代码验证响应格式3.5.1 telne…

OpenGl纹理贴图

给图形赋予颜色时,采用纹理贴图的方式。 每个顶点关联一个纹理坐标(Texture Coordinate),然后在图形的其他片段上进行片段插值(Fragment Interpolation) 顶点坐标如下: float vertices[] { // positions // colors // texture coords 0.2f, 0.2f, 0.0f,…

创造一款安卓自定义控件_裁剪原理介绍

1、新增功能,旋转: 效果如图,点击旋转,可以将控件画面本身进行90度倍数的旋转,并进行宽高比例适配,旋转之后裁剪依然正常。 功能实现原理: 1、通过调用view的setRotation功能进行以View为中心…

Docker 中的 .NET 异常了怎么抓 Dump (转载)

一、背景 1. 讲故事 有很多朋友跟我说,在 Windows 上看过你文章知道了怎么抓 Crash, CPU爆高,内存暴涨 等各种Dump,为什么你没有写在 Docker 中如何抓的相关文章呢?瞧不上吗? 哈哈,在DUMP的分析旅程中&a…

[MySQL]MySQL库的操作

[MySQL]MySQL库的操作 文章目录 [MySQL]MySQL库的操作1. 创建数据库2. 字符集和校验规则2.1. 基本概念2.2. 查看系统默认字符集以及校验规则2.3. 查看数据库支持的字符集2.4 查看数据库支持的校验规则2.5 指明字符集和校验规则创建数据库2.6 校验规则对数据库的影响 3. 删除数据…

我爱学QT-制作一个最简单的QT界面

1.qt基础 qt的移植性非常强,一套代码不用我们改太多,直接通用所有平台。不久的将来,qt会被用到MCU上,学习QT还是非常有意义的。 2.做一个简单的QT界面 首先新建工程 注意这个不一样 工程文件分析: #--------------…

【优选算法】—— 双指针问题

从今天开始,整个暑假期间。我将不定期给大家带来有关各种算法的题目,帮助大家攻克面试过程中可能会遇到的算法这一道难关。 目录 (一) 基本概念 (二)题目讲解 1、难度:easy 1️⃣移动零 2️…

nginx的优化

目录 一 隐藏版本号在网页上面有nginx的版本号会让别人攻击你的服务器 二 nginx的优化之日志分割 三 nginx的优化之页面压缩 四 连接超时 五 nginx的并发设置 七总结:nginx的优化 一 隐藏版本号在网页上面有nginx的版本号会让别人攻击你的服务器 如图所示 第一种方法是关…

数据结构与算法——数据结构有哪些,常用数据结构详解

数据结构是学习数据存储方式的一门学科,那么,数据存储方式有哪几种呢?下面将对数据结构的学习内容做一个简要的总结。 数据结构大致包含以下几种存储结构: 线性表,还可细分为顺序表、链表、栈和队列;树结…

C# 依赖倒置原则(DIP)

目录 一,引子 1.1 传统的程序架构 1.2 依赖倒置 1.3 依赖倒置的作用 二,依赖注入 一,引子 1.1 传统的程序架构 在程序执行过程中,传统的程序架构如图: 可以看到,在传统的三层架构中,层与…

CRC Principle and Implementation Method(Java C)

CRC原理和程序实现方法1_哔哩哔哩_bilibili 其实原理很简单 但是我想了两个小时。。 收获的是原来一些复杂的运算都可以通过位运算来实现。 实现思路 public class CRC16Calculator {public static String CRC16(byte[] bytes) {int CRC 0x0000ffff;int POLYNOMIAL 0x0000a…