Prometheus
Prometheus 是一个开源的监控和警报工具,最初由 SoundCloud 开发,现已成为云原生计算基金会(CNCF)的一部分。它广泛用于收集和存储时间序列数据,尤其适合微服务架构和 Kubernetes 环境。
Prometheus 相关文章
围绕 Prometheus 的实践、选型、案例和产品内容,按同一阅读路径持续整理。
Prometheus 历史峰值看不到了,这监控不准啊
Prometheus 历史峰值看不到,常见原因不是监控不准,而是 query_range 查询时 step 变大后只返回较稀疏的数据点。本文解释 step 的含义、Nightingale 如何自动计算 step,以及如何用原始数据判断实际采集频率。
Zabbix 和 Prometheus 选型对比
企业如何在 Zabbix 和 Prometheus 之间做监控选型?本文从性能容量、采集方式、数据可视化、告警规则、事件分发和混合使用策略给出判断。
VictoriaMetrics 中文教程(03)如何配置 Prometheus 使其把数据远程写入 VictoriaMetrics
本文讲解如何通过 Prometheus remote_write 把监控数据远程写入 VictoriaMetrics,包括 remote_write 配置、external_labels、多 Prometheus 区分、高负载 queue_config 调整、help 信息缺失原因,以及 vmagent 的替代思路。
PromQL教程(五)PromQL 函数
PromQL 函数教程第五篇,系统讲解聚合函数、increase、rate、irate、histogram_quantile、over_time、absent_over_time 及 MetricsQL 扩展函数的适用场景和易错点。
PromQL教程(四)PromQL 向量匹配
PromQL 教程第四篇讲解向量匹配:on、ignoring、group_left、group_right 的作用,one-to-one、many-to-one、one-to-many 匹配的区别,以及如何把 Kubernetes Pod 标签等元信息带入查询结果。
PromQL教程(三)PromQL 入门操作
PromQL 教程第三篇讲解入门操作:标签选择器、聚合计算、offset 历史查询、算术运算符、比较运算符,以及 and、or、unless 逻辑/集合运算符在告警规则中的用法。
PromQL教程(二)Prometheus 数据类型
PromQL 教程第二篇解释 Prometheus 四种指标类型:Gauge、Counter、Histogram 和 Summary,重点说明它们的语义、典型场景、服务端是否存储类型信息,以及为什么 rate 函数应主要用于 Counter。
PromQL教程(一)初识 PromQL
PromQL 是 Prometheus Query Language,用来查询和计算 Prometheus 时序数据。本文作为 PromQL 教程第一篇,解释指标、标签、数据点、TSDB、instant vector、range vector、query 和 query_range 的区别。
Prometheus 告警恢复时,怎么获取恢复时的值?
Prometheus 告警恢复事件中的 `$value` 往往仍是最后一次告警触发值,而不是恢复时的最新值。原因在于 Prometheus 规则表达式带阈值时正常状态不返回数据,Alertmanager 生成 Resolved 事件时也不会反查 Prometheus。本文解释原理和两类解决方式。
在 Kubernetes 中部署 Alertmanager
本文演示如何在 Kubernetes monitoring 命名空间中部署 Alertmanager,并配置 Prometheus 告警地址、Alertmanager ConfigMap、告警模板、Deployment 和 NodePort Service。
7 张图,彻底讲透 Prometheus 架构原理
用 7 张图讲解 Prometheus 架构原理,覆盖 Prometheus Server、TSDB、Targets、Exporters、Service Discovery、Pushgateway、Client Libraries、Alertmanager 和 PromQL。
透过 node-exporter 彻底弄懂机器监控:01. node-exporter 框架讲解
node-exporter 是 Prometheus 的官方 exporter 之一,用于监控 Linux 系统的各种指标。本文是专栏第一篇,介绍 node-exporter 的框架,后面会逐步深入 node-exporter 的原理和实现。
Prometheus 聚合查询的两个方案
多个 Prometheus 或 VictoriaMetrics 集群需要统一查询时,可以用 promxy 或 VictoriaMetrics vmselect 做聚合入口。本文基于本地模拟环境说明数据源聚合、server_group 标签和查询验证方法。
Prometheus 监控平台组件深度讲解
Prometheus 监控平台由 Prometheus Server、Service Discovery、Exporter、Pushgateway、Alertmanager、Grafana 等组件协同完成采集、存储、查询、告警和展示。本文按数据流解释每个组件的职责、边界和常见扩展方式。
已经有 Prometheus 了,还需要夜莺?
Prometheus 与 Nightingale 不是简单替代关系,而是更常见于协同使用:Prometheus 生态负责采集、存储和查询,Nightingale 更适合作为时序数据告警引擎、规则管理和边缘机房告警自治平台。
使用 JMX-Exporter 监控 Kafka 和 Zookeeper
JMX Exporter 可以把 Java 应用通过 JMX 暴露的 MBean 指标转换为 Prometheus 可抓取的 HTTP 指标。本文以 Kafka 和 Zookeeper 为例,说明安装、javaagent 启动参数、端口验证、采集方式和 rules 配置含义。
优化实践:Prometheus 性能和高基数问题
本文结合 Kubernetes 与 kube-prometheus-stack 场景,梳理 Prometheus 性能优化和高基数治理实践:从丢弃未使用指标、配置 node-exporter、使用 metric relabeling,到用 Prometheus TSDB Status、Cardinality Explorer 和 pprof 分析资源占用。
Prometheus 瘦身第一步,使用 mimirtool 找到没用的 Prometheus 指标
Prometheus 指标瘦身实践:使用 mimirtool 分析 Grafana Dashboard、Prometheus 规则和 Prometheus 实例中的指标,找出已使用与未使用指标,为基数治理和采集优化提供依据。
如何优化 PromQL 和 MetricsQL 查询
优化 PromQL 和 MetricsQL 查询,先判断慢查询,再分别检查时间序列数量、原始样本数量、重复处理样本、高流失率标签和复杂二元运算,最后通过标签过滤、缩短窗口、调大 Grafana step 等方式降低 CPU、RAM 和 IO 消耗。
Telegraf 发送指标给 Prometheus
介绍如何用 Telegraf 的 outputs.http 插件通过 Prometheus remote write 协议发送指标到 Nightingale 或 Prometheus,并说明 host 标签冲突和 agent_hostname 配置建议。