用途:为微服务或分布式系统搭建集中式时序指标采集,作为 SLO/SLI 跟踪与告警的基础,并可通过联邦汇总多实例指标。
主要能力:配置全局抓取间隔与外部标签;静态、文件、Kubernetes、Consul 等服务发现;relabel 重写标签;记录规则预聚合;存储与保留策略;多集群联邦;可选高可用部署。
使用方式:创建 /etc/prometheus/{rules,file_sd} 与 /var/lib/prometheus 目录,下载并安装 prometheus 与 promtool,编写 prometheus.yml 定义 scrape_configs、rule_files 与 alerting。用 promtool check config 校验配置,promtool check rules 校验规则,通过 curl -X POST http://localhost:9090/-/reload 或 killall -HUP prometheus 热加载。systemd 服务中设置 --storage.tsdb.retention.time、--storage.tsdb.retention.size、--web.enable-lifecycle 等参数。联邦时边缘实例设置 external_labels,中心实例以 metrics_path: '/federate' 与 match[] 仅抓取聚合指标。
适用场景:微服务指标采集、基础设施监控、多集群指标汇总、从旧监控迁移。
限制与注意:避免高基数标签;记录规则评估间隔应不小于抓取间隔;联邦只抓聚合指标以防数据重复;保留期需长于最长看板窗口;未启用 lifecycle 端点时重载需重启。具体版本、平台与效果以实际环境为准。