tidb监控数据占用大量磁盘空间,如何清理

1、prometheus data 01开头的目录占用多,说明采集到的数据多,可以通过curl tidb/tikv/pd各组件的metrics接口, 看下返回行数。如果返回行数在数十万、百万行的话,确实不正常,这就需要抛弃掉一些metrics了。一般来讲tikv的metrics可能会异常,可以在 prometheus.yml文件 - job_name: "tikv"处最下方增加如下配置来减少数据采集,然后通过tiup 重启下prometheus。不过拓扑变更的话此配置会被回滚掉。
metric_relabel_configs:

  • source_labels: [name]
    separator: ;
    regex: tikv_thread_nonvoluntary_context_switches|tikv_thread_voluntary_context_switches|tikv_threads_io_bytes_total
    action: drop
  • source_labels: [name,name]
    separator: ;
    regex: tikv_thread_cpu_seconds_total;(tokio|rocksdb).+
    action: drop

2、如果wal多,可能是prometheus没有及时checkpoint, 一般是因为采集数据量大
可以在log/promethues.log日志文件过滤Starting TSDB …和TSDB started关键词,看prometheus是否经常重启。不过按照第1步操作的话会减少这种情况。

2 个赞