You may have been involved in the design and implementation of a network or maybe you came onboard after the network had been built. No matter the case, one thing that becomes quickly apparent is that there is a need to make sure the network is operating as it should and one of the ways to ensure that is Monitoring.
Network Monitoring gives administrators a clear view of the devices, services, applications running on their network and the opportunity to track the availability/performance of these resources. This provides proactive management rather than reacting to issues as they happen.
Here’s a List of the Top Open-Source Network Monitoring Tools:
While it is possible to manually monitor a network (depending on the size of the network and how critical the resources on the network are), you will probably be better off using tools specifically designed for such a purpose.
Generally speaking, there are a couple of things that network monitoring tools will/should provide for you:
- Configuration: At the minimum, the network monitoring tool will provide a way to add the hosts and services to be monitored.
- Status reports: The tool should provide a means of viewing the status of monitored resources e.g. availability (up/down status), CPU usage, etc.
- Alerts and notifications: Some tools are able to send alerts when an event occurs. Alerts could be sent via SMS, Email, etc.
- Graphs: Knowing the current status of a resource is good but even more beneficial is being able to see that status over time. Such information is best displayed in graphs and most monitoring tools provide various graphs for monitored parameters.
- Reports: Reports are not only important for administrators but also for management. Different tools have varying level of reporting capability.
Network monitoring tools can be categorized in several ways, from those that only work on Windows systems to those that require a paid license to operate. For the purposes of this article, we will focus on open source (usually free) network monitoring tools that operate on Linux/Unix systems, although some of them have Windows versions available. We will be discussing some of the most widely used tools in the monitoring domain, looking at their characteristics and comparisons, to help you make a decision on which one is best for you.
1. Nagios Core (FREE)
The best way to describe Nagios is the grandfather of network monitoring because it has been around for so long (18 years). In fact, the company behind Nagios calls it the “Industry Standard In IT Infrastructure Monitoring”.
Note: Nagios comes in two flavours: Nagios Core (which is free and open source) and Nagios XI (paid Enterprise edition). Since this article is about open source network monitoring tools, we will focus on Nagios Core.
By default, all the configuration (e.g. adding hosts and services to be monitored) for Nagios is done through text files. This can take some time to get used to resulting in a steep learning curve and thus, reduces its attractiveness to new users. However, once you get past that and become familiar with the system, you can unlock the great power available in Nagios.
Out of the box, Nagios is not great – text-based configuration coupled with an outdated web interface (for monitoring). However, the numerous plugins and scripts available for Nagios makes it highly customizable. For example, Adagios is a web based configuration interface for Nagios. It also has a large community base meaning that you are likely to find the answer to your question or a plugin that already does what you need.
Considering that Nagios is the most-popular open-source monitoring platform, it also has a Virtual Appliance for those looking to deply as a VM.
You can find more information about Nagios on their site: https://www.nagios.org/
Zabbix is a strong contender of Nagios. Even though they started later than Nagios, interest for Zabbix has steadily increased over time. This is probably because Zabbix is generally easier to manage than Nagios – out of the box, Zabbix already provides many of the features that you will need plugins for in Nagios.
Configuration on Zabbix is done through a web interface that is definitely better than the default web interface provided by Nagios. There are also monitoring templates available through this web interface which make setting up monitoring easier and quicker. Zabbix also has an Auto-discovery feature which is especially useful on large networks. Finally, graphs are natively supported in Zabbix unlike on Nagios.
Unlike Nagios, Zabbix is all free – there is no separate Enterprise edition. However, the folks at Zabbix offer several paid support services.
To learn more about Zabbix and download this tool, visit their site: http://www.zabbix.com/
Icinga started off as a fork (branched out development) of Nagios. According to those who decided to branch out, they wanted to add more functionality to Nagios Core than the owner of Nagios Core was willing to accommodate and at the same time, do this faster.
As such, Icinga 1 was born. The team worked on a better user interface, added support for more databases (Oracle, PostgreSQL) and made it easier to extend the Core. Interestingly, Icinga 1 is compatible with Nagios and all Nagios plugins. However, a couple of years ago, Icinga 2 was released and in this version, the team completely rewrote the core (bye Nagios Core) in a bid to make configuration less complicated and also address scalability issues.
Icinga has a nice and responsive web interface although configuration is still done through text files (except you use a plugin). The fact that you still have to use text-based configuration files coupled with the robustness of Icinga, means that there is also a steep learning curve for Icinga as with Nagios. On the plus side, Icinga has very detailed documentation to help you along the way.
To learn more about Icinga, visit their site: https://www.icinga.com/
They also have an online demo that you can play around with.
I was initially going to write about Observium; however, several users have complained about the less than par support they received from the guys at Observium. Therefore, I decided to go with LibreNMS which is a fork of Observium and also provides awesome graphs (which is one thing I really like about Observium).
One of the differences between LibreNMS and the other tools we have highlighted in this article is that LibreNMS is based on SNMP which means that devices to be monitored must have SNMP agents installed/enabled on them. This makes LibreNMS quite suitable for devices like routers (Cisco and other brands), switches and firewalls.
Configuration on LibreNMS can be done either through the command line interface or through the web interface. Unlike the community version of Observium, alerting is available by default in LibreNMS, making it a full fledged network monitoring solution.
You can learn more about LibreNMS here: http://www.librenms.org/
There is also a live demo available for you to try out before installing.
5. Pandora FMS
Pandora FMS community edition has the ability to monitor and manage many facets of your network infrastructure, including Bandwidth usage/monitoring of Switches, Routers, Modem’s and other gateway and network devices. On top of just monitoring bandwidth usage, Pandora offers a server monitoring solution with their wide-array of plugins for popular programs and systems including Microsoft Exchange Server, Oracle, Tomcat, JMV, JBOX, IIS, and SPA/R3 systems.
They even boast software agents for Android platforms as well. According to their website, Pandora can also scale beyond 10,000 Servers using the Community edition without the need for the enterprise, paid version.
Along with their wide array and support of systems/software they can monitor, Pandora offers a robust Alerting and Notification system. Alerts and notifications can be configured using SMS, Online Applications (including Slack, Jabber, etc), Email, Syslog, and custom scripts.
You can learn more about Pandora FMS Community at their official website here: https://pandorafms.org/en/
In this article, we have looked at several open source network monitoring tools including Nagios, Zabbix, Icinga, LibreNMS, and Pandora FMS. Just because we focused on these tools as the “best” does not necessarily mean they are the best for your need. For example, there are many other open source monitoring tools that exist such as OpenNMS, Cacti, and Zennos and you have to consider the benefits of each one from the perspective of your requirement.
Moreover, there are other tools that may be better suited for your need that are not open source. For example, PRTG Network Monitor is a simple to use network monitoring tool and is free for up to 100 sensors.
Solarwinds Network Performance Monitor is another Great monitoring tool that has a large community behind it and has updates almost every year. We prefer to stick with paid monitoring solutions, as issues and problems do arise from time to time with configuration and other issues – So having a support team that stands behind their product really makes all the differences for businesses who need a complete monitoring solution.
In summary, consider your needs before choosing a network monitoring solution. If you are familiar with Linux/Unix and need a highly configurable solution, perhaps you should consider Nagios. If you want Nagios level of customization but with a better web interface, look at Zabbix or Icinga. If your network relies heavily on SNMP, then consider LibreNMS.