精华内容
下载资源
问答
  • DevOps工程师或SRE工程师,可能都知道Prometheus普罗米修斯。Prometheus于2012年由SoundCloud创建,目前已经已发展为最热门的分布式监控系统。Prometheus完全开源的,被很多云厂商(架构)内置,在这些厂商(架构)...
  • 普罗米修斯手册:普罗米修斯中文文档
  • 状元成才路 状元成才路 状元成才路 状元成才路 14 普罗米修斯 导入一 导入二 普罗米修斯 古希腊神话中最具智慧的神明之一创造了人类 导入一 返回 导入二 在古希腊神话中有一位带给人类温暖和光明的英雄普罗米修斯他...
  • 主要介绍了springboot集成普罗米修斯(Prometheus)的方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
  • 普罗米修斯 这是go-metrics库的报告程序,它将把度量标准发布到prometheus客户端注册表中。 它只是更新注册表,照顾导出指标仍然是您的责任。 用法: import "github.com/deathowl/go-metrics-prometheus" ...
  • 普罗米修斯-源码

    2021-02-12 03:43:04
    普罗米修斯 该存储库以模块化方式使用一些监视工具,以从网络,主机,容器和应用程序收集度量标准和日志。 基础设施 谷歌云 Instâncias虚拟机 码头工人 Kubernetes 选矿厂Mikrotik PPPoE DHCP服务器 出口商 米...
  • 普罗米修斯基础训练 交互式Prometheus基础培训: 内容部分 培训内容位于目录中。 主要部分是实验,可以在。 雨果 该站点是使用静态页面生成器构建的。 该页面使用,该包含在Git子模块中。 针对品牌特定设置,使用...
  • 普罗米修斯

    2019-11-19 17:14:17
    DevOps工程师或SRE工程师,可能都知道Prometheus普罗米修斯。Prometheus于2012年由SoundCloud创建,目前已经已发展为最热门的分布式监控系统。Prometheus完全开源的,被很多云厂商(架构)内置,在这些厂商(架构)...

    DevOps工程师或SRE工程师,可能都知道Prometheus普罗米修斯。Prometheus于2012年由SoundCloud创建,目前已经已发展为最热门的分布式监控系统。Prometheus完全开源的,被很多云厂商(架构)内置,在这些厂商(架构)中,可以简单部署Prometheus,用来监控整个云基础架构设施。比如DigitalOcean或Docker都是普罗米修斯作为基础监控。

    希腊神话中,普罗米修斯是最具智慧的神明之一,是泰坦巨神后代,其名字意思为"先见之明",那么以该名字命名的监控系统究竟怎么样呢?今天虫虫给大家讲讲这个以神之名命名的监控系统。

     

    普罗米修斯(Prometheus)介绍

    Prometheus是一个时间序列数据库。但是,它不仅仅是一个时间序列数据库。

    它涵盖了可以绑定的整个生态系统工具集及其功能。

    Prometheus主要用于对基础设施的监控。包括服务器,数据库,VPS,几乎所有东西都可以通过Prometheus进行监控。Prometheus希望通过对Prometheus配置中定义的某些端点执行的HTTP调用来检索度量标准。

     

    例如,如果我们以localhost:3000的Web应用程序为例,你的应用程序将在特定URL(例如localhost:3000/metrics)中将指标公开为纯文本。以该URL为起点,,在给定的有效期间隔期间,Prometheus将从该目标中提取数据。

    工作原理?

    如前所述,Prometheus由各种不同的组件组成。其监控指标可以从系统中提取到,可以通过不同的方式做到:

    通过应用程序给定监控项,对给定的公开URL上Prometheus兼容的指标。Prometheus将其定义为目标并加入监控系统。

    通过使用云厂商内置Prometheus程序,会定义好整个监控项和监控工具集拥。例如,可以 Linux机器监控模版(节点导出器),数据库的模版(SQL导出器或MongoDB导出器),以及HTTP代理或者负载程序的模版(例如HAProxy导出器)等这些模版直接就可以加入监控并使用。

    通过使用Pushgateway:应用程序或作业不会直接公开指标。某些应用程序要么没有合适的监控模版(例如批处理作业),对他们选择不能直接通过应用程序公开这些指标。如果我们忽略您可能使用Pushgateway的极少数情况,Prometheus是一个基于主动请求pull的监控系统。

     

    推方式和拉方式

    Prometheus与其他时间序列数据库之间存在明显差异:Prometheus主动筛选目标,以便从中检索指标。这与InfluxDB非常不同,InfluxDB是需要直接推送数据给它。

     

    基于推和基于拉方式各有其优劣之处。Prometheus使用主动拉方式主要的基于以下考虑:

    实现集中控制:如果Prometheus向其目标发起查询,则整个配置在Prometheus服务器端完成,而不是在各个目标上完成。Prometheus决定取值,以及取值的的频率。

    使用基于推的系统,可能会导致向服务器发送过多数据的风险,这时会使其服务器崩溃。基于拉的系统能够实现速率控制,具有多级过期配置的灵活性,因此可以针对不同目标实现多种速率。

    存储汇总的指标

    Prometheus不是基于事件的系统,这与其他时间序列数据库不同。Prometheus并非旨在及时捕获单个和时间事件(例如服务中断),但它旨在收集有关的服务的预先汇总的指标。具体而言,它不会从Web服务发送404错误消息以及错误的消息的具体内容,而是对这些消息做处理、聚合过的指标。这与其他在收集"原始消息"的时间序列数据库之间的基本差异

    生态系统

     

    Prometheus的主要功能仍然是时间序列数据库。但是,在使用时间序列数据库时,对它们实现了可视化、数据分析并通过自定义方式进行告警。

    Prometheus生态系统有功能丰富工具集:

    Alertmanager:Prometheus通过配置文件中定义的自定义规则将告警信息推送到Alertmanager。Alertmanager可以将其导出到多个端点,例如Pagerduty或Slack等。

    数据可视化:与Grafana、Kibana等类似,可以直接在Web UI中可视化时间序列数据。轻松过滤查看了不通监控目标的信息。

    服务发现:Prometheus可以动态发现监控目标,并根据需要自动废弃目标。这在云架构中使用动态变更地址的容器时,尤为方便。

     

    普罗米修斯技术原理和构成

    关键值数据模型

    在开始使用Prometheus工具之前,了解数据模型非常重要。Prometheus使用键值对。键描述了测量值时将实际测量值存储为数字的值。

     

    注意:Prometheus并不会存储原始信息,如日志文本,它存储的是随时间汇总的指标。

    一般来说键也就监控度量。比如CPU使用百分比或内存使用量等。但是,如果想要获得有关指标的更多详细信息,该怎么办?比如服务器CPU有四个核心,我们要想给它们分别设置指标怎么做?对此,Prometheus有一个标签的概念。标签旨在通过向其添加其他字段来为指标提供更详细信息。你不需要简单地描述CPU速率,你可以指定位于某个IP的核心CPU的CPU速率。也能通过标签过滤指标并准确检索查找的内容。

    度量类型

    Prometheus的监控指标有四种基本的类型来描述:

    计数器Counter

    计数器可能是我们可以使用的最简单的度量标准形式。就想它字面意思一样,计数器是随着时间的增长的计算元素。

    比如,要计算服务器上的HTTP错误数或网站上的访问次数,这时候就使用计数器。

    计数器的值只能增加或重置为0。计数器特别适合计算某个时段上某个事件的发生次数,即指标随时间演变的速率。

    Gauges

    Gauges用于处理可能随时间减少的值。比如温度本华,内存变化等。Gauge类型的值可以上升和下降,可以是正值或负值。

    如果系统每5秒发送一次指标,Prometheus每15秒抓取一次目标,那么这期间可能会丢失一些指标。如果对这些指分析计算,则结果的准确性会越来越低。

    而使用计数器,每个值都会被汇总计算。

    直方图Histogram

    直方图是一种更复杂的度量标准类型。它为我们的指标提供了额外信息,例如观察值的总和及其数量,常用于跟踪事件发生的规模。其值在具有可配置上限的存储对象中聚合。使用直方图可以用来:

    计算平均值:因为它们表示值的总和除以记录的值的数量。

    计算值的小数测量:这是一个非常强大的工具,可以让我们知道给定的集合中有多少值遵循给定的标准。在用于监控比例或建立质量指标时,这非常有用。

    比如,为了监控性能指标,我们希望得到在有20%的服务器请求响应时间超过300毫秒发送警告。对于涉及比例的指标就可以考虑使用直方图。

    摘要Summary

    摘要是对直方图的扩展。除了提供观察的总和和计数之外,它们还提供滑动窗口上的分位数度量。分位数是将概率密度划分为相等概率范围的方法。

    对比直方图:

    直方图随时间汇总值,给出总和和计数函数,使得易于查看给定度量的变化趋势。

    而摘要则给出了滑动窗口上的分位数(即随时间不断变化)。

    这对于获得代表随时间记录的值的95%的值尤其方便。

    实例计算

    随着分布式架构的不会发展完善和云解决方案的普及,现在的架构不再是孤零零几台配置很高的IBM小机就可以搞定一起的时代了。

    分布式的服务器复制和分发成了日常架构的必备组件。我们举一个经典的Web架构,该架构由2个HAProxy代理服务器,在3个后端Web服务器。在该实例中,我们要监视Web服务器返回的HTTP错误的数量。

    使用Prometheus语言,单个Web服务器单元称为实例。该任务是计算所有实例的HTTP错误数量。

     

    PromQL

    如果使用过基于InfluxDB的数据库,你可能会熟悉InfluxQL。或者使用TimescaleDB过的SQL语句。Prometheus也内置了自己的SQL查询语言,用于便捷和熟悉的方式从Prometheus查询和检索数据,这个内置的语言就是PromQL。

    我们前面说过,Prometheus数据是用键值对表示的。PromQL也用相同的语法查询和返回结果集。

    使用Prometheus和PromQL,会处理两种向量:

    即时向量:表示在最近时间戳中跟踪的指标。

    时间范围向量:用于查看度量随时间的演变,可以使用自定义时间范围查询Prometheus。结果是一个向量聚合所选期间记录的值。

     

    PromQL API公开了一组方便查询数据操作的函数。用它可以实现排序,数学函计算(如导数或指数函数),统计预测计算(如Holt Winters函数)等。

    Instrumentation仪表化

    仪表化是Prometheus的一个重要组成部分。在从应用程序检索数据之前,必须要仪表化它们。Prometheus术语中的仪表化表示将客户端类库添加到应用程序,以便它们向Prometheus吐出指标。可以对大多数主流的编程语言(比如Python,Java,Ruby,Go甚至Node或C#应用程序)进行仪表化。

    在仪表化操作时,需要创建内存对象(如仪表或计数器),可以在运行中增加或减少。然后选择指标公开的位置。Prometheus将从该位置获取并存储到时间序列数据库。

     

    Exporters模版

    对于自定义应用程序,仪表化非常方便,它允许自定义公开的指标以及其随时间的变化方式。

    对于一些广泛使用的应用程序,服务器或数据库,Prometheus提供专门的应用模版,可以使用它们来监控目标。

    这些模版很多都用Docker镜像,可以轻松配置以监控目标。他们会预设常用的的指标和面板,可以几分钟内就完成监控配置。

    常见的Exporters模版有:

    数据库模版:用于MongoDB数据库,SQL服务器和MySQL服务器的配置。

    HTTP模版:用于HAProxy,Apache或NGINX等web服务器和代理的配置。

    Unix模版:用来使用构建的节点导出程序监视系统性能,可以实现完整的系统指标的监控。

     

    告警

    在处理时间序列数据库时,我们希望对数据进行处理,并对结果给出反馈,而这部分工作有告警来实现。

    告警在Grafana中非常常见,Prometheus也通过Alertmanager实现完成的告警系统。Alertmanager是一个独立的工具,可以绑定到Prometheus并运行自定义Alertmanager。告警通过配置文件定义,定义有一组指标定义规则组成,如果数据命中这些规则,则会触发告警并将其发送到预定义的目标。与Grafana类似,Prometheus的告警,可以通过email,Slack webhooks,PagerDuty和自定义HTTP目标等。

     

    普罗米修斯用例

    我们最后再说下Prometheus的用例,可以使用该系统的各行各业。

    DevOps

    随着为系统,数据库和服务器构建,Prometheus的主要目标显然是针对DevOps行业。在该领域有很多的供应商和众多的解决方案。Prometheus无疑是一个理想的方案。在云基础架构下Prometheus的实例启动并运行的非常简便,还可以根据需要灵活的装配所需的部件。这它成为器和分布式体系结构的严重依赖容的工具栈的理想解决方案。在实例的创建速度与销毁速度一样快的容器的世界中,服务发现是每个DevOps栈必须要具备的。

    医疗保健

    时下监控解决方案不仅适用于IT专业人员。它们还用于支持大型行业,为医疗保健行业提供弹性和可扩展的架构。随着需求的增长越来越多,部署的IT架构必须满足这种需求。如果没有可靠的方法来监控整个基础架构,可能会面临服务大量中断的风险,而Prometheus可以为其保驾护航。opensource网站上提供了很这样的实例。

    金融服务业

    InfoQ会议中有了讨论了将Prometheus用于金融机构方案。Jamie Christian和Alan Strader介绍了他们如何使用Prometheus监控Northern Trust的基础设施。

    展开全文
  • 这个扩展给你提供了每个prometheus实例有多少个警报是活动的信息 这个扩展允许你监视多个prometheus实例,并显示所有这些实例上发现的聚合的警报数量 支持语言:English
  • 普罗米修斯的节拍出口商 将拍子统计信息端点的拍子统计信息(文件|度量)公开为prometheus格式,并自动为适当的拍子类型配置收集器。 目前的覆盖范围 文件拍 公制节拍 packetbeat-部分 auditbeat-部分 设置 编辑您...
  • 普罗米修斯白板驱动软件是一款的电子白板驱动安装程序。用户在使用普罗米修斯白板产品之前需要同时安装对应的驱动软件,关于大家在使用白板产品过程中常见的问题,小编也给出了汇总,欢迎来本站下载使用。常见问题...
  • 普罗米修斯水槽出口商。 要运行它: make build ./flume_exporter [flags] 标志帮助: ./flume_exporter --help 配置:config.yml agents: - name: "flume-agents" enabled: true # multiple urls can be ...
  • client_golang, 面向go应用的普罗米修斯仪器库 Prometheus客户端库 这是的客户端库,用于 Prometheus 。 它有两个独立的部分,一个用于检测应用程序代码,一个用于创建与 HTTP API 。这个库的需要 Go1.7 或者更高...
  • 普罗米修斯监控系统部署方式,基于kubernetes系统进行配置
  • PG出口商 指标的器。 让您全面了解自己喜欢的大象! PG Exporter是Project 项目的基础组件,该项目可能是PostgreSQL最好的开源监视解决方案。 最新的二进制文件和rpms可以在页面上找到。 支持的pg版本:PostgreSQL...
  • github-exporter, 用于github标准的普罗米修斯导出器 Prometheus从 GitHub API向Prometheus兼容的端点公开你的存储库的基本指标。配置这里导出程序设置为从 环境变量 获取输入:需要 如果提供了 ORGS,则导出程序将...
  • Prometheus SNMP导出器 这是一个导出程序,它公开从SNMP收集的信息以供Prometheus监视系统使用。 有两个部分。... 安装 可以从页面下载二进制文件。 用法 ./snmp_exporter 访问 ,其中1.2.3.4是从中获取指标的SNMP...
  • Prometheus-api-client ... 安装 要安装最新版本: pip install prometheus-api-client 要直接从此分支安装: ...链接 入门 ...是Cloud Native Computing Foundation项目,是一个系统和服务监视系统。 它以给定的时间间隔从...
  • :waving_hand: 很棒的普罗米修斯警报 大多数警报规则对于每个Prometheus设置都是通用的。 我们需要一个找到所有地方的地方。 :sign_of_the_horns: :police_car_light: :bar_chart: 可在此处收集: : :sparkles: ...
  • 普罗米修斯设置 带有docker / docker-compose的Prometheus服务: 通过运行以下命令将包含prometheus.yml的目录绑定安装到/ etc / prometheus上: docker run --name my-prometheus -d \ -p 9090:9090 \ -v /Users...
  • 使用etcd后端的普罗米修斯服务发现。 该服务在无法进行除之外的其他Prometheus服务发现的环境中很有用。 建筑学 服务发现包含三个组件: GPRC服务,用于注册服务并将其存储到后端。 导出程序服务,用于将存储的...
  • 安装普罗米修斯 Prometheus 是一个 Ruby 应用程序,可以在任何运行最新版本(1.8.7 或更高版本)的 Ruby 的系统上运行。 要安装 Prometheus,请使用以下步骤: 创建一个名为 prometheus 的目录。 将 prometheus ...
  • 普罗米修斯: 示例Node.js应用程序: 打扫干净 运行以下命令以停止该项目中所有正在运行的容器: $ docker-compose rm -fs 普罗米修斯概述 Prometheus是一个开源监视和时间序列数据库(TSDB),它是根据 (在...
  • 简单的普罗米修斯安装 运行kubectl apply -f prometheus.yaml 将注释添加到您希望Prometheus收集的部署中。 将端口( 8080 )和路径( /metrics )替换为您的pod公开的正确端口和路径。 apiVersion: apps/v1 kind:...
  • 气流普罗米修斯出口商 Airflow Prometheus Exporter公开了有关Scheduler,DAG和Tasks的各种指标,这些指标有助于改善Airflow集群的可观察性。 导出器基于此。 要求 该插件已经过测试: 气流> = 1.10.4 Python ...
  • 科阿普罗米修斯出口商 该模块在适合于普罗米修斯的HTTP端点中导出指标。 GC节点和可选的HTTP指标已导出。 安装 需要koa才能运行 使用npm npm install @echo-health/koa-prometheus-exporter 要使用prometheus...
  • 普罗米修斯Alertmanager的Phabricator webhook phalerts是一项简单的服务,可实现接收器API并根据来自Alertmanager的警报通知创建/更新任务。 服务: 根据通知字段确定任务标题和描述; 如果存在具有给定标题的...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 6,236
精华内容 2,494
关键字:

普罗米修斯