目前prometheus的data目录里存在一个tsdb的目录,上面数据量很大,有没有办法清理么?
-
storage_retention
:Prometheus 监控数据保留时间,默认 “30d”
可以修改小一点
这个已经改成15天了,不过tsdb虽然在prometheus的data目录,但是应该是dashboard的某个组件写入的,不归这个参数管吧
top sql不在prometheus存吧
可以修改一下采集频率
登录Prometheus服务器,找到安装目录 /tidb/tidb-deploy/prometheus-9090/conf/prometheus.yml
修改 scrape_interval 参数,每个指标都可以单独设置,这里统一设置为 30s
---
global:
scrape_interval: 30s # By default, scrape targets every 15 seconds.
evaluation_interval: 30s # By default, scrape targets every 15 seconds.
# scrape_timeout is set to the global default (10s).
external_labels:
cluster: 'tidb'
monitor: "prometheus"
...
- job_name: "blackbox_exporter_10.0.XXX.XXX:9115_icmp"
scrape_interval: 30s
metrics_path: /probe
params:
module: [icmp]
static_configs:
重启prometheus组件
tiup cluster restart datamart --role prometheus
https://docs.pingcap.com/zh/tidb/stable/tiup-cluster-topology-reference#monitoring_servers
-—
现在通过monitoring_servers. storage_retention
修改更规范,不用害怕扩缩容时候prometheus自动reload了
额,你们貌似看错重点了,不是prometheus的存储多,而是tsdb这个目录数据量大,而这个目录应该是别的组件写入的
这个就是时序数据。因为采集的指标多而且频繁,所以占空间。要不禁用某些指标,要不减少数据保留期限哈。
lsof看了下,tsdb这个目录是ng-monitoring这个组件写入的
手动改/home/tidb/tidb-deploy/prometheus-9090/conf/ngmonitoring.toml
增加retention-period = "15d"
但是并没有生效,最后是rm -r tsdb
删除目录后,重启了下ng-monitoring-server
,空间才释放。(重启后会自动生成新的tsdb目录)
我也遇到过你这个问题,就是通过修改保留时间和采集频率解决的
1、修改集群参数
添加 storage_retention: 20d
2、修改采集频率
prometheus的存储格式就是tsdb,rm当然能释放空间了,这是治标不治本的方法,看看prome官方文档吧
此话题已在最后回复的 60 天后被自动关闭。不再允许新回复。