首页/云/可观测性速查/remote write:把数据写到长期存储
Prometheus 与采集64 条

remote write:把数据写到长期存储

远程写让 Prometheus 边采集边把样本推送到远端(长期存储、联邦中心或云端服务),本地保留期照常工作,兼顾接入与查询便利。

可观测性速查云更新于 2026-10-13

remote write 是什么

远程写让 Prometheus 边采集边把样本推送到远端:长期存储、联邦中心或云端服务。本地保留期照常工作,因此既保住了本地查询的便利,又能把数据留存更久。它常用于多集群聚合与跨机房统一存储,配置的关键在于远端端点与队列参数。

基本信息

配置键remote_write
推送目标长期存储 / 联邦中心 / 云服务
队列参数max_samples_per_send、max_shards 等
过滤手段write_relabel_configs
本地保留不受影响,照常按 retention 清理
关键监控远端写入失败、队列长度与内存占用

典型使用场景

  • 把本地 Prometheus 数据汇总到统一长期存储做跨集群查询
  • 多集群数据汇聚到中心,支持跨集群聚合看板
  • 使用托管监控服务时通过 remote write 上报
  • 按需过滤掉 go_* 等低价值指标,降低带宽与远端成本
  • 异地容灾:本地一份、远端一份,避免单点数据丢失
  • 迁移期间双写,平滑切换数据源

配置示例

配置示例
remote_write:
  - url: http://thanos-receive:19291/api/v1/receive
    queue_config:
      max_samples_per_send: 5000
      max_shards: 30                  # 分片数决定并发上传能力
    write_relabel_configs:
      - source_labels: [__name__]
        regex: 'go_.*'                # 过滤低价值指标
        action: drop

关键参数

参数作用调整方向
url远端接收端点支持多个 remote_write
max_shards并发上传分片数远端慢时适当增大
max_samples_per_send单批样本数大端点可调大
write_relabel_configs发送前过滤丢弃低价值指标
queue 相关重试与背压按远端稳定性调整
远端不可用时队列会持续重试,长时间失败会推高内存占用与磁盘 WAL;要监控远端存储相关指标,避免影响本地采集与写入。
write_relabel_configs 误删关键序列会在远端形成数据缺口,且本地看不出异常,需定期核对远端序列是否齐全。
多个 remote_write 目标会各自维护队列:同时写两处时内存与带宽开销都会上升,按需评估。
远端与本地的时间采样间隔保持一致可以减少对齐问题;查询远端长期数据时注意其降采样策略与保留期。

易错点

  • write_relabel_configs 误删关键序列会在远端形成数据缺口,需定期核对
  • 网络抖动频繁时适当增大队列参数,但注意内存占用同步上升
  • 远端长期不可用会让 WAL 持续增长,极端情况下影响本地实例稳定
  • 多个远端目标共用一份队列配置不当,会造成互相争抢资源
  • 远端保留期与降采样策略与本地不同,跨源查询时告警阈值需要重新校准

数据来源与参考

  • Prometheus 文档 · remote_write
  • Prometheus 文档 · 远程存储集成
​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