Prometheus 全新3.0 Beta 版发布

科技   2024-09-26 07:30   广东  
近期Prometheus官方发布了全新的3.0 Beta版本,新的版本启用了全新的UI界面,并对部分功能进行了优化及删减。
GitHub当前已更新相关版本的安装包,用户可自行下载安装。Prometheus团队鼓励用户积极测试,并发现问题进行反馈完善。
以下是来自官方博客的发布说明:

作者:普罗米修斯团队
链接:https://www.prometheus.io/blog/2024/09/11/prometheus-3-beta/

Prometheus团队自豪地宣布 Prometheus 3.0-beta 版本的发布!你可以在这里下载。按照 beta 版本发布的惯例,我们不建议用户在关键的生产系统中安装 Prometheus 3.0-beta,但我们鼓励大家进行测试并发现潜在的 bug。

总体而言,唯一的重大变更是移除了弃用的功能标志。Prometheus 团队非常努力地确保向后兼容性,不会破坏现有的安装,因此下面描述的所有新功能都是基于现有功能构建的。大多数用户应该能够在无需更改配置的情况下,直接尝试 Prometheus 3.0。

新增功能

自 Prometheus 2.0 发布以来的 7 年时间里,已经有超过 7500 个提交。这些提交中包含了太多的新功能和修复,我们无法一一列出,但有一些重要的变化值得特别注意。我们希望社区中的每个人都能尝试这些新功能,并报告任何遇到的问题。我们收到的反馈越多,3.0 的最终版本就会越稳定。

新的用户界面

Prometheus 3.0 的一大亮点是其默认启用的全新 UI:

UI 完全重写,减少了杂乱,外观和体验更加现代,还添加了类似 PromLens 的树形视图功能。新的技术栈也将使未来的维护更加轻松。

用户可以使用old-ui功能标志暂时启用旧 UI。由于新 UI 尚未经过实战测试,因此很可能仍存在错误。如果您发现任何错误,请在 GitHub 上报告

远程写入 2.0

Remote Write 2.0 对先前的协议版本进行了改进,添加了对元数据、示例、创建时间戳和原生直方图等新元素的原生支持。它还通过字符串驻留减少了压缩和解压缩时的负载大小和 CPU 使用率。更多详细信息可在此处找到。

OpenTelemetry 支持

Prometheus 旨在成为存储 OpenTelemetry 指标的默认选择,3.0 包含一些重要的新功能,使其作为 OpenTelemetry 指标数据的存储后端变得更好。

UTF-8

默认情况下,Prometheus 将允许在指标和标签名称以及标签值中使用所有有效的 UTF-8 字符,就像在 2.x 版本中一样。

用户需要确保其指标生成器已配置为传递 UTF-8 名称,如果任何一方不支持 UTF-8,则指标名称将使用传统的下划线替换方法进行转义。可以使用新的引号语法编写 PromQL 查询以检索 UTF-8 指标,或者用户可以__name__ 手动指定标签名称。

并非所有语言绑定都已更新对 UTF-8 的支持,但主要的 Go 库已经更新了。

OTLP 摄取

Prometheus 可以配置为 OTLP Metrics 协议的原生接收端,接收 /api/v1/otlp/v1/metrics 端点上的 OTLP 指标。

原生直方图

原生直方图是一种 Prometheus 指标类型,与传统直方图相比,它效率更高、成本更低。原生直方图无需根据数据集选择(并且可能需要更新)存储桶边界,而是根据指数增长预设存储桶边界。

原生直方图仍处于实验阶段,尚未默认启用,可以通过传递 --enable-feature=native-histograms 来启用。原生直方图的某些方面(如文本格式和访问函数/操作符)仍在设计中。

其他重大变化

以下功能标志已被移除,并且在 3.0 版本中默认启用。相关配置中的引用应被移除,因为这些标志将不再被 Prometheus 识别:
  • promql-at-modifier
  • promql-negative-offset
  • remote-write-receiver
  • no-scrape-default-port
  • new-service-discovery-manager

范围选择现在是左开右闭的,这将避免在某些罕见情况下包含比预期更多的点。

代理模式现在已经稳定,并拥有了自己的配置标志,而不再是一个功能标志。

------------------ END ------------------

关注公众号,获取更多精彩内容

DevOps实战派
DevOps、SRE和运维领域资深技术老鸟;公众号主要分享相关领域的专业知识。
 最新文章