• 【Prometheus】什么是prometheus?prometheus简介


    本文目录

    一、什么是prometheus?

     二、体系结构概述

    三、适用场景

    四、不适用的场景


    一、什么是prometheus

    Prometheus官网

    Prometheus开源代码

    From metrics to insight
    Power your metrics and alerting with the leading open-source monitoring solution.

    以上是Prometheus官网首页上非常一句醒目的话。我们从这一句话中就可以知道Prometheus是一个开源的监控系统解决方案,能增强你的指标和警报。首先我们先有个印象,Prometheus是一个开源的监控系统。

    Prometheus是一个开源监控系统,它前身是SoundCloud的警告工具包。从2012年开始,许多公司和组织开始使用Prometheus。该项目的开发人员和用户社区非常活跃,越来越多的开发人员和用户参与到该项目中。目前它是一个独立的开源项目,且不依赖与任何公司。为了强调这点和明确该项目治理结构,Prometheus在2016年继Kurberntes之后,加入了Cloud Native Computing Foundation。主要具有如下功能:

    1. 多维数据模型(由度量名称和键/值维度集定义的时间序列)
    2. PromQL,一种强大而灵活的查询语言,可以利用这个维度
    3. 不依赖分布式存储;单服务器节点是自治的
    4. 时间序列收集的HTTP拉模型
    5. 通过批处理作业的中间网关支持推送时间序列
    6. 通过服务发现或静态配置发现目标
    7. 多种图形和仪表板支持模式
    8. 支持分层和水平联合

     二、体系结构概述

    以下体系架构也是从官网上得到的。

    Prometheus直接或通过中间推送网关从插入工具的作业中获取指标,用于短期作业。它将所有采集的样本存储在本地,并对这些数据运行规则,以便从现有数据中聚合和记录新的时间序列,或者生成警报。Grafana或其他API消费者可用于可视化收集的数据。

    从上图中可以得出它主要包含的组件有

    1. Prometheus server :定期从静态配置的 Prometheus targets (数据源)或者服务发现的 targets (数据源)拉取数据。
    2. Retrieval:检索拉去到的数据分发给TSDB进行存储。
    3. HTTP server:用于接受外界的HTTP请求。
    4. TSDB:当新拉取的数据大于配置内存缓存区的时候,Prometheus会将数据持久化到磁盘(HHD/SSD)(如果使用 remote storage 将持久化到云端)。
    5. Prometheus 可以配置 rules,然后定时查询数据,当条件触发的时候,会将 alert(警告) 推送(pushalerts)到配置的 Alertmanager(警告管理器)。
    6. Alertmanager :收到警告的时候,可以根据配置,聚合,去重,降噪,最后发送警告。
    7. API client,Grafana:API client通过使用promQL查询数据,Grafana用于聚合数据将数据可视化。
    8. Web UI: Prometheus的web接口,可用于简单可视化,及语句执行或者服务状态监控。
    9. Short-lived jobs:存在时间不足以被删除的短暂和​​批量作业
    10. Pushgateway:shaort-lived jobs 在推出时将数据推给pushgateway,主要用于业务数据汇报等。

    三、适用场景

    Prometheus很适合记录任何纯数字时间序列。它既适用于以机器为中心的监控,也适用于高度动态的面向服务架构的监控。在微服务的世界中,它对多维数据收集和查询的支持是一个特别的优势。

    Prometheus是为可靠性而设计的,它是您在停机期间使用的系统,允许您快速诊断问题。每个Prometheus服务器都是独立的,不依赖于网络存储或其他远程服务。当基础设施的其他部分出现故障时,您可以依靠它,并且不需要设置大量的基础设施来使用它。

    四、不适用的场景

    Prometheus重视可靠性。即使在故障情况下,您也可以随时查看系统的可用统计信息。如果您需要100%的准确度,例如按请求计费,Prometheus不是一个好的选择,因为收集的数据可能不够详细和完整。在这种情况下,您最好使用其他系统来收集和分析计费数据,并使用Prometheus进行其他监控。

    例如:它不适用于实时计费系统

    完结!

  • 相关阅读:
    动物园规则怪谈【逻辑】
    创建第一个Vue3项目时遇到的报错及处理
    恶补《操作系统》2_3——王道学习笔记
    python学习05-协程
    jQuery常用API--样式操作
    通过写循环判断对称数:将一个整型数逆置,我们判断逆置后的整型数如果和最初的数相等,那么它就是对称数,如果不相等,就不是对称数
    C. Division(分解质因数)
    Redis参数规范详解
    安卓Java面试题11-20
    MySQL——存储引擎
  • 原文地址:https://blog.csdn.net/weixin_44299027/article/details/127740962