監控系統:深度對比Zabbix、Nagios、Pandora FMS

工匠小豬豬的技術世界發表於2022-12-05

首先Jean-Christophe,也就是我分享一句很有意思的話,這是在一個QQ群看到的

“我入坑監控的時候已經是Prometheus了,我都沒經歷過Zabbix的時代”

那麼在Prometheus之前,歷史上的監控系統都是怎樣的呢?今天,就讓我們一起來了解Ganglia、Zabbix、Nagios、Pandora FMS、Open-falcon、Prometheus的那些事兒~

監控系統:深度對比Zabbix、Nagios、Pandora FMS

監控系統:深度對比Zabbix、Nagios、Pandora FMS

監控系統:深度對比Zabbix、Nagios、Pandora FMS

監控系統:深度對比Zabbix、Nagios、Pandora FMS


如果圖片看不清,點選雙手摸摸大

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.

不必翻譯了,應該能看懂吧,來看全景圖吧 :)

監控系統:深度對比Zabbix、Nagios、Pandora FMS

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、Nagios、Pandora FMS

Zabbix

監控系統:深度對比Zabbix、Nagios、Pandora FMS

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、Pandora FMS

Zabbix

監控系統:深度對比Zabbix、Nagios、Pandora FMS

Nagios

監控系統:深度對比Zabbix、Nagios、Pandora FMS

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)

監控系統:深度對比Zabbix、Nagios、Pandora FMS

(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、Nagios、Pandora FMS

Zabbix監控系統:深度對比Zabbix、Nagios、Pandora FMS

Pandora FMS (OpenSource)

監控系統:深度對比Zabbix、Nagios、Pandora FMS

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

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31555484/viewspace-2665940/,如需轉載,請註明出處,否則將追究法律責任。

相關文章