Prometheus 入门指南:快速上手

本文涉及的产品
Serverless 应用引擎 SAE,800核*时 1600GiB*时
可观测可视化 Grafana 版,10个用户账号 1个月
可观测监控 Prometheus 版,每月50GB免费额度
简介: 【8月更文第29天】Prometheus 是一个开源的监控系统和时间序列数据库,它特别适合于监控基于微服务架构的应用程序。Prometheus 采用 pull 模式主动从目标系统抓取数据,并且提供丰富的查询语言 PromQL 以便进行数据分析。本文将介绍 Prometheus 的基本概念、架构,并指导您如何快速搭建和配置 Prometheus 服务器。

引言

Prometheus 是一个开源的监控系统和时间序列数据库,它特别适合于监控基于微服务架构的应用程序。Prometheus 采用 pull 模式主动从目标系统抓取数据,并且提供丰富的查询语言 PromQL 以便进行数据分析。本文将介绍 Prometheus 的基本概念、架构,并指导您如何快速搭建和配置 Prometheus 服务器。

Prometheus 基本概念

  1. 目标:Prometheus 抓取数据的目标系统或服务。
  2. 指标:Prometheus 中的数据点,如计数器、摘要和直方图等。
  3. 标签:附加在指标上的键值对,用于标识不同的实例或维度。
  4. PromQL:Prometheus 查询语言,用于检索和操作存储在 Prometheus 中的数据。

Prometheus 架构

Prometheus 的核心组件包括:

  1. Prometheus Server:负责抓取数据、存储数据、执行查询等。
  2. Pushgateway:当目标无法支持 pull 模式时,可以使用 Pushgateway 接收数据然后转发给 Prometheus Server。
  3. Alertmanager:用于处理警报规则,发送通知。
  4. Exporters:将非 Prometheus 兼容系统的指标转换成 Prometheus 格式。

快速搭建 Prometheus 服务器

我们将使用 Docker 来快速搭建一个 Prometheus 服务器,并配置它来抓取一个示例目标。

准备工作

确保您的机器上已安装 Docker。如果没有安装 Docker,您可以从 Docker 官网下载并安装。

下载 Prometheus 配置文件

首先,我们需要一个配置文件来告诉 Prometheus 如何抓取数据。创建一个名为 prometheus.yml 的文件,并添加以下内容:

global:
  scrape_interval:     15s
  evaluation_interval: 15s

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

alerting:
  alertmanagers:
  - static_configs:
    - targets:
      - localhost:9093

这个配置文件指定了 Prometheus 服务器应该每 15 秒抓取一次 Prometheus 服务器自身和 Node Exporter 的数据。

启动 Prometheus 服务器

使用 Docker 运行 Prometheus 服务器,我们需要映射 Prometheus 的配置文件和数据目录:

docker run -d \
  --name prometheus \
  -p 9090:9090 \
  -v /path/to/prometheus.yml:/etc/prometheus/prometheus.yml \
  -v /path/to/data:/prometheus \
  prom/prometheus:v2.37.0

这里我们使用了 Prometheus 的官方镜像版本 v2.37.0。请注意替换 /path/to/prometheus.yml/path/to/data 为您实际的文件路径。

验证 Prometheus 服务器

启动后,可以通过浏览器访问 Prometheus UI,地址为 http://localhost:9090

在 UI 中,您可以查看抓取的状态、执行查询、设置警报等。

添加示例目标:Node Exporter

为了测试 Prometheus 的数据抓取功能,我们将添加一个 Node Exporter 作为示例目标。

安装 Node Exporter

使用 Docker 安装 Node Exporter:

docker run -d \
  --name node_exporter \
  -p 9100:9100 \
  prom/node-exporter:v0.19.1
验证 Node Exporter

通过访问 http://localhost:9100/metrics 来验证 Node Exporter 是否正在运行并且输出指标。

查询示例

现在我们可以尝试查询一些指标。打开 Prometheus UI,在顶部的查询框中输入以下 PromQL 查询语句:

node_cpu_seconds_total{mode="idle"}

点击“Execute”按钮来运行查询。您将看到关于 CPU 空闲时间的统计数据。

结论

Prometheus 是一个强大的监控工具,适用于各种规模的应用程序和服务。通过本指南,您已经学会了如何快速搭建和配置 Prometheus 服务器,并且能够开始监控和查询数据。随着您对 Prometheus 的深入了解,您还可以进一步探索如何设置复杂的警报规则、使用 Grafana 来可视化数据等高级功能。

相关实践学习
容器服务Serverless版ACK Serverless 快速入门:在线魔方应用部署和监控
通过本实验,您将了解到容器服务Serverless版ACK Serverless 的基本产品能力,即可以实现快速部署一个在线魔方应用,并借助阿里云容器服务成熟的产品生态,实现在线应用的企业级监控,提升应用稳定性。
目录
相关文章
|
14天前
|
Prometheus 监控 Cloud Native
prometheus-operator入门使用上篇之ServiceMonitor
关于使用Prometheus Operator和Kube-Prometheus Stack进行监控的入门教程,涵盖了从部署到监控云原生和非云原生应用的详细步骤,以及监控失败的排查方法。
33 3
prometheus-operator入门使用上篇之ServiceMonitor
|
存储 Prometheus 监控
Prometheus入门
Prometheus入门
185 1
|
存储 Prometheus 监控
prometheus安装及使用入门
prometheus安装及使用入门
1173 0
prometheus安装及使用入门
|
Prometheus Kubernetes 监控
《K8s监控神器——TSDB for Prometheus的入门与实践》电子版地址
K8s监控神器——TSDB for Prometheus的入门与实践
91 0
《K8s监控神器——TSDB for Prometheus的入门与实践》电子版地址
|
数据采集 JSON Prometheus
iLogtail使用入门-iLogtail 采集Prometheus 数据
前言阿里已经正式开源了可观测数据采集器iLogtail。作为阿里内部可观测数据采集的基础设施,iLogtail承载了阿里巴巴集团、蚂蚁的日志、监控、Trace、事件等多种可观测数据的采集工作。本文将介绍iLogtail 如何采集Prometheus exporter 数据。采集配置iLogtail 的采集配置全面兼容Prometheus 配置文件(以下介绍为1.0.30版本+)。参数描述默认值Ya
877 0
iLogtail使用入门-iLogtail 采集Prometheus 数据
|
数据采集 JSON Prometheus
iLogtail使用入门-iLogtail 采集Prometheus 数据
阿里已经正式开源了可观测数据采集器iLogtail。作为阿里内部可观测数据采集的基础设施,iLogtail承载了阿里巴巴集团、蚂蚁的日志、监控、Trace、事件等多种可观测数据的采集工作。本文将介绍iLogtail 如何采集Prometheus exporter 数据。
822 0
|
存储 Prometheus 监控
Prometheus 入门
Prometheus 是一套开源的系统监控报警框架。它启发于 Google 的 borgmon 监控系统,由工作在 SoundCloud 的 google 前员工在 2012 年创建,作为社区开源项目进行开发,并于 2015 年正式发布。
1993 0
|
存储 Prometheus 监控
《K8s监控神器——TSDB for Prometheus的入门与实践》
本次技术分享中,我们会展示如何配置阿里云TSDB作为Prometheus远程存储的流程,并量化展示本方案达到的查询吞吐高,延迟低,性能按需弹性扩展等优势。
2141 0
|
存储 Prometheus 监控
【资料下载】K8s监控神器——TSDB for Prometheus的入门与实践
议题介绍 Prometheus作为云原生监控的首选工具,其单机部署的架构设计在提供稳定性和易用性的同时,也使得数据存储受限于单节点的存储大小。阿里云TSDB针对这一痛点,为用户提供了易用性高,稳定性强,性价比优的存储技术方案。
3873 0
|
Prometheus 监控 Cloud Native

相关产品

  • 可观测监控 Prometheus 版