Prometheus 普罗米修斯实例标签与容器

Prometheus 普罗米修斯实例标签与容器,prometheus,Prometheus,在连续交付场景中,服务在容器中运行,并且每天被部署多次,作为实例标签使用的正确值是什么 使用容器id似乎很自然,但随着时间的推移,实例的历史值会越来越多(即使在任何时间点只有相对较小的一组值处于“活动”状态) 考虑到任何标签的基数都不应该是无界的,这是否会在普罗米修斯中引起性能问题 如果是这样的话,是否可以通过任何方式缓解,例如通过调整保留期或使用不同的存储引擎,如Inflow DB适配器?我对此进行了更多的研究,发现维护人员之一Fabian Reinartz的这段视频非常有启发性: 基本上,

在连续交付场景中,服务在容器中运行,并且每天被部署多次,作为
实例
标签使用的正确值是什么

使用容器id似乎很自然,但随着时间的推移,
实例
的历史值会越来越多(即使在任何时间点只有相对较小的一组值处于“活动”状态)

考虑到任何标签的基数都不应该是无界的,这是否会在普罗米修斯中引起性能问题


如果是这样的话,是否可以通过任何方式缓解,例如通过调整保留期或使用不同的存储引擎,如Inflow DB适配器?

我对此进行了更多的研究,发现维护人员之一Fabian Reinartz的这段视频非常有启发性:

基本上,普罗米修斯2.0以上版本只使用容器id作为
实例
标签不是问题

在普罗米修斯2号中,它有一个新的时间序列db,针对这种情况进行了优化。此外,当普罗米修斯2号探测到一个
实例
已经关闭太久时,它会假定它已经被杀死,不会再回来,因此正式关闭该实例的时间序列。这可以防止时间序列不断增长,并有助于解决问题

我猜理论上这也意味着我们可以在计算基数时忽略标签的失效历史值,因为不再使用的值最终将通过该机制关闭所有相关的时间序列(假设实例循环情况,如我所述)-但如果能在文件中对此进行澄清,那就太好了