Comparison of monitoring systems Zabbix and PRTG Network Monitor

  • Published In: Tutorial
  • Created Date: 2014-09-02
  • Hits: 3813

In this article we will examine Zabbix 2.2 and PRTG Network Monitor 14.3 from the point of view of features of each system and its installing, adjusting and using difficulties.

Any administrator, who is in charge of maintenance of a network and information systems, always faces an issue of monitoring the entire infrastructure. Earlier such issues were solved by writing bat or shell scripts, which work according to a schedule and send diagnostic results via an email. Such approach has a number of obvious disadvantages:

  1. Programming skills: despite the fact that most system administrators are capable of writing scenarios in Perl, Python, Shell and PowerShell languages, writing such a script can become the first tough problem for an administrator (especially young and inexperienced) to overcome necessarily. As a result, a lot of time will be lost on learning scenarios language.
  2. Deployment difficulties: when there are less than 10 servers in a responsibility area, it is not a big deal to transfer a scenario on each machine and run them according to a schedule. But what to do with 20 servers? 50 servers? 100 servers?
  3. Bunch of technologies: one thing is when an infrastructure is totally built on Linux-systems or on Microsoft Windows family systems. Another one is when a company has a domain controller, realized on Microsoft Windows Server, a file storage on Freebsd and an email server Postfix on CentOS at the same time. In this case an administrator needs to develop different scenarios for each OS, which solve the same problem.

Difficulties in solving an issue of monitoring have led to creating separate monitoring systems both vendor ones (for example, Oracle Enterprise Manager), and open source ones (Zabbix) as well as commercial solutions (PRTG, Nagios).

In this article we will examine Zabbix 2.2 and PRTG Network Monitor 14.3 from the point of view of features of each system and its installing, adjusting and using difficulties.

A Brief Products Overview:

Zabbix is an open source enterprise solution (according to an information at the official web site), which can fulfill a complex monitoring of an infrastructure (servers, network devices and virtual machines), represent received information in a form of diagrams, watch a device load and performance using own agents (which are supported by almost all operating systems).
PRTG solution is oriented on a network monitoring (network devices, interfaces, data transfer channels), which is clearly descried at its web site. The solution doesn't need installing agents on monitoring objects and uses standard protocols and technologies ICMP, SNMP, Packet Sniffing, NetFlow, etc. A concept of "sensor" is often used in PRTG. In this case, a network service, which is on different levels of OSI model, is a sensor (a port of equipment can be monitored as well as an operation of HTTP, POP/SMTP).

