Prometheus 一致性计划:第一轮结果
2021年10月14日作者 Richard "RichiH" Hartmann
今天,我们推出了Prometheus 一致性计划,旨在确保Prometheus监控领域中不同项目和供应商之间的互操作性。尽管法律文书工作仍待最终确定,但我们已经运行了测试,并认为以下是我们第一轮的结果。作为此次发布的一部分,Julius Volz更新了他的PromQL测试结果。
快速提醒:该计划被称为Prometheus **一致性**,软件可以**符合**特定测试,这将产生一个**兼容性**评级。这种命名法可能看起来很复杂,但它使我们能够讨论这个主题,而无需使用冗长的术语。
前言
新类别
我们发现,很难理清哪些规则适用于哪些软件。为了帮助理清思路,我们创建了一个概述,引入了四个可以归类软件的新类别
- 指标暴露器
- 代理/收集器
- Prometheus 存储后端
- 完全Prometheus兼容性
行动呼吁
非常欢迎提供反馈。也许有些出乎意料,我们希望由社区而非仅仅Prometheus团队来塑造这项工作。为此,我们将在Prometheus内部成立一个WG Conformance(一致性工作组)。与WG Docs(文档工作组)和WG Storage(存储工作组)一样,这些工作组将是公开的,我们积极邀请大家参与。
正如我们最近提及的,Prometheus的维护者/采纳比率出人意料地低,甚至可以说是令人震惊的低。换句话说,我们希望围绕Prometheus兼容性的经济激励措施能够吸引供应商投入资源与我们共同开发测试。如果您一直想在工作时间为Prometheus做贡献,这可能是一个途径;这种方式将使您接触到Prometheus许多高度相关的方面。有多种方式可以与我们联系。
注册进行测试
如果您想注册进行测试,可以使用相同的沟通渠道与我们联系。一旦文书工作完成,我们将把联系信息和合同操作移交给CNCF。
测试结果
完全Prometheus兼容性
我们知道要开发哪些测试,但尚未完成。正如之前宣布的,这对项目或供应商来说是不公平的。因此,测试填充层被定义为已通过。例如,Julius本周运行的PromQL测试目前是半手动的,这意味着在大多数情况下,Julius作为PromQL测试的一部分,通过Prometheus远程写入来测试数据发送。我们在这里以多种方式重用了他的结果。这种情况很快就会理清,来自不同角度的更多测试将不断提高要求,从而增强最终用户的信心。
将项目和即服务(aaS)产品分为两组来看待是有意义的。
项目
通过
- Cortex 1.10.0
- M3 1.3.0
- Promscale 0.6.2
- Thanos 0.23.1
未通过
VictoriaMetrics 1.67.0 未通过,并且不打算通过。为了最终用户的信心,我们决定跟踪他们的结果,尽管他们将自己定位为Prometheus的直接替代品。
aaS
通过
- Chronosphere
- Grafana Cloud
未通过
- Amazon Managed Service for Prometheus
- Google Cloud Managed Service for Prometheus
- New Relic
- Sysdig Monitor
注意:由于Amazon Managed Service for Prometheus与Grafana Cloud一样基于Cortex,我们预计它们将在下一次更新周期后通过。
代理/收集器
通过
- Grafana Agent 0.19.0
- OpenTelemetry Collector 0.37.0
- Prometheus 2.30.3
未通过
- Telegraf 1.20.2
- Timber Vector 0.16.1
- VictoriaMetrics Agent 1.67.0
注意:我们测试的是Vector 0.16.1而非0.17.0,因为0.17.0版本没有二进制下载文件,并且我们当前的测试工具链需要二进制文件。