Your Guide to Superior Linux Server Monitoring

Monitor Linux Servers Anywhere

It is no surprise that almost every company uses Linux servers as part of its IT infrastructure. With its focus on security, consistency, and flexibility, Linux is predestined as an operating system for servers. The selection of distributions is huge and continues to grow.

IT admins most often use operating systems such as Red Hat Enterprise Linux (RHEL), CentOS, Fedora, openSUSE, Suse Linux Enterprise Server (SLES), Debian, or Ubuntu to set up Linux servers. Depending on the use case, other systems can also be used to set up a Linux server.

As is the case with Linux distributions,  numerous free open-source Linux server monitoring tools are also available. In some cases, however, it makes sense to switch to professional solutions.

Checkmk provides multiple editions for Linux server monitoring. The Checkmk Raw Edition is free to use and is completely open-source.

Checkmk Enterprise Edition also offers additional features specifically suited for use in enterprise environments. While the use of monitoring agents is recommended for Linux servers, Checkmk also offers agentless monitoring via SNMP (Simple Network Management Protocol) or IPMI (Intelligent Platform Management Interface).

I honestly don’t know of a better monitoring solution for a huge number of servers. This thing scales insanely, notifications are customizable, and there are integrations for every tool we use – Slack, Pagerduty, Mail...

The Checkmk agents support every Linux distribution. It doesn't matter whether you have set up your server in the cloud, implemented it through virtualization, or have dedicated on-premise hardware.

Benefits of Monitoring Linux Servers with Checkmk

Display with an increasing graph

Lightweight yet Powerful

The Checkmk agents are only a few kilobytes in size, work in read-only mode, and can be managed centrally after installation.

Enrolling a tablet with cubes shown on the display

Flexible Monitoring

There are over 2,000 monitoring plug-ins available. Monitor via agents, SNMP, or directly over APIs from vendors.

Server stack in front of a cloud

Hybrid Monitoring

Monitor virtual servers, containers, cloud environments, and distributed server landscapes with just a single platform.

Display with a speedometer

Easy Setup and Operation

With Checkmk you can set up your server monitoring in a few minutes. Detailed documentation and tutorials are available.

The Basics of Linux Monitoring

Screenshot showing the inbuilt Checkmk Dashboard for Linux servers

The Importance of Server Monitoring

Companies have to implement systematic monitoring for their Linux servers. That means checking status, metrics, logs, events, and network statistics at fixed intervals.

Many distributions include functions such as ‘top’ – and these are available via the console. In practice, however, the command line is not suitable for monitoring server landscapes, as the effort for IT admins would not be justifiable.

As a result, numerous infrastructure monitoring tools have been developed that make monitoring more efficient.

The most important criterion for choosing a tool is the ability to monitor any server efficiently. Manual workarounds or queries for individual exceptions are not desirable solutions.

The Checkmk Advantage

Checkmk recommends monitoring via agents as the first option, as this allows resource-efficient monitoring of  Linux systems.

The Checkmk agent for Linux comes as a shell script, and it provides the data for monitoring via xinetd or systemd at TCP port 6556. Checkmk collects the information from there and transfers it to the monitoring system.

The agent is only a few kilobytes. No files are compiled, and all processes are completely transparent at all times. The agent works in read-only mode and supports SSH.

You will quickly be able to write your own plug-ins. Checkmk can work with any output that meets its requirements.

Checkmk also supports agentless monitoring via SNMP or IPMI for use cases where installation of agents is not an option. Integration with virtualization platforms, manufacturer-supplied interfaces, and APIs from cloud providers is also supported.

Linux Monitoring in day-to-day Business

Monitoring services of a Linux server in Checkmk

Linux Everywhere!

Linux is becoming an everyday part of IT and is no longer used only by developers and IT admins. Monitoring solutions must therefore also be usable for specialists that don't have extensive experience in the use of software-based monitoring solutions.

Checkmk: Scalable and Flexible

Checkmk is easy to install, and its administration takes place entirely via the Graphical User Interface (GUI). You can tailor metrics and analysis to the needs of specialists and IT experts using integrated graphing, dashboarding, and reporting engines.

