Prometheus 单机存储【十】

Prometheus 有着非常高效的时间序列数据存储方法,每个采样数据仅仅占用3.5bvte 左右空间,上百万条时间序列,30 秒间隔,保留 60 天,大概200多G空间 (引用官方 PPT)

Prometheus本地存储简介

默认情况下,prometheus 将采集到的数据存储在本地的 TSDB 数据库中,
路径默认为 prometheus 安装目录的 data 目录,数据写入过程为先把数据写入 wal 日志并放在内存,
然后 2 小时后将内存数据保存至一个新的 block 块,
同时再把新采集的数据写入内存并在2 小时后再保存至一个新的 block 块,以此类推。

 

Block介绍

[root@xianchaomaster1 data]# pwd
/apps/prometheus/data
[root@xianchaomaster1 data]# ll
total 20
drwxr-xr-x 3 root root    68 Apr 27 22:22 01GZ1HH11BE8B01TBMJNY946S7
drwxr-xr-x 3 root root    68 Apr 28 21:37 01GZ41B7Y7VKM48HAV04M9BZZB
drwxr-xr-x 3 root root    68 Apr 29 13:00 01GZ5P3SPATGWA15W9MMZXD7GT
drwxr-xr-x 3 root root    68 Apr 30 07:00 01GZ7KXAWSWPJ1N4DZ9CWEX81P
drwxr-xr-x 3 root root    68 Apr 30 11:00 01GZ81MP1D0MR4379RQFRCV3AX
drwxr-xr-x 3 root root    68 Apr 30 13:00 01GZ88GGKQHRGBWB3KCBKVKS63
drwxr-xr-x 3 root root    68 Apr 30 13:00 01GZ88GGNX1HNHDKQ4WH8BWMG5
drwxr-xr-x 2 root root    20 Apr 30 13:07 chunks_head
-rw-r--r-- 1 root root     0 Apr 30 13:07 lock
-rw-r--r-- 1 root root 20001 Apr 30 13:51 queries.active
drwxr-xr-x 3 root root   129 Apr 30 13:07 wal
[root@xianchaomaster1 data]# cd 01GZ1HH11BE8B01TBMJNY946S7
[root@xianchaomaster1 01GZ1HH11BE8B01TBMJNY946S7]# ll
total 220
drwxr-xr-x 2 root root     20 Apr 27 22:22 chunks
-rw-r--r-- 1 root root 213215 Apr 27 22:22 index
-rw-r--r-- 1 root root    277 Apr 27 22:22 meta.json
-rw-r--r-- 1 root root      9 Apr 27 22:22 tombstones


#block 会压缩、合并历史数据块,以及删除过期的块,随着压缩、合并,block 的数量会减少,
#在压缩过程中会发生三件事: 定期执行压缩、合并小的 block 到大的 block、清理过期的块。

 本地存储配置参数:

-config.file="prometheus.yml"#指定配置文件
-web.listen-address="0.0.0.0:9090"#指定监听地址
-storage.tsdb.path="data/"#指定数存储目录
-storage.tsdb.retention.size=B, KB, MB, GB,TB, PB,EB #指定 chunk 大小,默认 512MB
-storage.tsdb.retention.time= #数据保存时长,默认 15 天
-query.timeout=2m #最大查询超时时间
-query.max-concurrency=20 #最大查询并发数
-web.read-timeout=5m #最大空闲超时时间
--web.max-connections=512 #最大并发连接数
--web.enable-lifecycle #启用 API 动态加载配置功能

 

posted @ 2023-04-30 14:44  しみずよしだ  阅读(134)  评论(0)    收藏  举报