
开源的监控产品有很多,其中最知名的,当属早期的 Zabbix 和现在的 Prometheus。Zabbix 是 2001 年发布的,至今已经 20 多年,很多细节打磨的相当到位,Prometheus 是 2014 年发布的,相对年轻,依托于之前 Google Borgmon 的先进经验和灵感,Prometheus 在云原生监控领域有着非常好的表现。
咦?你怎么没有提到你们自己开源的 Nightingale?Nightingale 的确是我们主推的监控产品,姑且可以看做是 Prometheus 生态的补充者,一般使用 Prometheus 的用户很多都会同时部署 Nightingale,二者是协同关系,这类用户一般使用 Nightingale 做告警引擎,使用 Grafana 看图。但要说社区影响力,显然 Zabbix 和 Prometheus 更厉害,这一点毋庸置疑。
对 Zabbix 和 Prometheus 的选型对比,实际不仅仅是对比这两个软件本身,而是在对比两个生态。我们从一些关键点来对比这两个监控系统。
性能容量对比
Zabbix 使用 MySQL 或 Postgres 存储时序数据,因为 2001 年,还没有时序库呢,所以 Zabbix 的数据存储是关系型数据库。这就导致了 Zabbix 在数据量大的时候,性能会有问题,因为关系型数据库不是为时序数据设计的。而 Prometheus 使用的是自家的 TSDB,专门为时序数据设计,性能更好,而且 Prometheus 有很多优化措施,比如 WAL、Compaction 等,可以保证在大数据量的情况下,性能依然很好。
如果 Prometheus 本身性能扛不住了,或者需要集群方案,Prometheus 生态有 VictoriaMetrics,有 Thanos、GrepTimeDB 等。在容量方面,Prometheus 完胜,这点相信大家都有共识。<

最低0.47元/天 解锁文章
4435

被折叠的 条评论
为什么被折叠?