In addition, integration with external tools such as Grafana is also supported.

Monitoring tools require continuous development. Over the years Checkmk has matured into an extensive, all-in-one platform, and yet it has retained its classic Linux qualities: good documentation, lean and secure architecture, expansion options, and stable performance.

At the same time, however, it places great value on a high degree of user-friendliness.

Checkmk Evolution

Historically, Checkmk started as a Nagios fork, but for many years it has been a completely independent product. The Checkmk Raw Edition still uses the Nagios core for monitoring.
The Enterprise Edition, on the other hand, uses the Checkmk Micro Core, and is therefore a completely independent development. Nevertheless, all Nagios plug-ins can also be integrated into Checkmk.

Implementation and Cost-effectiveness of Monitoring

Screenshot showing a dashboard of a web server in Checkmk

Easy Setup

The Checkmk instance itself is usually set up as a Linux server and is ready to start in a few minutes. Deployment is currently possible on SLES, RHEL, CentOS, Debian, and Ubuntu.

After downloading the corresponding package, you can start right away. No configuration of a database or other steps is required.

Checkmk is also available as a Docker container and appliance so that Checkmk can be used even without a Linux system.

Automatic Alerts

Checkmk provides thresholds for monitoring and offers numerous features for the automatic integration of systems. This means less work for IT departments.

Checkmk is also suitable for monitoring distributed environments and is readily scalable.
There are already over 2,000 Checkmk plug-ins, and their use is free of charge.

A comprehensive manual and video tutorials are available to help get you started. In addition, anyone can share feedback or questions in the Checkmk Community Forum.

Bake Your Own Plugin

Checkmk also makes the Exchange available free of charge, where users can share, review and rate extensions they have written themselves.

Server Migration with Linux

Requirements for IT infrastructures are changing, and it makes sense to evaluate your own server systems on a periodic basis. Migration to Linux or another distribution/platform (such as a cloud or virtualized server) is therefore almost a part of everyday life.

However, this must not have any undesired consequences for monitoring. Regardless of whether you use Red Hat Enterprise Linux (RHEL), CentOS, Fedora, Debian, OpenSUSE, SUSE Linux Enterprise Server (SLES) or another Linux environment – with Checkmk you have everything on screen.

In just a few minutes after installation, Checkmk will provide you with deep insights and visibility into your systems and applications.

Screenshot showing a graph of the CPU utilization of a Linux server

Multiple Platform Support

Checkmk Linux server monitoring comprehensively supports heterogeneous server landscapes that use Windows, MacOS, Linux servers, and other systems.

Relocations of servers from campus to the cloud or the replacement of bare-metal servers by virtual machines can also be represented in the monitoring software.

Interoperable

Integrations for Checkmk are available in all common virtualization solutions, so that not only virtual servers, but also the monitoring of their platforms such as VMWare ESXi or Microsoft Hyper-V is possible.

Agents are also not a requirement for monitoring. Checkmk supports integration with almost all common protocols (such as SNMP), APIs and interfaces (e.g. IPMI), and is in no way limited to agents.

Linux servers are considered robust, but an operating system alone does not protect against problems or configuration errors. You should of course follow the best practices for server monitoring.

Experience has also shown that Linux itself has internal mechanisms for improving server performance. This should be considered when monitoring servers. For example, there is a relationship between RAM and SWAP that is relevant for monitoring. By default, you often only look at the RAM.

Memory management does not work according to the overflow principle. However, Linux is intelligent enough to take the size of application processes into account, and therefore it pushes processes into a SWAP before the RAM is full. An alert for (almost) full memory is therefore not practical.

Graph showing the memory utilization of a Linux server

Inventory of Linux Servers

Server infrastructure is now part of the delivery chain for applications and services. Causal relationships which go beyond system monitoring must therefore be recognizable in professional Linux server monitoring.

It is also important to be able to check the functioning of components and software. For example, a corresponding inventory allows the recognition of all installed components and installed software. In this way, changed or broken components can be identified.

A hardware defect on a partition, for example, only becomes apparent when you look at its metrics over time.

Thanks to Checkmk, we have a precise overview of the lifecycle and the use of our systems. This ability is a powerful decision-making aid when it comes to the entrepreneurial orientation of these systems.

