Prometheus 2.0 已经发布一段时间了,从今天开始我将分几篇文章为大家介绍其中的一些变化。

此篇文章主要介绍 2.0 的告警规则声明的新写法。

变化

pic1.png

从 1.x 到 2.0 规则声明由自定义的 DSL 语法变成了标准的 yaml。

这么做的主要原因是 yaml 能够提供更丰富的配置信息,能够彻底解决告警规则分组问题。

在 2.0 中我们可以很方便的给不同告警组设置不同的检查轮询时间,详情请参考官方的文档(点击原文链接)。

升级

你的 Prometheus 1.x 已经运行一段时间了,其中配置了大量的告警规则, 如何快速将 1.x 的告警规则定义配置升级到 2.0 格式呢?

这个问题 Prometheus 早已经为我们考虑了,你可以使用 Prometheus 安装包下面的 promtool 工具来实现批量更新,用法如下:

pic2.png

注: rules-files 支持单个文件和正则表达式,当执行完命令,在对应文件目录会生成一个同名的 文件名.yml 文件存放新的定义。

总结

本篇文章主要介绍 Prometheus 2.0 告警规则的新语法以及如何使用 promtool 批量跟新旧定义,希望对大家有所帮助。