1. Prometheus的第一步

这篇教程介绍了Prometheus的安装、配置和基本使用。首先,你将下载并运行Prometheus服务器,配置抓取间隔和评估间隔。然后,通过启动Prometheus并监控其自身指标,了解如何使用表达式浏览器查看数据。最后,你将学习如何使用绘图界面和监控其他目标,如使用节点exporter监控主机指标。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

原文:https://prometheus.io/docs/introduction/first_steps/

欢迎来到Prometheus! Prometheus是通过收集从被监控的目标上的HTTP endpoints来抓取指标的监控平台

本指南将向您展示如何Prometheus的安装、配置和监控我们的第一个资源。 您将下载,安装并运行Prometheus。 您还将下载并安装exporter,该工具可在主机和服务上显示时间序列数据。 我们的第一个exporter将是Prometheus本身,它提供有关内存使用,垃圾回收等的各种主机级别指标。

下载Prometheus

为您的平台下载最新版本的Prometheus,然后解压缩:

tar xvfz prometheus-*.tar.gz
cd prometheus-*

Prometheus server是一个称为prometheus(或Microsoft Windows上的prometheus.exe)的二进制文件。 我们可以运行二进制文件,并通过传递--help标志来查看有关其选项的帮助。

./prometheus --help
usage: prometheus [<flags>]

The Prometheus monitoring server

. . .

在启动Prometheus之前,让我们对其进行配置。

配置Prometheus
Prometheus配置文件为YAML格式。 Prometheus下载随附一个名为prometheus.yml的文件中的示例配置,是开始的好地方。

我们删除了示例文件中的大多数注释,以使其更加简洁(注释是带有#前缀的行)。

global:
  scrape_interval:     15s
  evaluation_interval: 15s

rule_files:
  # - "first.rules"
  # - "second.rules"

scrape_configs:
  - job_name: prometheus
    static_configs:
      - targets: ['localhost:9090']

示例配置文件中包含三个配置块:global,rule_files和scrape_configs。

- global块控制Prometheus server的全局配置。我们有两个选项。首先,scrape_interval控制Prometheus多久抓取一次目标。您可以为单个目标覆盖此参数。在这种情况下,全局设置是每15秒抓取一次。

- Evaluation_interval选项控制Prometheus多久评估一次规则。 Prometheus使用规则来创建新的时间序列并生成警报。

- rule_files块指定我们要Prometheus server加载规则的位置。目前,我们还没有任何规则。

最后的scrape_configs块控制Prometheus监视哪些资源。由于Prometheus还将有关自身的数据公开为HTTP端点,因此它可以抓取并监视自身的运行状况。在默认配置中,有一个称为prometheus的job,它会抓取Prometheus server公开的时间序列数据。该job在端口9090上包含一个静态配置的目标localhost。Prometheus希望指标可用于/metrics路径上的目标。因此,此默认job是通过以下网址进行抓取:http://localhost:9090/metrics

返回的时间序列数据将详细说明Prometheus server的状态和性能。

有关配置选项的完整说明,请参阅配置文档

 

启动Prometheus

要使用我们新创建的配置文件启动Prometheus,请将目录切换到包含Prometheus二进制文件的目录并运行:

./prometheus --config.file=prometheus.yml

Prometheus应该启动了。 您还应该能够在http://localhost:9090上浏览到有关其自身的状态页。 给它大约30秒的时间,以从其自己的HTTP指标终结点收集有关自身的数据。

您还可以通过导航到自己的指标终结点:http://localhost:9090/metrics来验证Prometheus是否正在提供有关其自身的指标。

使用表达式浏览器

让我们尝试查看Prometheus收集的有关自身的一些数据。 要使用Prometheus的内置表达式浏览器,请导航至http://localhost:9090/graph,然后在“Graph”选项卡中选择“Console”视图。

正如您可以从http://localhost:9090/metrics收集的那样,Prometheus导出的有关其自身的一个指标称为promhttp_metric_handler_requests_total(Prometheus服务器已处理的/ metrics请求总数)。 继续并将其输入到表达式控制台中:

promhttp_metric_handler_requests_total

这将返回多个不同的时间序列(以及每个时间序列的最新值),所有时间序列的度量标准名称均为promhttp_metric_handler_requests_total,但标签不同。 这些标签指定不同的请求状态。

如果我们只对导致HTTP代码200的请求感兴趣,则可以使用此查询来检索该信息:

promhttp_metric_handler_requests_total{code="200"}

要计算返回的时间序列数,您可以编写:

count(promhttp_metric_handler_requests_total)

有关表达语言的更多信息,请参见表达语言文档

 

使用绘图界面

要绘制图形表达式,请导航至 http://localhost:9090/graph并使用“Graph”选项卡。

例如,输入以下表达式以图形化显示在自抓取的Prometheus中发生的每秒HTTP请求速率返回状态代码200:

rate(promhttp_metric_handler_requests_total{code="200"}[1m])

您可以尝试使用图形范围参数和其他设置。

 

监控其他目标

仅从Prometheus收集指标并不能很好地说明Prometheus的功能。 为了更好地了解Prometheus可以做什么,我们建议您浏览有关其他exporter的文档。 使用节点exporter监控Linux或macOS主机指标的指南是一个不错的起点。

 

摘要
在本指南中,您安装了Prometheus,配置了Prometheus实例以监视资源,并了解了在Prometheus表达式浏览器中使用时间序列数据的一些基础知识。 要继续学习Prometheus,请查看“概览”以获取有关接下来要探索的内容的一些想法。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值