Prometheus远程存储

九纹龙
• 阅读 6430

除了其本地时间序列数据库之外,还可以将Prometheus配置为读取和写入远程存储。这旨在支持监视数据的长期存储。

远程读

配置后,Prometheus存储查询(例如,通过HTTP API)将发送到本地和远程存储,然后合并结果。

Prometheus远程存储

请注意,为了在面对远程存储问题时保持可靠性,警报和记录规则评估仅使用本​​地TSDB。

配置

您可以在Prometheus配置文件的remote_read部分中配置远程存储读取路径。

最简单的是,您只需为远程存储指定读取的端点URL,再加上身份验证方法。您可以使用HTTP基本认证或承载令牌认证。

您可能需要使用read_recent标志:设置为true时,将从远程存储和本地存储中回答所有查询。如果为false(默认值),则可以从本地存储完全回答的所有查询都不会发送到远程端点。

您可以指定一组required_matchers(标签,值对)以将远程读取限制为查询的某些子集。如果例如您只将部分指标写入远程存储(请参见下文)。

对于更复杂的配置,还有用于请求超时,TLS配置和代理设置的选项。

您可以从多个远程端点读取内容,每个端点都有一个remote_read部分。

远程写

配置后,Prometheus会将其抓取的样本转发到一个或多个远程存储。

Prometheus远程存储

远程写工作是通过“定序”将时间序列样本写入本地存储,然后将它们排队以写入远程存储。

队列实际上是一组动态管理的“分片”:任何特定时间序列(即唯一指标)的所有样本最终都将位于同一分片上。

队列会自动按比例增加或减少写入远程存储的分片数量,以跟上传入数据的速率。

这样一来,Prometheus便可以在不使用远程资源的情况下,仅使用必需的资源并且以最少的配置来管理远程存储。

配置

您可以在Prometheus配置文件的remote_write部分中配置远程存储写路径。

remote_read一样,最简单的配置就是远程存储写入URL,再加上身份验证方法。您可以使用HTTP基本认证或承载令牌认证。

您可以使用write_relabel_configs重新标记或限制您写入远程存储的指标。例如,通常的用途是删除一些指标子集:

Prometheus远程存储

queue_config部分使您可以控制上述动态队列。通常,您无需在此处进行更改,而可以依靠Prometheus的默认设置。

  • capacity:每个分片本身就是一个队列,这是在分片“阻止”进一步添加之前排队的样本数;
  • min_shardsmax_shards:动态队列将使用的最小和最大分片;
  • max_samples_per_sendbatch_send_deadline:每个分片将样本分批成max_samples_per_send块,或者如果它不能在batch_send_deadline之前制造出该大小的批次,则继续发送;后者很少在繁忙的普罗米修斯实例上发生;
  • min_backoffmax_backoffmax_retries:重试管理;注意在当前实现中未使用max_retries-每个分片只会阻塞并重试发送“ forever”。

remote_read一样,您也可以配置用于请求超时,TLS配置和代理设置的选项。

您可以通过每个远程端点都有一个remote_write部分来写入多个远程端点。

日志

您可能会在日志中看到来自远程存储子系统的一些消息:

  • dropped sample for series that was not explicitly dropped via relabelling 由于重新标记或其他原因,我们最终得到了一系列在远程写入路径中没有标签的序列。我们删除它。
  • Remote storage resharding from N to M 动态队列大小正在改变分片的数量-增长以跟上传入样本数与传出的远程存储写入速率之比,或者由于我们的分片数量超出必要而缩小。
  • Currently resharding, skipping 动态队列希望更改为新的分片数量,但是重新分片已经在进行中。
  • Failed to flush all samples on shutdown 关闭动态队列时,Prometheus无法将所有样本刷新到远程存储-远程存储端点可能存在问题。

Metrics

