This is the second part of our ongoing review of Linux monitoring tools you're likely to encounter in the market. Follow this link for the first article we posted on the subject.
In this review, we'll be going over monitoring software that tends to focus on network monitoring primarily. Let's start with:
Nagios, along with Icinga which was developed on top of Nagios code, are free monitoring tools that let you monitor processes related to network protocols SMTP, SNMP, POP3, HTTP, ICMP, NNTP, as well as the status of hosts and general system resources. Both software allow for plugins that expand their function set, and are pretty easy to install. Both Nagios and Icinga have web interfaces, but Icinga is miles ahead in accessability. Both are also compatable with MySQL, Oracle RDBMS, PostgreSQL.
Using these programs to monitor servers remotely requires their agent to be installed on the target server. The web UI then connects to the agents, and lets you check the server directly, or recieve notifications by email or sms.
Icinga has a completely reworked scaling method, which allows it to connect to, and monitor, multiple hosts; this is its main distinguishing factor from Nagios. Icigna also has the capacity to generate reports and graphs based on the monitoring data it collects. The biggest drawback to Icinga is probably how complex the initial setup is. Once you get through it, and get used to the system, it really is one of the most versatile systems out there.
Zabbix is another network monitoring system that's also compatable with SQLite, MySQL, PostgreSQL and Oracle RDBMS, and is distributed using GPL open license. Zabbix is one of the more popular monitoring solutions out there, due to it's relatively simple setup and its flexibility with hosts configurations through its browser UI. It also supports Windows hosts connecting through SNMP.
It's quite a bit easier to use than Nagios or Icinga; adding new hosts is a breeze as you just need to add the address of the server you're monitoring to the agent's configuration file. It can also generate graphs and reports, which is always a great feature to have. However, the downside is that it uses a single database that doesn't scale all that well.
There's a nice collection of utilites out there that go by the name RRDtool that's used in cyclical database structures. It also serves as a base on top of which you can install a range of monitoring tools, among which we have Munin, Cacti, MRTG, and Ganglia. Cyclical databases lend themselves very well to monitoring systems as well as graphing data. These utilities are great in systems where you need up-to-the-second updates on your server performance; things like RAM and CPU usage, as well as operating temperature. The difference between these utilites and the previous ones we wrote about, is that these are written in different languages that might differ from each other and from the base software they run alongside with; this makes low level operations a bit more complicated.
Monit is unique from the previously mentioned software, doesn't require you to configure your server to use it. It can be installed on the target server and, whether you're monitoring one or several servers, this is generally the best solution. There's also an option for centralized monitoring of several servers from one, thought it's pretty limited in it's free version. When Monit was being developed, Systemd wasn't around yet; and now that it is it kind of renders some of Monit's functionality obsolete. Nevertheless, it's a great free tool for monitoring servers.
Netdata is a utility used primarily for real time system monitoring. It has a very appealing UI with a wide range of trackable metrics. Just like Monit, it has to be installed on every server you need to track. Netdata tracks server resource usage, net traffic, requests by specific protocols, etc. You can also set trigger points which can send out notifications when hit. Netdata is a pretty recent project, but it's growing quickly; and not in the least because of its very simple setup and use.
That's about wraps it up for our review of the most popular network monitoring solutions out there. Follow us on Twitter and Facebook to be the first to know when we publish Part III of this review!
Until next time!