介绍 Prometheus 一致性计划

2021年5月3日作者 Richard "RichiH" Hartmann

Prometheus 是云原生领域及其他领域的指标监控标准。为了确保互操作性,保护用户免受意外情况的影响,并促进更多的并行创新,Prometheus 项目在 CNCF  的帮助下,推出了 Prometheus 一致性计划(Prometheus Conformance Program) ,以认证组件的合规性和 Prometheus 的兼容性。

CNCF 管理委员会预计将在下次会议上正式审查和批准该计划。我们邀请更广泛的社区在此准备阶段帮助我们改进测试。

借助我们内容广泛且不断扩展的测试套件 ,项目和供应商可以确定其产品是否符合我们的规范,以及在 Prometheus 生态系统中的兼容性。

在启动阶段,我们为三个组件提供合规性测试

  • PromQL(需要手动解读,基本完成)
  • 远程读写(完全自动化,正在进行中)
  • OpenMetrics(部分自动化,基本完成,将需要调查问卷)

我们计划增加更多组件。Prometheus 远程读取或我们的数据存储/TSDB 的测试很可能成为下一批新增内容。我们明确邀请所有人扩展和改进现有测试,并提交新的测试。

Prometheus 一致性计划的运作方式如下

对于每个组件,都会有一个“foo YYYY-MM compliant”的标志,例如“OpenMetrics 2021-05 compliant”、“PromQL 2021-05 compliant”和“Prometheus Remote Write 2021-05 compliant”。任何项目或供应商都可以提交其合规性文档。一旦达到100%,该标志将被授予。

对于任何完整的软件,都会有一个“Prometheus x.y compatible”的标志,例如“Prometheus 2.26 compatible”。相关的组件合规性分数会相乘。一旦达到100%,该标志将被授予。

举个例子,Prometheus Agent 支持 OpenMetrics 和 Prometheus 远程写入,但不支持 PromQL。因此,只有 OpenMetrics 和 Prometheus 远程写入的合规性分数会相乘。

合规(compliant)和兼容(compatible)标志的有效期为 2 个次要版本或 12 周,以较长者为准。