When Linus Torvalds released the first version of his Linux Kernel way back in 1991, nobody thought it would ever grow to what it has become. Today, Linux is everywhere and although it hasn’t made it very far as a mainstream desktop operating system, it is now commonplace on servers. Just like servers running any other operating systems, Linux servers need to be monitored. Today’s IT environments are so big and complex that monitoring tools are almost mandatory. But this post is not just about monitoring Linux servers, it is also about using Linux as a monitoring platform. Some of the best monitoring tools can run on Linux. In fact, some won’t run on anything else. We’ve searched the market for you, looking for the best Linux monitoring software and tools and we’re glad to share the results of our efforts with our readers.
We’ll start off our discussion by briefly talking about Linux, what it is, its history and its current state. Then, we’ll discuss the monitoring of Linux computers. We’ll try to determine if there are any differences between monitoring Linux hosts or computers running other operating systems. Since Linux is a popular platform for monitoring tools, this will be our next topic before we can finally get to the most interesting part, the best Linux monitoring software and tools.
A Word About Linux
Linux, in its most elementary form, is just an operating system kernel. That is the core component of an operating system which provides various services—such as memory, files, and task management—to other processes. By extension, it is the name we commonly give to operating systems based on the kernel but made of several extra modules that make it a complete computer operating system, one that can be used by humans. It is important to understand the difference between the Linux kernel and a Linux operating system. The Linux kernel is used in other operating systems such as Android, the most-used smartphone operating system.
As an operating system, Linux is not, functionally speaking, very different from any others such as Windows or OS X. The main difference between Linux and other popular operating systems is the fact the Linux is an open-source product. Many people tend to confuse open-source and free. It is true that open source software is often free but it is not necessarily the case. For instance, the Red Hat Enterprise Linux OS is not free. To add to the confusion, actors of the open-source movement often refer to open-source software as free software with free implying freedom rather than the absence of cost.
Over the years, Linux, which was one a rather marginal operating system installed by freaks and computer science students—I recall spending weeks downloading it one diskette image at a time over a 1200 baud connection; I guess I was one of those freaks, has grown to be a popular option as a server operating system.
Monitoring Linux, in its most basic expression is very similar to monitoring any other operating system. After all, Linux is an operating system like any other (although it is also unlike any other). And when you consider that typical server monitoring has more to do with the hardware than the operating system, it’s easy to see why it is not too different.
However, the operating system is what monitoring tools use to read the hardware status. Some monitoring tools, for instance, use SNMP to fetch operational metrics from operating systems. Monitoring a Linux system via SNMP requires that the snmpd package is installed and running on it. snmpd is an SNMP agent which sits and waits for requests from SNMP monitoring tools. Upon receiving a request, it processes it, collects the requested information and returns it to the requester.
Other monitoring systems use a local agent to gather data. When selecting such a system to monitor Linux servers, it is important to ensure that an agent is available for your particular Linux distribution. Some agent-based monitoring tools can also use other data gathering methods and are often the best options in hybrid networks containing a mix of Windows computers which can be monitored with a custom agent and Linux ones that are monitored via standard means such as SNMP.
Linux As A Monitoring Platform
While Linux is a popular operating system for servers of all kind, it is even more so when it comes to running specific tools. In particular, there are several free and open-source network monitoring tool that will on run on Linux. And even it you tool of choice could run on Windows, wouldn’t it make more economic sense to run in on a free OS rather than waste some money on a costly operating system?
Some people still don’t trust free and open-source software for mission-critical applications. They wouldn’t, for instance, put their precious corporate data on a SQL server running on Linux. But these people don’t usually have any objections to using the platform for running network administration tools.
One big advantage of using Linux as the underlying platform for network monitoring tools is that it is easy to set up a Linux server with only the required packages. While this can be done with Windows, it is considerably more complicated.
Our Top Linux Monitoring Software And Tools
Enough said about Linux, let’s have a look at the best tool we’ve found. As mentioned, our list has a combination of tools that can be used to monitor Linux servers and networks as well as network monitoring software that runs on Linux. Some of the tools combine both and can monitor Linux hosts while running on Linux. They are ideal for Linux-only shops.
SolarWinds has been making some of the best network administration tools for some twenty years. It is highly regarded and its flagship product, the SolarWinds Network Performance Monitor, consistently receives top reviews as one of the best network bandwidth monitoring tool. SolarWinds is also famous for its free tools, smaller products each addressing a specific need of network administrators. The SolarWinds Advanced Subnet Calculator and the Kiwi Syslog Server are two good examples of those free tools.
As SolarWinds self-describes it, the Server And Application Monitor is a Windows-based “server monitoring software built to find and resolve application problems”. Using this tool, you will be able to monitor any server running any application, anywhere. It can be used to proactively monitor the performance, capacity, and health of Linux and Windows servers and applications across data centers, remote offices, and in the cloud.
- FREE TRIAL: SolarWinds Server and Application Monitor
- Download Link: https://www.solarwinds.com/server-application-monitor/registration
The Linux server monitoring components of the Server and Application Monitor allow you to monitor, alert, and report on performance issues in your Linux servers. You can monitor resource utilization on your Linux servers. Receive alerts about CPU overloads, insufficient RAM, and storage issues, such as disks running out of capacity. You’ll also be able to monitor the health of the hardware components in your Linux server, including temperature, fan speed, power supply, and more. You can receive alerts when server hardware components are in warning or critical states, potentially reducing server downtime due to hardware failure.
This comprehensive server monitoring platform features an easy to use and customizable web-based dashboard from where you can monitor over 1200 vendor applications, servers, databases, and storage. The SolarWinds Server and Application Monitor provides automated discovery and mapping of applications and infrastructure. It also has customizable monitoring templates, and pre-built alerts and reports.
The price of the SolarWinds Server and Application Monitor is based on the number of components, nodes, and volumes monitored. It starts at $2 995 for 150 monitors. A free 30-day trial version is available for download, should you want to give the product a test run before purchasing it.
The Paessler Router Traffic Grapher (PRTG) is another Windows-based tool which is ideal for monitoring Linux resources. It is one of the easiest and fastest tools to set up and Paessler claims you could be up and running within minutes. It is true that setting up the product is impressively fast, thanks in part to its auto-discovery feature which scans your network and automatically adds the components it finds.
The user interface (or rather interfaces) is another one of the software’s strong suits. You can choose between a native Windows console, an Ajax-based web interface, or mobile apps for Android, iOS, and Windows Phone. One of the unique mobile apps features will let you scan a QR code label affixed to your equipment to quickly view its status.
PRTG can monitor almost anything thanks to its innovative sensor architecture. You can think of sensors are add-ons to the product. However, the sensors are already built into the product. Customized Linux and Unix sensors are used to monitor Linux hosts without the need to install or modify anything. Linux servers are monitored using a combination of WBEM and SSH protocols. Data is sent via a secure connection to prevent sensitive information from being compromised during the sending of monitoring data.
PRTG’s pricing is based on the number of sensors you’re using where a sensor is any parameter or metric you need to monitor. For instance, each interface monitored via SNMP uses up one sensor. Similarly, each Linux host uses a sensor. The product is available in a full-featured free version which is limited to monitoring 100 sensors. For more sensors, paid licenses are required. Their price varies according to sensor capacity starting at $1 600 for 500 sensors. A free, sensor-unlimited 30-day trial is available for download.
Zabbix is a free and open-source product which can be used to monitor anything. The tools can run on a handful of Linux distributions—including Rapsbian, the Raspberry Pi version on Linux—and it will monitor networks, servers, applications and services, and cloud-based environments. It features a highly professional look and feel, much like you’d expect from a commercial product. Good looks are not enough to be on our list, though. Fortunately, this product also boasts a broad feature set, unlimited scalability, distributed monitoring, strong security, and high availability. It is a true enterprise-grade product.
Zabbix uses a combination of monitoring technologies. It supports SNMP monitoring as well as the Intelligent Platform Monitoring Interface (IMPI). It can also do agent-based monitoring with agents available for most platforms. For easy setup, there’s auto-discovery as well as out-of-the-box templates for many devices. The tool’s web-based user interface has several advanced features such as widget-based dashboards, graphs, network maps, slideshows, and drill-down reports.
The product also features a highly customizable alerting system which will not only send out notification messages which contain runtime and inventory information but can also be customized based on the recipient’s role. It can as well escalate problems according to flexible user-defined Service Levels. You can even let Zabbix fix some issues automatically.
There are two competing versions of Nagios available. There’s the free and open-source Nagios Core and there’s the paid Nagios XI. Both share the same underlying engine but the similarity stops there. Nagios Core is an open-source monitoring system that runs on Linux. The system is completely modular with the actual monitoring engine at its core. The engine is complemented by dozens of available plugins which can be downloaded to add functionality to the system. Each plugin adds some features to the core.
Preserving the modular approach, the tool’s front-ends is also modular and several different community-developed options are also available for download. The Nagios core, the plugins and the front end combine and make for a rather complete monitoring system. Considering that, it probably won’t surprise you much when I tell you that setting up Nagios Core can be a daunting task.
Nagios XI is a commercial product based on the Nagios Core engine. However, it is a complete self-contained monitoring solution. The product targets a wide audience from small businesses to large corporations. It is much easier to install and configure than Nagios Core, thanks to its configuration wizard and auto-discovery engine. Of course, it is not free. You can expect to pay around $2 000 for a 100-node license and about ten times as much for an unlimited one.
5. Zenoss Core
Zenoss Core is probably not as popular as some of the other monitoring tools on this list but it truly deserves its spot mainly because of its feature set and professional look. The tool can monitor many things such as bandwidth utilization, traffic flows, or services like HTTP and FTP. It has a clean and simple user interface and its alerting system is excellent. One thing we particularly loved about it its rather unique multiple alerting system. It allows a second person to be alerted if the first one does not respond within a predefined delay.
Not all is perfect though. Zenoss Core is one of the most complicated monitoring systems to install and set up. Installation is an entirely command-line driven process. Today’s network administrators are used to GUI installers, configuration wizards and auto-discovery engines. This could make the product’s installation seem a bit archaic. However, there is ample documentation available and the end result makes it worth the installation efforts.
We had to include Cacti on this list. After all, it is one of the oldest free and open-source monitoring platform. And it is still quite popular to this day. While it might not be as feature-rich as some commercial—and even some open-source—products, it is still an excellent tool. its web-based user interface has a somewhat of a vintage feel—don’t expect any HTML 5 animations—but it is well laid out and easy to understand and use. Cacti is comprised of a fast poller, advanced graphing templates, and multiple acquisition methods. While the tool primarily relies on SNMP polling, custom scripts can be devised to get data from virtually any source.
This tool’s main strength is in polling devices to fetch their metrics and graphing the collected data on web pages. It truly does an excellent job of that but that’s about all it will do. However, if you don’t need alerting, fancy reports or other extras, the product’s simplicity might be just what you need. And if you need more, Cacti is entirely written in PHP, making it highly customizable. You could easily adapt it to our specific needs and add the missing features you need.
Cacti makes extensive use of templates which account for an easier configuration. There are device templates for many common types of devices as well as graph templates. There’s also a huge online community of users who write custom templates of all kinds and make them available to the community and many equipment manufacturers also offer downloadable Cacti templates.