compactor 不工作

分析

使用 thanos compactor 约定了数据保存15d,但实际数据越来越多,老旧的历史数据并没有被清理,从下面的图中可以看到数据跨度远超过15d。

为了方便定位,先启动一个bucket web UI http://172.23.3.22:10914

/data0/app/thanos/thanos thanos tools bucket web –http-address=”0.0.0.0:10914”  –objstore.config-file=/data0/app/thanos/oss-tencent.yml

image-20220622105256567 image-20220622105444033

发现命名只定义了保存15天的数据,但实际上Jan的数据都还在,明显不正常。

处理过程

1.  先停止 compactor
2.  标记需要删除的数据
 /data0/app/thanos/thanos tools bucket retention –objstore.config-file=/data0/app/thanos/oss-tencent.yml –delete-delay=1h  –retention.resolution-1h=10d  –retention.resolution-5m=10d –retention.resolution-raw=10d  
3. 启动compactor,会自动将step2中 标记为删除的数据在 –delete-delay=1h 后删除。也可以执行 step4直接删除
4. 不等待直接删除标记的数据 
/data0/app/thanos/thanos tools bucket cleanup –objstore.config-file=/data0/app/thanos/oss-tencent.yml  –delete-delay=0s

image-20220622121204211

这是 retention 日志。

image-20220622110217628

这是 cleanup 完成后的日志。

image-20220622111952287

完成后的web UI,保留了差不多10天数据

image-20220622140620441

从oss上也可以看出数据从5T+直降到277G,效果立竿见影。

改进

为了日常监控 compactor的状态,可以grafana中增加对应对应图标采集对应metrics。

compactor target对应的metric: http://172.23.3.22:10912/metrics

关注几个主要指标

thanos_compact_downsample_total

thanos_compact_iterations_total