远程存储子系统会导出大量指标,这些指标以prometheus_remote_storageprometheus_wal_watcher为前缀,以下是您可能会感兴趣的选择:

  • prometheus_remote_storage_samples_in_total:样本进入远程存储,与样本输出进行比较,以供队列管理器(计数器)使用
  • prometheus_remote_storage_succeeded_samples_total:成功发送到远程存储(计数器)的样本总数
  • prometheus_remote_storage_pending_samples:队列中待发送的样本数量,这些样本将发送到远程存储(仪表)
  • prometheus_remote_storage_shards:用于并行发送到远程存储(仪表)的分片数
  • prometheus_remote_storage_sent_batch_duration_seconds : 发送样品批次到远程存储的持续时间(直方图)
点赞
收藏
评论区
推荐文章
blmius blmius
4年前
MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1
文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s
Oracle 分组与拼接字符串同时使用
SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(
Wesley13 Wesley13
4年前
MySQL部分从库上面因为大量的临时表tmp_table造成慢查询
背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_
亚瑟 亚瑟
4年前
云原生监控系统 Prometheus 入门
Prometheus介绍主要特性之所以Prometheus现在这么受欢迎,主要是因为它具备如下特性:多维度数据模型灵活的查询语言不依赖任何分布式存储常见方式是通过拉取方式采集数据也可通过中间网关支持推送方式采集数据通过服务发现或者静态配置来发现监控目标支持多
Wesley13 Wesley13
4年前
victoriametrics 快速高效&&可扩展的时序数据库
victoriametrics是一个时序数据库,可以用来作为prometheus的longterm远端存储特性支持promtheus查询api,同时实现了一个metricsql查询语言支持全局查询视图,好处多prometheus实例写数据到victoriametrics,然后提供一个统一的查询同时也提供
Stella981 Stella981
4年前
KVM调整cpu和内存
一.修改kvm虚拟机的配置1、virsheditcentos7找到“memory”和“vcpu”标签,将<namecentos7</name<uuid2220a6d1a36a4fbb8523e078b3dfe795</uuid
Stella981 Stella981
4年前
SpringBoot整合Redis乱码原因及解决方案
问题描述:springboot使用springdataredis存储数据时乱码rediskey/value出现\\xAC\\xED\\x00\\x05t\\x00\\x05问题分析:查看RedisTemplate类!(https://oscimg.oschina.net/oscnet/0a85565fa
Easter79 Easter79
4年前
Twitter的分布式自增ID算法snowflake (Java版)
概述分布式系统中,有一些需要使用全局唯一ID的场景,这种时候为了防止ID冲突可以使用36位的UUID,但是UUID有一些缺点,首先他相对比较长,另外UUID一般是无序的。有些时候我们希望能使用一种简单一些的ID,并且希望ID能够按照时间有序生成。而twitter的snowflake解决了这种需求,最初Twitter把存储系统从MySQL迁移
Easter79 Easter79
4年前
SpringBoot整合Redis乱码原因及解决方案
问题描述:springboot使用springdataredis存储数据时乱码rediskey/value出现\\xAC\\xED\\x00\\x05t\\x00\\x05问题分析:查看RedisTemplate类!(https://oscimg.oschina.net/oscnet/0a85565fa
暗箭伤人 暗箭伤人
2年前
【www.ithunter.club】 20230922下午
不容易的2023年,我们一起努力【www.ithunter.club】(2023092208:00:00.8872062023092216:00:00.887206)1.人事招聘专员数名(可选远程或入职)2.招聘向坐标东京Yahoo、Shift、L
Python进阶者 Python进阶者
2年前
Excel中这日期老是出来00:00:00,怎么用Pandas把这个去除
大家好,我是皮皮。一、前言前几天在Python白银交流群【上海新年人】问了一个Pandas数据筛选的问题。问题如下:这日期老是出来00:00:00,怎么把这个去除。二、实现过程后来【论草莓如何成为冻干莓】给了一个思路和代码如下:pd.toexcel之前把这