29

ElasticSearch 是一个文档存储,更像是一个搜索引擎,我认为 ElasticSearch 不是监控高维数据的好选择,因为它消耗大量资源。另一方面,prometheus 是一个 TSDB,专为捕获高维数据而设计。

任何有这方面经验的人请告诉我什么是容器和服务器监控的最佳工具。

4

3 回答 3

69

ELK 是一个通用的 no-sql 堆栈,用于监控。我们已经成功地在生产环境中部署了一个,并将其用于我们监控系统的某些方面。您可以将指标发送到其中(如果您愿意)并使用它来监控它们,但它并不是专门为此而设计的。非商业版本(7.9 版)也没有警报系统 - 您需要为此设置另一个组件(如 Sensu)或支付 ES 商业许可证。

另一方面,Prometheus 旨在用于监控。以及它的度量收集客户端(或其他 3rd 方客户端,如Telegraf及其服务发现选项(如 consul)及其警报管理器正是这项工作的正确工具。

最终,这两种解决方案都可以工作,但在我看来,Elasticsearch 将需要更多的工作和更多的维护(我们发现 ES 集群很难维护 - 但这取决于您将拥有的数据量)。

于 2016-12-04T07:21:15.797 回答
14

我正在使用 openshift,我们正在运行这两个工具并且都有不同的工作。将所有日志记录和传送聚合到弹​​性搜索,以便于浏览所有日志记录和类似内容。

我们的 prometheus 主要用于节点或 pod 的指标,grafana 绝对是一个很好的界面,可以肯定地查看所有 prometheus 指标。

于 2017-05-10T12:45:22.933 回答
-10

同意这取决于您所说的“高维”以及容器和服务器监控的含义。您可以使用一些开源监控解决方案,我已经尝试过 Pandora FMS,它们为高环境和分布式架构提供了多种选择,服务器监控主要是基于代理的,但我觉得它有很大的潜力。

于 2016-12-01T10:50:57.640 回答