0

我想在一个小型组织中实施监控系统。我有使用 Zabbix 的经验,但我正在考虑 Prometheus,因为它背后似乎有一个大社区,而且它几乎是今天的标准(如果我错了,请纠正我)。

但是,我想知道如何方便地在配置文件中处理所有抓取和警报规则的配置,而不是在像 Zabbix 这样的 Web UI 中。我的意思是,10 到 20 个警报可能没问题,但是如何通过 20 个不同的服务和 1000 个不同的警报来管理它呢?也许有一个我刚刚错过的解决方案?在 Zabbix 中,管理所有内容非常方便,因为它是 UI,而且所有内容都进入组(主机组、模板等)

我很感激你的见解。

4

1 回答 1

0

Prometheus 是一个引人注目的解决方案,当之无愧地具有相当大的动力。为了完整起见,我敦促您在确定是否适合从现有解决方案切换时考虑 Prometheus 可能需要的其他更改。这将是您应该准备的众多变化之一。

我不知道为什么 Prometheus 的开发人员走上了他们在配置方面所做的道路,但我会给你一个模型的好处。通过要求将配置写入 (YAML) 配置文件中,您可以将这些配置提交到您的源代码管理并管理对这些文件的更改,就像您对其他源代码一样。这是“基础设施即代码”的宗旨,这样做有很多好处。

现在,UI 控制台工具确实可以为您写入对配置文件的更改,然后您可以像以前一样使用源代码管理来管理这些文件。但是,此功能在核心解决方案中不可用。

您可能感兴趣的一项功能是,在更改配置时无需重新启动 prometheus 或 alertmananger。您可以更改配置,然后更改POST服务的/-/reload端点,服务将刷新配置。

看:

https://prometheus.io/docs/prometheus/latest/configuration/configuration/ https://prometheus.io/docs/alerting/configuration/

另请参阅这篇有用的文章,该文章解释了如何让 Prometheus 在对目标列表进行更改时自动刷新其配置:

https://www.robustperception.io/using-json-file-service-discovery-with-prometheus

于 2019-03-22T02:52:54.610 回答