首先Jean-Christophe,也就是我分享一句很有意思的话,这是在一个QQ群看到的
“我入坑监控的时候已经是Prometheus了,我都没经历过Zabbix的时代”
那么在Prometheus之前,历史上的监控系统都是怎样的呢?今天,就让我们一起来了解Ganglia、Zabbix、Nagios、Pandora FMS、Open-falcon、Prometheus的那些事儿~
如果图片看不清,点击双手摸摸大
Zabbix vs Nagios vs Pandora FMS comparative
Zabbix vs Nagios vs Pandora FMS比较
We know that many corporative installations nowadays use Nagios as their main monitoring system for networks, systems and applications. Also, as we mentioned in the article on the best network monitoring tools, Zabbix has been taking pieces from Nagios’ cake for a long time. There are many doubts that start to arise when it comes to choosing the ideal monitoring tool for an installation, and this is precisely the reason we’ve gotten down to work today to analyze both these systems in depth. As was expected, we also brought Pandora FMS into this comparative, for perspective purposes.
我们知道,当今许多企业安装使用Nagios作为其网络、系统和应用程序的主要监控系统。另外,正如我们在有关最佳网络监视工具的文章中所提到的,Zabbix长期以来一直在Nagios的蛋糕中分食。在为选择安装理想的监视工具时,往往开始时会出现许多困惑,而这正是我们今天开始深入分析这两个系统的原因。正如预期的那样,我们还将Pandora FMS引入到这个比较中,以供参考。
https://pandorafms.com/blog/network-monitoring-tools/
ZABBIX VS NAGIOS VS PANDORA FMS : The global picture
ZABBIX VS NAGIOS VS PANDORA FMS : 全景图
Before going ahead we show you the result of our analysis from a global point of view. If you want to go into detail, please keep reading.
不必翻译了,应该能看懂吧,来看全景图吧 :)
Nagios is considered by some -mainly those that have spent some time in the IT world- to be the “industry standard” when it comes to Open Source monitoring. And, it’s somewhat true, because they were the first to actually get it right. Before Nagios, there were tools, but they were so amateur or so focused on specific tasks, that they were not even close to the innovation Nagios brought in.
当涉及到开源监视时,Nagios被一些人(主要是那些在IT领域工作过一段时间的人)认为是“行业标准”。这在某种程度上是正确的,因为他们是第一个吃螃蟹的人,并且还选对了。在Nagios之前,有一些工具,但是它们太业余了,或者只专注于特定任务,以至于它们甚至都不能接近Nagios带来的创新。
The first version of Nagios was introduced last century: 1999. It’s been 17 years and technology has come a long way, Nagios has kept up by creating an “addon” ecosystem or third party complements that try to compensate the lack of features.
Nagios的第一个版本是在上个世纪(1999年)推出的。距今已有17年,技术已经有了长足的进步,Nagios通过创建一个“插件”生态系统或第三方补充来弥补功能的不足。
Zabbix comes along in 2001. It’s a full-blown development, not a simple Nagios fork, and it’s main characteristic is that it has a very wholistic view on monitoring. It covers performance, not only statuses, which is one of the most significant lacks in Nagios. Apart from having a WEB management system that allows central management, without the pesky configuration files, like the ones Nagios needs.
Zabbix于2001年问世。它是一个成熟的开发,而不是简单的Nagios分支,它的主要特征是它对监控具有非常全面的视角。它涵盖了性能,而不仅是状态,这恰是Nagios最严重的不足之一。除了拥有允许集中管理的WEB管理系统之外,还没有Nagios需要的麻烦的配置文件。
Pandora FMS is born in 2004. Just like Zabbix, it’s entirely developed from the ground up. It’s main feature is the fact that it’s more than just an IT monitoring system, it’s a monitoring framework which allows anything from infrastructure monitoring (networks and servers) to performance and application monitoring (APM), and even transactional business monitoring (BAM). Just like other modern systems it has a central management system and it’s based on a relational SQL database. Just like Nagios, it has an “Enterprise” edition, but its Open Source version is more than enough to implement any monitoring need. Neither Nagios nor Pandora FMS are “limited” versions like other manufacturers do for their free of cost editions, rather they’re just missing a few features that are aimed toward larger environments.
Pandora FMS诞生于2004年。就像Zabbix一样,它完全是从零开始开发的。它的主要特性是它不仅是一个IT监控系统,更是一个监控框架,它允许从基础设施监视(网络和服务器)到性能和应用程序监控(APM),甚至事务性业务监控(BAM)。就像其他现代系统一样,它具有一个中央管理系统,并且它基于关系型SQL数据库。与Nagios一样,它也有一个“企业”版本,但是它的开源版本足以实现任何监控需求。Nagios和Pandora FMS都不是其他制造商的免费版本那样是“有限”的版本,它们只是缺少一些针对更大环境的功能。
Management and Setup
Here is where we can see the most significant differences among these systems. No one doubts that Zabbix has a web based management interface which is centralized through their database, just like Pandora FMS. Nagios, nevertheless, is still stuck to the 90’s and is still managed in thousands of places through a complex pleiad of interlaced text files, scripts and manual procedures that also make it necessary to use third party tools for its deployment, like Chef or Puppet.
在这里,我们可以看到这些系统之间最显着的差异。毫无疑问,就像Pandora FMS一样,Zabbix具有一个Web的管理界面,该界面通过其数据库进行集中管理。尽管如此,Nagios仍然停留在90年代,仍然通过复杂的交错文本文件,脚本和手动程序在数千个地方进行管理,这也使得必须使用第三方工具(例如Chef或Puppet)进行部署。
This has (or had) the advantage that Nagios, since it doesn’t use a database to store information, needs less resources. But, nowadays the bottleneck is no longer the hardware, it’s the capability to efficiently manage configuration, and Nagios is the opposite of easy in this aspect. The difficulty in management makes it so that more than just having Nagios installed, you have an entire team dedicated to managin Nagios, meaning that the software on its own, without a team of people, cannot be exploited correctly.
这具有(或具有)Nagios的优点,因为它不使用数据库来存储信息,因此需要较少的资源。但是,如今瓶颈不再是硬件,而是有效管理配置的能力,而Nagios在这方面是简单的反面(复杂)。由于管理上的困难,因此,不仅仅是安装Nagios,您还有整个团队专门负责Nagios的管理。这意味着软件本身,如果没有一个团队,就不能被正确地运维好软件。
Nagios (and some of its newer forks like Naemon) still use CGIs written in C. This technology was invented back in the 80’s, and not that it’s bad technology (it’s actually fast and very solid) but it makes it complicated to expand or improve on. It implies that in order to make a simple change it’s necessary to patch the monolithic architecture code and manually compile. Let’s remember that the Nagios ecosystem is based on hundreds of different patches for different versions of each Fork. It’s literally a bazaar. Let’s bear in mind that Nagios’ configuration is based on text files, each time a change is made, a reset is necessary.
Nagios(以及它的一些较新的分支,如Naemon)仍然使用用C编写的CGIs。这项技术是在80年代发明的,并不是说它是一项糟糕的技术(实际上它既快速又非常坚固),但是使其扩展或改进变得很复杂。这意味着为了进行简单的更改,需要对整体架构代码进行打补丁并手动编译。让我们记住,Nagios生态系统是基于每个Fork的不同版本的数百个不同补丁的。这简直就是一个集市。让我们记住,Nagios的配置是基于文本文件,每次进行更改时,都需要进行重置。
If Nagios was the bazaar paradigm, Zabbix and Pandora FMS are the exact opposite: the cathedral. They’re solid projects with a complex and modular architecture, that has grown throughout time with a design directed by the team of architects itself. Neither Zabbix nor Pandora FMS have forks. Both Nagios and Pandora do have “Enterprise” versions. Zabbix doesn’t. The Zabbix model seems to be based on support and implantation services, along with technical formation.
如果说Nagios是集市的范例,那么Zabbix和Pandora FMS则恰好相反:大教堂模式。它们是具有复杂和模块化架构的可靠项目,在架构师团队的指导下不断发展。Zabbix和Pandora FMS都没有forks。Nagios和Pandora都具有“企业”版本。Zabbix没有。Zabbix模型似乎是基于支持和植入服务,以及技术组成。
We compared Zabbix vs. Nagios vs. Pandora FMS regarding plugins and “out of the box” monitoring
我们比较了Zabbix,Nagios,Pandora FMS在插件和“开箱即用”方面的监控
Zabbix and Nagios both need installing a lot of plugins in order for them to be efficient and offer a series of complete features. Zabbix, on the other hand, doesn’t have an “official” plugin library for the community, although it does have a list of OIDs for SNMP queries. Furthermore, it doesn’t offer the possibility to work with Enterprise tools such as Oracle, Exchange, Active Directory, and others in the core.
Zabbix和Nagios都需要安装大量的插件来提高效率并提供一系列完整的功能。另一方面,Zabbix没有针对社区的“官方”插件库,尽管它确实具有用于SNMP查询的OID列表。此外,它不提供使用企业工具(如Oracle,Exchange,Active Directory和其他核心工具)工作的可能性。
Nagios has a huge library, but it’s low on maintenance since all the plugins are 100% open source and there’s not a company to back it up or take care of them.
Nagios有一个巨大的库,但是它的维护成本很低,因为所有插件都是100%开源的,而且没有一家公司来支持或维护它们。
Pandora has a smaller library than that of Nagios (it doesn’t even reach 500 plugins) but it’s maintained by a company and disregarding the fact that some of those plugins are “Enterprise” (under paid licensing) it’s all very focused to “real” daily products, and not exclusively toward open technology. Pandora FMS, also in its Open Source version, has a default collection of plugins and modules that are “plug and play, ready to use” meant for simpler tasks, both with agents and remote checks. It also includes an SNMP explorer and a set of SNMP and WMI wizards to remotely monitor network devices and servers.
Pandora的库比Nagios的库小(它甚至没有达到500个插件),但是它是由一家公司维护的,并且不考虑其中的某些插件是“ Enterprise”(在付费许可下)的事实。所有插件都非常注重“真正的”日常产品,而不是专门针对开放技术本身。Pandora FMS,也是其开源版本,它具有默认的插件和模块集合,这些插件和模块“即插即用,随时可用”,旨在通过代理和远程检查实现更简单的任务。它还包括一个SNMP explorer以及一组SNMP和WMI向导,用于远程监视网络设备和服务器。
Zabbix has a powerful template and trigger definition system based on regular expressions. It’s quite powerful, yet at the same time complex in use: only meant for people who are capable of understanding regular expressions. In Nagios there is nothing of the sort -in its Open version at least- and for Pandora FMS it’s been replaced by screens and wizards on its WEB interface which are much friendlier to use.
Zabbix具有基于正则表达式的强大模板和触发器定义系统。它功能强大,但同时使用起来很复杂:仅适用于能够理解正则表达式的人。在Nagios中没有这样的东西-至少在它的开放版本中如此-对于Pandora FMS来说,它已经被WEB界面上的更加友好的屏幕和向导替代。
In order to monitor with Nagios, it’s necessary to become accustomed to deal with hundreds of custom scripts, that, when made by another person, almost become some sort of black magic. It’s very complicated for multiple persons to manage it. In the end Nagios ends up being a strange mix between software and custom development.
为了使用Nagios进行监控,有必要习惯于处理数百个自定义脚本,而当这些脚本由另一个人编写时,几乎会变成某种黑魔法。对很多人来说,管理它是非常复杂的。最终,Nagios成为了软件与定制开发之间的奇怪组合。
In order to correctly use Nagios, you don’t need only Nagios, but also four or five community “addons” (check_mk, HighCharts, OMD, NRPE, NSCA, ndoutils, thruk, nagvis), apart from other complete complex projects (such as puppet), in order to manage configurations and, of course, thousands of self made script lines. Zabbix and Pandora FMS are autonomous in this sense.
为了正确地使用Nagios,您不仅需要Nagios,而且还需要四五个社区“插件”(check_mk、HighCharts、OMD、NRPE、NSCA、ndoutils、thruk、nagvis),以及其他完整复杂的项目(如puppet),以便管理配置,当然,还需要管理数千个自定义脚本行。Zabbix和Pandora FMS在这种意义上是自主的。
We also compared these three based on their respective communities
社区比较
The biggest community belongs to Nagios, simply because it was first dibs in this terrain. As a matter of fact, Nagios has an almost infinite amount of forks: OpsView, OP5, Centreon, Icinga, Naemon, Shinken, and the list goes on. This implies a chaotic ecosystem when it comes to applying plugins or tools that can be crossed over from one another. Each branch has a different philosophy and with time this makes it totally incompatible with other branches and with the fathering project (Nagios).
最大的社区属于 Nagios,原因很简单,因为它是这个领域的第一个用户。实际上,Nagios拥有几乎无限数量的fork:OpsView,OP5,Centreon,Icinga,Naemon,Shinken等等。这意味着在应用插件或工具时,会出现一个混乱的生态系统。每个分支都有不同的理念,随着时间的推移,这使得它与其他分支以及父项目(Nagios)完全不兼容。
We compared Zabbix, Nagios and Pandora regarding their reports
比较了Zabbix,Nagios和Pandora的报告
Zabbix, Nagios and Pandora all have the concept of a “Customizable user screen”. On Nagios a plugin with its own entity is needed (nagvis) but on Zabbix and Pandora, this is prebuilt. Now, we can definitely obtain the best visual results with Pandora FMS:
Zabbix,Nagios和Pandora都具有“可自定义的用户屏幕”的概念。在Nagios上,需要一个具有自己实体的插件(nagvis),但是在Zabbix和Pandora上,这是预先构建的。现在,我们绝对可以使用Pandora FMS获得最佳的视觉效果:
Pandora
Zabbix
The reports that Nagios can generate are quite poor. Zabbix improves on this a little, but the concept of report understand as something to “turn in to a customer or boss”, is only available on Pandora. Even in its “free” version, it has a very powerful report generator that allows for a lot of customization, much more than those on Zabbix or Nagios.
Nagios可以生成的报告非常差。Zabbix对此做了一些改进,但是报表的概念可以理解为“向客户或老板汇报”,这种概念只在Pandora上可用。即使在其“免费”版本中,它也具有非常强大的报告生成器,该报告生成器可以进行很多自定义,比Zabbix或Nagios上的要多得多。
Pandora FMS
Zabbix
Nagios
We compared the visual graphs for all three as well
我们还比较了所有三个图表
Nagios historically has needed third party plugins to perform this task. On recent forks it’s been included by default, but they’re still graphs oriented to communications, with little margin for custom features. Nagios and graphs have always had a “complicated” relationship, considering the origin of Nagios was meant for event management, not data management.
Nagios历来需要第三方插件来执行此任务。在最近的Fork中,默认情况下已将其包括在内,但它们仍然是面向通信的图形,几乎没有自定义定制特性的余地。考虑到Nagios的起源是用于事件管理,而不是数据管理,因此Nagios和图形始终具有“复杂”的关系。
Zabbix has its own graphs, but the graphs on Pandora are generated in real time from the database, which allows the data to be used for combined graphs, scale changes, and custom colors, sizes and graph keys, in a way that they become an active part of the information, not only a technical graph, but also part of a complete report.
Zabbix拥有自己的图形,但是Pandora上的图形是从数据库实时生成的,数据可以被用于组合图形、比例更改、自定义颜色,大小和图形键,从而使它们成为一个活跃的信息部分,不仅是技术图表,而且也是完整报告的一部分。
Nagios XI (Enterprise – Paid version)
(updated 08/08/2016)
Answering Willem comments we are happy to update this section adding an screen of the Nagios graphs using Highcharts.
回答威廉(Willem)的评论,我们很高兴通过使用Highcharts添加Nagios图的屏幕来更新本节。
Zabbix
Pandora FMS (OpenSource)
Agent Comparison
代理商比较
Although some people consider that agent-based monitoring technology is “demodé” or outdated, the truth is that very large manufacturers (CA, HP, IBM) sometimes mask their remote technology making them seem like something 100% agentless, when what they’re actually doing is copying an agent, running it, and then deleting it. For many monitoring tasks an agent is still a necessary element on the device. Nagios has many (NRPE, NCPA, NRDP, and others) that like most other things on Nagios, are meant to be quite DIY. On many occasions this leads to a lack of maintenance or to some of them being outdated. The fact that there are different agents for a single platform is very consisten with the Nagios mindset. Zabbix also has many more complex features “built in” to the agent itself, such as native event gathering (using an API that comes from Windows NT4 and ensures compatibility and speed, nothing like WMI methods), inventory gathering, service and process watchdog, real time log gathering for process and service downtimes, native user interface for WMI, registry for parameters from the performance counter, integrated network checks on the agent, and many other features that cannot be applied through “scripts” or commands since they mean that the agent has to work on a low level, instead of at user level.
尽管有些人认为基于代理的监控技术是过时的,但事实是,非常大的制造商(CA,HP,IBM)有时会掩盖他们的远程技术,使它们看起来像是100%无代理的,而实际上他们所做的是复制代理,运行它,然后将其删除。对于许多监控任务,代理仍然是设备上的必需元素。Nagios有很多(NRPE,NCPA,NRDP等),就像Nagios上的大多数其他东西一样,它们本来应该是DIY的。在许多情况下,这会导致缺乏维护或其中一些已经过时。Nagios的思维模式,非常符合单个平台有不同代理的事实。Zabbix还具有许多“内置”于代理程序本身的复杂功能,例如本地事件收集(使用Windows NT4提供的API并确保兼容性和速度,不像WMI方法),清单收集,服务和流程监控,用于处理和服务停机的实时日志收集,本地用户界面WMI,注册表性能计数器参数计数器,代理上集成网络检查,以及许多其他无法通过“脚本”或命令应用的功能,因为它们意味着代理必须在较低的级别上工作,而不是在用户级别上工作。
Last but not least: Scalability
最后但并非最不重要的:可伸缩性
It’s not easier knowing “who’s got the bigger one” in this case, but if we refer to public success stories published on each respective webiste, the most complex project taken on by a customer that has exposed a case with numbers and measurements is that of Rakuten from Japan. They use Pandora FMS to monitor almost 10,000 nodes. Pandora FMS has unknown installations that use the Open Source edition with over 30,000 nodes monitored, and theoretically with distributed architecture included in version 6.0 -on the Enterprise edition- you can reach a million nodes. In the official documentation for Pandora FMS the recommended numbers offered are 3,000 agents per server.
在这种情况下,要知道“谁做得更大”并不容易,但是如果我们参考每个网站上发布的公共成功案例,展示的最复杂的项目是来自日本的乐天(Rakuten)。他们使用Pandora FMS来监控近10,000个节点。Pandora FMS有一些未知的安装,这些安装使用的是开源版本,有超过30,000个节点被监控,而且从理论上讲,企业版本的6.0中包含分布式架构-在企业版中,您可以达到一百万个节点。在Pandora FMS的官方文档中,建议的数量是每台服务器3,000个代理。
Nagios has a wide array of ways, each more artisanal than the next, to offer distributed monitoring. Zabbix and Pandora adopt a similar model, although Pandora has a specific product (its Metaconsole) for distributed, complex and large environments.
Nagios有各种各样的方法来提供分布式监视,每种方法比下一种更为手工。尽管Pandora拥有针对分布式,复杂和大型环境的特定产品(其Metaconsole),但Zabbix和Pandora采用了类似的模型。
With this we hope you can get an idea of the advantages and disadvantages for these three monitoring systems.
希望借此,您可以了解这三个监视系统的优缺点。
原文地址:https://pandorafms.com/blog/zabbix-vs-nagios-vs-pandorafms-an-in-depth-comparison/ 翻译者:Jean-Christophe