Prometheus 监控

学习 Prometheus 监控。本模块涵盖安装 Prometheus、使用 Node Exporter 监控 Linux、基本 PromQL 查询、设置告警、Alertmanager 基础知识。您将通过实践操作和真实世界的挑战掌握这些必要的 Linux 技能。

DevOps 工程师DevOpsLinux

💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版

简介

Prometheus 将导出的时序指标转化为可查询的系统行为视图,并可根据这些数据评估规则。本实践课程会从二进制安装和抓取开始,搭建包含 PromQL、告警规则与 Alertmanager 路由的小型本地监控链路。

你将让 Prometheus 抓取自身以及 Node Exporter 提供的 Linux 主机指标,查询内存和 CPU 数据,加载 InstanceDown 规则,并向 Alertmanager 发送测试告警。最终挑战要求你独立配置两个抓取任务和自定义 HighCpuLoad 规则,再通过 Rules API 验证。

你将学到什么

  • 下载、配置、启动并验证本地 Prometheus 服务器
  • 运行 Node Exporter 并确认 9100 端口的指标端点
  • 添加静态抓取任务并通过 Prometheus API 检查目标健康状态
  • 使用 PromQL 查询原始内存指标、CPU 速率和计算出的内存百分比
  • 创建告警规则文件并从 prometheus.yml 加载
  • 将 Prometheus 连接到 Alertmanager 并配置本地 webhook 接收器
  • 提交测试告警并检查 Alertmanager 中的结果状态
  • 从命令行构建并验证自定义 CPU 负载规则

本课程适合谁

本中级课程适合希望首次实践 Prometheus 指标采集、查询和告警定义流程的 Linux 管理员、DevOps 学习者和运维工程师。

前置要求: 熟悉 Linux Shell、YAML、后台进程、curl、端口以及基本 CPU 和内存概念。无需 Prometheus 或 PromQL 经验。

学习环境: 在单台 Linux 实验主机上运行下载的 Prometheus、Node Exporter、Alertmanager 和本地 webhook 端点。组件以实验进程启动,而不是作为持久化生产服务安装。

常见问题

我会监控多台远程服务器吗?

不会。Prometheus 只抓取自身和 localhost 上的一个 Node Exporter,不涉及多目标静态配置、服务发现、联邦或分布式存储。

PromQL 练习有多深入?

内容包括一个原始内存指标、对 CPU 计数器使用 rate(),以及简单的内存使用率计算;不讲聚合、标签匹配、连接、记录规则、直方图或查询优化。

告警会发送到邮件、Slack 或其他外部服务吗?

不会。Alertmanager 只路由到本地 webhook,并手动提交测试告警。最终挑战只确认 HighCpuLoad 已加载,不会制造持续 CPU 负载或验证外部通知。

教师

labby
Labby
Labby is the LabEx teacher.