For the Linux system, on the other hand, the hard disk seems to have space. When trying to write, however, data is lost.

Processing the information for a license management system is easy. This can prepare you for an audit, for example.

You can integrate the Checkmk HW/SW Inventory in your configuration management database (CMDB) to always have an up-to-date overview of your IT systems.

Screenshot shows CPU inventory of all monitored servers

Linux Server Monitoring for Enterprises

Monitoring Linux servers in extensive IT landscapes is complex without the right tools, and can also consume a lot of resources in the form of additional hardware.

Enterprise Edition: a Linux Server Monitoring Powerhouse

The Checkmk Enterprise Edition monitoring software provides numerous features from which companies can benefit in the long term. Checkmk’s own Micro Core reduces the hardware requirements so that 100,000 or more hosts can be monitored through a single dashboard.

With the distributed Monitoring function, you manage different locations via a central Checkmk instance. Checkmk is, therefore, able to perform comprehensive server monitoring even if you have an extensive Linux environment.

You can also manage agents easily with Checkmk’s own agent bakery.

After a single installation on the server, the agent can be adapted and updated using Checkmk. Agents created with specific settings can be packaged and distributed as RPM or DEB.

Main Dashboard of Checkmk

Support and Training

Various support levels and training courses are available on request. The Checkmk Forum is also open to all users.

In addition, with the Checkmk Exchange, we have provided a platform for sharing your own packages and extensions.

Developer Meetups

And of course, there are also events and meet-ups. Every year we also invite you to the Checkmk Conference, the world’s largest Checkmk user meeting.

Checkmk has everything you need to monitor server environments. It runs very stably, and so far we have had no real difficulties.

Linux Server Monitoring FAQ

How do I monitor a Linux server?

Many software tools are available for teams looking to monitor servers running Linux or other operating systems. Linux server monitoring is essential for keeping a check on current and historical utilization of resources such as CPU utilization, RAM, hard drive storage, and network statistics.

Detailed reports can be generated and analyzed for insight into server performance. The tools also support the generation of automatic alerts that signal critical events.

What is Linux monitoring process?

Linux is a multi-user system that supports multitasking. In Linux, a single instance of a running program is called a process. Linux allows multiple processes to run or execute at the same time.

The 'ps' (short for process status) utility is a Linux utility that can be used to view the status of running processes. The 'ps' utility can be used to view the process ID or PID, the amount of time for which the process has been running, the name of the command used to launch the process, the type of terminal that the user is using, and several other types of information.

Checkmk runs on Red Hat Enterprise Linux (RHEL), CentOS, Fedora, openSUSE, Suse Linux Enterprise Server (SLES), Debian or Ubuntu. Is operation on other distributions possible?

Yes – a Checkmk version is available as a Docker container and as an appliance, so you can also use Checkmk on other operating systems.

The appliance can be deployed virtually or as physical hardware. This only applies to the Checkmk server itself. The actual monitoring supports any type of server, network device, storage, etc.

I use Linux on servers with multiple Docker containers. However, these are only temporarily active and I am afraid of too many alarms in the monitoring. Should I remove this server from the monitoring?

No way. The more containers and virtual machines run on a server, the more robust and stable it has to be. You should therefore monitor the server and the containers.

Checkmk can perform a check every second and recognizes containers, even if they only exist for a short time. Detection, recording and removal are done automatically.

Checkmk monitors servers and containers in one platform. This helps to identify and eliminate possible relations in the event of problems.

What hardware requirements do I have to deal with if I use Checkmk to monitor my servers?

The hardware requirements are relatively low due to the Linux architecture and the many available agents. Fewer hardware resources are needed compared to monitoring without agents, via only SNMP for example.

For Linux servers in particular the agent consists of only one shell script, so the footprint is particularly small.

Do I have to buy additional operating system licenses for the Checkmk hosting server?

Various Linux distributions are suitable for setting up Checkmk, many of which are completely free, such as ClearOS Community or Ubuntu. In this case, there are no additional costs.

If you use commercial Linux distributions like RHEL, you need the corresponding licenses from the manufacturer.