当前位置: 首页 > news >正文

深圳h5网站公司网上书城网站建设目的

深圳h5网站公司,网上书城网站建设目的,企业信用信息网查询系统官网,互联网公司十大排名Prometheus 存储学习一、序言二、 运行时参数三、Prometheus 的数据存储了解四、远程存储学习一、序言 本篇文章主要根据官网https://prometheus.io/docs/prometheus/latest/storage/文章对存储的描述进行理解。 prometheus 使用一个嵌入式的tsdb数据库存储数据,此…

Prometheus 存储学习

  • 一、序言
  • 二、 运行时参数
  • 三、Prometheus 的数据存储了解
  • 四、远程存储学习

一、序言

本篇文章主要根据官网https://prometheus.io/docs/prometheus/latest/storage/文章对存储的描述进行理解。

prometheus 使用一个嵌入式的tsdb数据库存储数据,此数据库并非像平常数据库可登录查询数据,而是需要通过promql或者webui界面查询。

二、 运行时参数

  • --storage.tsdb.path: Prometheus 写入其数据库的位置。默认为 data/。
  • --storage.tsdb.retention.time: 保留时间默认为 15d。支持的单位:y, w, d, h, m, s, ms。
  • --storage.tsdb.retention.size: 设置最多占用多少存储空间。默认为 0 或禁用。支持的单位:B, KB, MB, GB, TB, PB, EB。 WAL 和 m-mapped 也计入总大小。
  • --storage.tsdb.wal-compression : 是否会对 WAL 日志进行压缩存储,默认否。

WAL介绍:

WAL 是 Prometheus TSDB 用于保证数据可靠性的临时日志,所有新采集的监控样本(时间序列数据)会先写入 WAL,再定期批量写入磁盘上的持久化存储(块文件)。这是为了防止 Prometheus 意外崩溃时丢失未持久化的数据。

三、Prometheus 的数据存储了解

存储目录结构如下:

root@localhost:~# ll /var/lib/prometheus/
drwxr-xr-x  9 root root  4096 Sep  6 21:00 ./
drwxr-xr-x 45 root root  4096 Sep  6 09:51 ../
drwxr-xr-x  3 root root  4096 Sep  6 13:00 01K4EPAVVDMQHK7HQZ9HKDT5AV/
drwxr-xr-x  3 root root  4096 Sep  6 17:00 01K4F42A6EHFC1NF0XNDEGYRE6/
drwxr-xr-x  3 root root  4096 Sep  6 19:00 01K4FAY1F2BXGZ6K1ZZZ8CBEHF/
drwxr-xr-x  3 root root  4096 Sep  6 19:00 01K4FAY1PGZN9XH8KKKPNNZJCW/
drwxr-xr-x  3 root root  4096 Sep  6 21:00 01K4FHSRQ6D5TPA953YG7V3765/
drwxr-xr-x  2 root root  4096 Sep  6 21:01 chunks_head/
-rw-r--r--  1 root root     0 Sep  6 15:18 lock
-rw-r--r--  1 root root 20001 Sep  6 22:36 queries.active
drwxr-xr-x  3 root root  4096 Sep  6 21:00 wal/

prometheus 正常来说,会将最近两小时采集的数据(一个块文件)保存到chunks_head目录下,当满足2小时或者达到指定大小时,prometheus tsdb将会冻结chunks_head并生成一个以 01K4EPAVV... 命名的持久化块目录,该目录结构如下:

chunks_head 目录下默认会保留两个块,4个小时的数据。
非正常的情况是:当你重启prometheus 时,他会自动将之前收集的数据,即使不满2小时或者存储阈值也会生成一个01K4EPAVV... 命名的文件。
--max-block-duration 修改满足多久生成新的文件,参考链接详细说明:https://prometheus.io/docs/prometheus/latest/storage/#longer-block-durations

root@localhost:/var/lib/prometheus# tree 01K4FHSRQ6D5TPA953YG7V3765/
01K4FHSRQ6D5TPA953YG7V3765/
├── chunks
│   └── 000001
├── index
├── meta.json
└── tombstones
  • chunks:该目录保存着2 小时内所有时间序列的样本数据
  • index:存储着时间序列的标签索引,是 Prometheus 高效查询数据的关键
  • meta.json:存储着当前数据块的元信息和统计数据,例如采集开始和结束时间,块的uuid,块大小等
  • tombstones:记录被标记为删除的时间序列,例如:当http_requests_total{path=“/old-api”} 这个api被废弃时,删除之前的所有数据时,prometheus会在tombstones文件中记录删除范围,当执行查询http_requests_total{path=“/old-api”} 时,会被自动过滤掉,相当于逻辑删除,当进行块合并时,被标记的数据不会被合并,相当与物理删除。(prometheus会动态的将之前的旧数据聚合)

chunks_head 已经介绍过了新收集的指标数据会保存在此目录下,收集完两小时后就会生成01K4EPAVV... 命名的持久化块目录,并将数据迁移过去。

