【问题标题】:Removal of labels in Prometheus在 Prometheus 中去除标签
【发布时间】:2017-10-27 08:23:13
【问题描述】:

我正在调查我们公司使用 Prometheus 从我们在 Kubernetes 上运行的实验中收集统计数据。有一个计划使用标签来标记我们云/集群中特定实验的名称。这意味着我们将生成大量标签,这些标签会随着时间的推移占用存储空间。当关联的时间序列过期时,标签也会被删除吗?

【问题讨论】:

  • 每组唯一的标签都是一个时间序列。请小心,因为具有高基数的标签会导致磁盘空间使用量大幅增加。
  • 谢谢@ConorB - 这个问题是“是”吗?
  • 让我扩展这个问题,因为我很想回答这个问题。我们将向我们的集群提交一个实验,该实验由许多作业组成,这些作业将在当时可用的任何节点上运行。实验 ID 将描述整个提交,但我们希望短期标签来引用每个作业。当实验时间序列到期时,我们希望作业 ID(标签)也可以重复使用,并避免高基数问题。问题是:当实验时间序列到期时,标签是否也会到期?

标签: monitoring prometheus


【解决方案1】:

tldr; 从操作的角度来看,Prometheus 不区分时间序列名称和标签;通过删除您的实验数据,您将有效地恢复您创建的标签。

以下内容仅与 Prometheus >= 2.0 相关

Prometheus 为指标名称、标签和标签值的每个唯一组合存储一个时间序列。所以my_metric{my_tag="a"}my_metric{my_tag="b"}your_metric{}都是不同的时间序列;标签或标签值与指标名称没有什么特别之处。

此外,Prometheus 将数据存储在 2-hour frames on disk 中。因此,您创建的任何标签在两小时后都不会影响数据库的操作,磁盘存储大小和实际访问旧数据时的查询性能除外。清除数据后,这两个问题都会得到解决。试试吧!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-12-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-24
    • 1970-01-01
    • 2017-12-07
    相关资源
    最近更新 更多