首页 > 其他分享 >prometheus单机存储与victoriametrics远程存储

prometheus单机存储与victoriametrics远程存储

时间:2023-01-12 22:24:16浏览次数:60  
标签:存储 -- victoriametrics victoria prometheus block

  prometheus 存储系统

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

  

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

 

 

  block 简介:

   每个 block 为一个 data 目录中以 01 开头的存储目录,如下:

 

 

  block 的特性:

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

 每个块有 4 部分组成:

root@prometheus:/usr/local/prometheus/data# tree 01GDF6NKPFYK8RG37J7Y0K1JNM/
01GDF6NKPFYK8RG37J7Y0K1JNM/
├── chunks
│   └── 000001     #数据目录,每个大小为 512MB 超过会被切分为多个
├── index		   #索引文件,记录存储的数据的索引信息,通过文件内的几个表来查找时序数据
├── meta.json      #block 元数据信息,包含了样本数、采集数据数据的起始时间、压缩历史
└── tombstones     #逻辑数据,主要记载删除记录和标记要删除的内容,删除标记,可在查询块时排除样本。

 

  本地存储配置参数

./prometheus --help

--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=15d 		   #数据保存时长,默认 15 天

--query.timeout=2m                 	   #最大查询超时时间

--query.max-concurrency=20 		   	   #最大查询并发数

--web.read-timeout=5m 				   #最大空闲超时时间

--web.max-connections=512 			   #最大并发连接数

--web.enable-lifecycle 				   #启用 API 动态加载配置功能

 

 

  victoriametrics

  使用victoriametrics作为prometheus的数据存储服务,将prometheus采集的数据统一存储在victoriametrics上。

  grafana就只需在victoriametrics上读取数据,不需要从prometheus上获取,这样可以减轻prometheus的读压力。并且grafana需要配置将数据源从prometheus修改为victoriametrics。

 

  服务流程图

 

 

   victoriametrics的项目和官网

   github项目地址:https://github.com/VictoriaMetrics/VictoriaMetrics

   官网文档:https://docs.victoriametrics.com/Single-server-VictoriaMetrics.html

 

  单机版部署

  安装victoriametrics

  访问github项目地址,下载 https://github.com/VictoriaMetrics/VictoriaMetrics

 

  解压部署

root@victoriametrics:~# tar xf victoria-metrics-linux-amd64-v1.81.2.tar.gz -C /usr/local/bin/

   参数:

-httpListenAddr=0.0.0.0:8428 	#监听地址及端口

-storageDataPath 	#VictoriaMetrics 将所有数据存储在此目录中,默认为执行启动 victoria 的当前目录下的 victoria-metrics-data 目录中。

-retentionPeriod 	#存储数据的保留,较旧的数据会自动删除,默认保留期为 1 个月,默认单位为 m(月),支持的单位有 h (hour), d (day), w (week), y (year)。

 

  创建service启动文件

root@victoriametrics:~# vim /etc/systemd/system/victoria-metrics-prod.service
[Unit]
Description=For Victoria-metrics-prod Service
After=network.target

[Service]
ExecStart=/usr/local/bin/victoria-metrics-prod -httpListenAddr=0.0.0.0:8428 -storageDataPath=/data/victoria 
-retentionPeriod=3

[Install]
WantedBy=multi-user.target

 

  启动victoriametrics

systemctl daemon-reload && systemctl enable victoria-metrics-prod.service && systemctl start victoria-metrics-prod.service

 

  验证

  浏览器访问IP:8428

 

   未完待续......

 

标签:存储,--,victoriametrics,victoria,prometheus,block
From: https://www.cnblogs.com/punchlinux/p/17047975.html

相关文章

  • Linux存储服务
    存储服务一、概述存储:用于存放用户上传的内容(数据),一般应用在网站集群中为什么要存储?如果不使用存储,用户上传的数据就直接存放在某一台网站服务器上了,用户下次访问就可......
  • Centos 二进制安装 Prometheus
    二进制下载地址:https://prometheus.io/download/下载以linux-amd64.tar.gz结尾的文件。1.下载二进制压缩包wget-P/homehttps://github.com/prometheus/prometheus......
  • 存储过程 RETURN语句
     1、RETURN如果没有使用表达式,RETURN命令用于告诉这个函数已经完成执行了,如示例2.如果返回标量类型,那么可以使用任何表达式。 示例1:带有表达式returnCREATEOR......
  • kafka监听全流程相关代码--从获取到数据到存储(彩民画像功能)
    先建一个PortraitTask1@Component2@Slf4j3publicclassPortraitTaskimplementsStatAble{45privatestaticfinalStringLOCK_ID="sss:portra......
  • 函数与存储过程调用方式的区别
    对于函数与存储过程,其调用方式不同。函数可以通过selectorcall方式调用,而存储过程只能通过call方式调用。以下具体举例说明。1、创建调用函数和过程函数:createor......
  • 【服务器数据恢复】昆腾存储StorNext文件系统下raid5阵列瘫痪导致存储系统崩溃的数据
    服务器数据恢复环境:昆腾系列存储,9个磁盘柜,每个磁盘柜配置24块硬盘。其中8个磁盘柜用于存储数据,1个磁盘柜用于存储元数据。上层使用的是StorNext文件系统。存储元数据的磁......
  • 存储过程动态sql执行
    DELIMITER$$USE`test`$$DROPPROCEDUREIFEXISTS`Prc_TelSuccess_Snapshot_Update`$$CREATEDEFINER=`ccstest`@`%`PROCEDURE`Prc_TelSuccess_Snapshot_Update......
  • 快速利用ceph对象存储与owncloud打造储存“云盘”
        6, 文件上传下载测试 [root@client ~]#s3cmdput/etc/fstabs3://owncloud upload: '/etc/fstab' -> 's3://owncloud/fstab'             ......
  • 问题盘点|使用 Prometheus 监控 Kafka,我们该关注哪些指标
    作者:阿里云可观测Kafka作为当前广泛使用的中间件产品,承担了重要/核心业务数据流转,其稳定运行关乎整个业务系统可用性。本文旨在分享阿里云Prometheus在阿里云Kafka......
  • AWS S3存储桶跨账户数据同步
    场景:例如AWS账户免费套餐过期需要将S3相关资源迁移至新AWS账户的相关操作。这也是个很常见的场景。 --课程与题库整理--相关题库整理和课程分享--先决条件:拥有两个......