lock: 进程锁文件,主要功能是防止多个prometheus实例同时访问数据,导致数据损坏

WAL:在上面也有介绍,就是新采集的指标数据会先预写到WAL–> 内存 --> chunks_head,这样的好处是当promeheus意外重启,chunks_head的数据不完整时,将通过加载chunks_head --> wal 来恢复丢失的数据。

查看WAL目录结构:

tree wal/
wal/
├── 00000022
├── 00000023
├── 00000024
└── checkpoint.00000021└── 00000000

000000开头的文件:存储最新采集的监控样本数据(以日志形式按顺序写入)
checkpoint.00000021:检查点目录,存储 WAL 日志的 “检查点快照”,用于优化重启时的恢复速度。

  • 工作原理:
    当 WAL 日志文件累积到一定数量(默认每生成 16 个日志文件),TSDB 会对已写入 chunks_head/ 的数据做一次 “快照”,写入 checkpoint.XXX 目录,重启prometheus也会触发。就是合并之前16个日志文件,并将之前的日志文件删除。

四、远程存储学习

prometheus 提供了一套接口,允许与远程存储系统进行集成,官方文档链接:https://prometheus.io/docs/prometheus/latest/storage/#remote-storage-integrations

prometheus 支持的外部存储查看链接:https://prometheus.io/docs/operating/integrations/#remote-endpoints-and-storage

如下演示如何使用InfluxDB数据库作为外部存储:

InfluxDB 是一款专为 时间序列数据(Time-Series Data) 设计的开源时序数据库(Time-Series Database, TSDB)

  1. 使用docker快速部署InfluxDB
    InfluxDB v1才支持prometheus 其他版本不支持

     docker run -d --name influxdb -p 8086:8086 influxdb:1.11.8
    
  2. 创建prometheus数据库

     docker exec -it  influxdb  bashinfluxdb@1e2d4cc5ca15:/$ influx
    
    Connected to http://localhost:8086 version v1.11.8
    InfluxDB shell version: v1.11.8
    > CREATE DATABASE "prometheus"
    > SHOW DATABASES
    name: databases
    name
    ----
    _internal
    prometheus
    
  3. 修改prometheus配置
    prometheus.yml配置文件后面加入两行

    remote_write:- url: "http://localhost:8086/api/v1/prom/write?db=prometheus"
    remote_read:- url: "http://localhost:8086/api/v1/prom/read?db=prometheus"
    
  4. prometheus是否能正确查询到数据
    在这里插入图片描述

  5. 查看InfluxDB中的数据

     influxdb@1e2d4cc5ca15:/$ influx
    
    Connected to http://localhost:8086 version v1.11.8
    InfluxDB shell version: v1.11.8
    > USE prometheus
    Using database prometheus
    > SELECT * FROM "up" limit 3
    name: up
    time                __name__ app        instance            job             value
    ----                -------- ---        --------            ---             -----
    1757229925823000000 up                  192.168.25.225:9100 consul_exporter 1
    1757229927835000000 up                  192.168.25.221:9100 consul_exporter 0
    1757229929158000000 up       prometheus localhost:9090      prometheus      1
    
http://www.dtcms.com/a/539796.html

相关文章:

  • 小型培训机构网站开发毕业设计找室内效果图的网站
  • 宝山做网站价格建网站的设备
  • 东阳哪里可以做网站wordpress安装插件要求ftp
  • 建设网站公司怎么分工网页加载不出来怎么办
  • 南昌大型网站建设公司nas wordpress建站
  • 孝感做招聘信息的网站wordpress禁止抓分页
  • 网站建设学习步骤遵义在线读者板留言
  • 为什么要做响应式网站龙华做棋牌网站建设
  • chrome 谷歌浏览器怀化网站优化联系方式
  • 东莞长安营销型网站建设无忧建站
  • 贵阳市网站建设公司济南公司网站推广优化最大的
  • 佛山新网站建设公司WordPress出现归档
  • 网站怎样盈利深圳大眼睛网站建设
  • 新乡做网站企业邮箱注册申请免费注册126
  • 济南 网站建设那家好如何企业网站的软文
  • 余姚市城乡建设局网站wordpress安装主题失败
  • 多语言商城网站开发网站的建设心得
  • 阿里云怎么放多个网站wordpress推广
  • .net建设网站步骤详解网站流量怎么赚钱
  • 做301网站打不开桂林网站建
  • 湛江建站模板天津产品设计公司
  • 世界之窗附近做网站公司工业app开发平台
  • 做资源网站有哪些单位网站和新媒体建设制度
  • 网站集约化建设难点设计公司团队
  • 国家建设部网站查网站是否备案
  • 游戏网站建设教程怎么找到网站站长
  • 江苏建设厅官方网站安全员网站 公司
  • dw做的网页在网站图片不显示python 网站开发代码
  • 手机客户端网站怎么做服饰营销型网站建设
  • 网站建设基本范例台州品牌设计公司