Both monitoring systems have a possibility to send notifications about incidents via an email or an SMS, and can work both through http and https (an extremely important feature, if a monitoring system has an Internet access.

It is necessary to indicate that PRTG is developed for network monitoring as well as everything connected to it (as said at a developer's web site), while Zabbix is oriented on an entire infrastructure. 

To make an experiment clear, I will use both solutions for the same issue: network and servers monitoring.

Requirements

To start with, there is a need to take into consideration that Zabbix, as a free software product, is totally free and does not require any fees for its functionality. What about PRTG, there are two ways of its use, offered at a product web site (except a free trial period): a paid license and a free one, limited to 10 sensors. Let's see system requirements for both products and compare them.

According to official web sites of these products, it is difficult to understand their rough requirements. You are free to see this for yourself going to the links: http://www.zabbix.com/requirements.php and http://www.paessler.com/prtg/requirements

Zabbix

According to a decision of Zabbix, only supported operating systems are indicated in system requirements, which makes it difficult to conclude how many cores and RAM will be necessary to separate out for a virtual machine or a server of what performance should be purchased.

In addition, it is indicated at a product web site, that Zabbix needs Apache, MySQL, PHP for its operation. Therefore the requirements should be defined using necessary resources for a web server Apache and a DBMS MySQL as well. Though, installation documentation indicates approximate requirements for a certain amount of monitoring objects. 

PRTG

At the same time PRTG solution tells: «A PC, server or virtual machine with roughly the CPU performance of an average PC built in the year 2007 or better and minimum 1024 MB RAM memory.»

Nevertheless, PRTG has a detailed description of system requirements, which can be referred to. It is shown there that:

  1. Any Microsoft Windows OS newer than Windows 7 / Windows Server 2008 will be suitable for a core of a monitoring system.
  2. A processor of a "middle-class PC, made in 2007", will be able to easily monitor 1000 sensors/
  3. Operating memory – 1024 MB is a minimum. Each sensor needs 150 KB.
  4. HDD – 200 KB for a sensor each day.
  5. A stable Internet connection.

I will be installing both solutions on a virtual machine on a basis of Oracle Virtual Box with the next specifications: 1 CPU, 2048 Memory, 20 Gb HDD VDI. For Zabbix CentOS 6.5 x86_64 versions will be used, as well as Windows 7 Professional 64 bit for PRTG.

Installation

Zabbix

As said above, we need a LAMP server for the installation. Packages are installed from standard CentOS repositories, a package Zabbix is received from official repository as well.
I cannot say that installing Zabbix is simple; however a skilled linux-administrator will easily install it. Technical writers of the project are worth a big thank you for a detailed installation guide. Thanks to it an installation goes flawlessly step by step. To begin with, a repository Zabbix is connected, from where it is possible to get necessary packages even for LAMP, then a MySQL DB is configured, and finally, Zabbix server configuration file is edited.

An installation was held through SSH by basic commands yum and rpm. The entire installation of this solution together with MySQL DB configuration, monitoring system parameters and a web server took me about 30 minutes.

Afterwards I saw a desired window in my browser:


An additional convenience is provided by a web interface of the application. If any settings were not fulfilled, the system will tell you this.

PRTG Network Monitor

On a web site of this solution it is indicated that an installation is simple and takes 2 minutes. Taking into account peculiarities of applications installation in MS Windows environment, there is no doubt in its simplicity. However, is it really going to take 2 minutes?

Having downloaded a distribution from the official web site and having got a license key, I started the installation. There is a need to add that a developer said the truth. After clicking Next – Next – Next – entering the license – Next, nearly 2 minutes passed, afterwards a system told me that I had an old version of a browser. 

After restarting, PRTG offered to scan my network using GURU.

Let’s try this.

Really, GURU started to go through a network studying its segments. After having all parameters set, a dashboard appeared on a screen:

Work with Monitoring

Zabbix



Obviously, there is a need to configure a lot of things. On default, Zabbix monitors itself, and the rest can be added both manually and using autodiscovery. However, for doing this you need to install agents on monitoring objects. On the other hand, it is possible to monitor with the help of SNMP. 

Agents are installed with no hassle (either through a linux repository or from an official web site for windows). In the configuration, a Zabbix server address is indicated, afterwards we should start adding a host:

A window of adding an object under monitoring.

During setting up, I was asked to adjust an agent interface or perform a monitoring using other protocols – a choice is given to an administrator, but there is a need to take into account that using an agent decreases a load on a Zabbix server.

Zabbix is rich on a standard set of monitoring patterns. When adding an object, it is possible to link necessary patterns to it and start monitoring.

The next peculiarities of Zabbix are worth a particular attention:

Patterns – besides standard ones, it is possible to add and develop your own ones for the tasks that cannot be solved “out of the box”

1. Scenarios – it is possible to execute commands from scenarios on a particular host

2. A map – Zabbix has a possibility to “draw” a network map to visualize equipment dependencies one from another.

A map – Zabbix has a possibility to “draw” a network map to visualize equipment dependencies one from another.

In general, Zabbix completely justifies a name of an enterprise-product: it has a rich set of functions “out of the box” as well as a possibility to adjust any pattern or a scenario. All these features make Zabbix a very powerful tool for an engineer.

PRTG Network Monitor

When logging into a system, a user will see a standard dashboard with a tree structure, where on default will be added a host of a monitoring system itself. A way of displaying objects can be changed optionally.

Below you can see an appearance of PRTG, when it is stylized as an Oracle Enterprise Manager:

It is not clear for me, how the dimensions are determined, but I think that the amount of sensors for an object influences the size of the rectangle. Objects that work well, are green, objects that are paused are blue, and the objects, which are down, are red. Not adjusted devices are marked in white. Here you can see faults of fonts and layout:

Unfortunately this is a result of displaying a text when objects are shown as circles.

However an administrator will choose a convenient interface himself. We will examine monitoring features. Unlike Zabbix, PRTG does not need installing additional agents. Its basic functionality is realized through using native libraries to work with ICMP, SNMP protocols and others, but this fact does not mean you cannot use third-party libraries to work with external equipment (for instance, NetPing).

Logic hierarchy is standard here: there are groups of objects, there are sensors and there are objects. Owing to autodiscovery features, it is possible to add a group with a certain IP addresses pool, and PRTG will independently scan all addresses from a pool, having adjusted sensors on them.

The objects can be added manually, without using native PRTG means. This is usually necessary in cases when nonstandard ports are used as well as other methods of objects security. A necessary group is assigned for an object, individual sensors and access rights are set.

Access of PRTG users works according to a principle read, write, full. A peculiarity of rights write and full is that write rights can be necessary for developers of libraries (for example, SNMP libraries), who must not see objects under monitoring, and full rights are necessary for system administrators to add/delete/edit objects under monitoring and adjust sensors to them. 

PRTG maps editor is worth a particular attention. Here an administrator can draw a network map indicating interconnection of objects.

All interconnections are created manually, but such method of displaying is convenient when there is a need to show a network infrastructure as well as understand a dependency of one node from another. 

Internet channel load monitoring is represented too with a readable diagram.

Generally, PRTG is able to monitor not only network availability, but also an equipment load. Among sensors there are means of monitoring  DBMS accessibility, web servers and application servers.

Using Monitoring Systems with NetPing Equipment

As for any engineer in charge of the infrastructure, it’s important for me to understand a status of my server room. Here I will use a device UniPing server solution v4/SMS, kindly provided by a NetPing company.

Briefly about hardware: 1-unit UniPing gets information from smoke sensors, humidity sensors, temperature sensors, etc. and is able to transfer it through an Ethernet-interface to monitoring systems. There is a GSM modem inside for SMS notifications as well as a relay for controlling a local indication and alarm, and a possibility to connect to a WiFi network for wireless sensors.

How to Connect UniPing with Zabbix

On a web site of NetPing you can find a guide for adding a NetPing equipment into a Zabbix monitoring system. Despite the fact that Zabbix versions and NetPing equipment in the article and in my experiment are different, this will not become an issue for adjustment. Unlike standard object adding with the use of Zabbix agent, when using NetPing, you will have to use an SNMP v1 protocol to gather data from sensors.

After completing the adjustment I get the information from temperature sensors, what I can see in a diagram. Data, received from a pattern from a NetPing web site:

Temperature diagram on a basis of one of the sensors.

A green stripe on the right at the top shows us a current temperature from a sensor. If it is a server room, then 27 degrees is a little too much. It is an issue for maintenance, though, to ensure a necessary temperature. Our task was to examine a joint operation of Zabbix and NetPing.

How to Connect UniPing with PRTG Network Monitor

At a manufacturer’s web site you can find a detailed instruction of how to get data from UniPing for PRTG monitoring system. Certainly, a guide was written for an older version, but adjusting the latest version of PRTG was not a big deal. An SNMP library for PRTG is downloaded from a manufacturer’s web site and is added to already present ones.

On an output we will get a complete information from a sensor:

A complete information about a temperature, humidity and power supply availability in a server room is exactly the thing I need to know about an environment in a server room.

Advantages/Disadvantages

Zabbix

+

-

A totally free product

A user without administrator’s rights cannot create a complex screen

There is a possibility to create personal scenarios and patterns

Requires installing apache, mysql, php. Operates only in *nix-like systems.

There is a possibility to monitor internal processes in objects


PRTG Network Monitor

+

-

Simple installation. The “2 minutes”, mentioned above, appeared to be a truth.

A paid product.

It is convenient in work, adding sensors and objects is realized on an intuitive level.

Works only in Microsoft Windows environment, which increases a cost of this solution on one license.

Uses native means – there is no need to install any additional software on monitored objects.


In my opinion, both products are good enough to be used in small infrastructures (less than 10 servers, less than 100 work places) as well as in big ones (more than 2000 work places, more than 200 servers).

If my infrastructure has been built totally in Microsoft environment, I would have used PRTG. Despite the fact that the product is paid, it will easily fit the environment, and an availability of applications for a smartphone gave me a chance to look after my responsibility area even out of an office.

However, if I have an issue of complex monitoring of not only infrastructure, but also information systems (such as DBMS, application servers, java-machines, etc.), I will choose Zabbix, as a powerful and, not least, free solution.

An obvious advantage for both systems is a possibility to work with third-party equipment for gathering information from sensors. This is an evident advantage to use NetPing products, which are easily integrated into the solutions described above.


Tags: All devices
comments powered by Disqus