IT monitoring helps you ensure that your IT equipment is available at all times and does what it is supposed to do. The simplest form of monitoring is a request to each device in the network. The response tells you whether the system is running or not. But modern monitoring tools can do much more.
They check whether your server is running. But also whether its hard disk is working, how high the CPU load is and how much RAM is still available.
The approach of checking devices for their availability and function may seem manageable at first glance. However, the impact on the productivity of the entire IT network is enormous if you can notice malfunctions immediately due to IT monitoring and possibly even fix them automatically.
One solution for very efficient IT monitoring is Checkmk, an open source software. For more than 10 years, Checkmk has been used by small and medium-sized enterprises, but also by corporations and public institutions. Checkmk delivers a huge range of functions - including more than 1,800 plug-ins - and is ideal for monitoring hardware and software as well as virtualised systems and services.
Two editions of the software are offered: a RAW edition and the Enterprise edition. The latter is available as a free version or as an annual subscription. The Enterprise Edition is primarily intended for professional use in companies.
The Checkmk RAW edition is 100% open source. It is based on Nagios and offers all basic functions. This includes SNMP monitoring, container and cloud monitoring, alarms, hardware and software inventory and of course server monitoring and log management.
In the Enterprise Edition, the range of functions is expanded to include SLA reporting, comprehensive reporting, automated, dynamic host management and a significant increase in performance. This increased performance is particularly worthwhile for large infrastructures, as far more than 100,000 hosts can be recorded and the interval for recording the measurement data can be set to the second.
For small businesses, the free Enterprise Edition is excellent. It offers the same features, but is limited to monitoring 10 hosts.
Checkmk is versatile and can run on almost any operating system. This includes various Linux distributions, Windows, macOS and almost any other unixoid system. After downloading the desired version from the Checkmk website, you can start the installation directly. This only takes a few minutes using the deb package provided. Checkmk is then immediately ready for use. After the installation, you can call up the dashboard where you will later have an overview of all important events.
The first step after installation is to create instances or sites. Each site represents a self-contained monitoring environment containing hosts, services and users. The special feature: You can create several sites, for example, to try out functions in a test site. When you create each site, Checkmk automatically creates a directory, a Linux user and a user for the interface in which you manage the entire system.
After starting your first site, log in to the WATO configuration menu (up to version 1.6) or the setup (from Checkmk version 2.0). This is where you create users, assign roles, configure permissions and manage the entire monitoring. Here you also define time periods, adjust longer running processes and configure alarms.
In the setup (earlier versions WATO) of version 2.0 you can make all settings.
If a system fails, informing the right people is crucial. In Checkmk, you define rules to ensure a quick recovery of business-critical systems and processes. For this purpose, notification is not only limited to emails. Modern tools such as Slack or Mattermost are also supported. Those who do not have a smartphone can also be notified by SMS via smstools (SMS Server Tools). Alerts can also be forwarded directly to a ticket system.
As practical as alarms are: In Checkmk they are optional. Especially at the beginning of your monitoring journey, it is advisable to work without alerts at first, until only very rarely false alerts are produced. After all, such notifications are only really helpful if only real faults are reported by email.
In order to be able to directly read out all the required information of a monitored system in addition to the availability, Checkmk uses agents. These agents are basically a piece of software that runs on the respective target system. Agents regularly transmit information to Checkmk to show the current status of a system.
Many devices already have their own agents, such as SNMP agents on network devices. For monitoring servers and workstations, Checkmk has its own installable agents.
In version 2.0 you will find numerous agents for Linux/UNIX based operating systems but also for MacOS and of course Windows systems, under the menu item "Setup". In version 1.6 you will find these in the WATO settings. In addition, you can also include services and applications such as Apache or NGINX web servers, Plesk, Websphere or database management systems such as MySQL, SQL, Postgres or MongoDB in the monitoring. Checkmk 2.0 also offers numerous agents for monitoring systems and services.
Do you already use i-doit and are considering putting Checkmk into operation as a monitoring solution? Or are you already using Checkmk and planning to implement i-doit as a CMDB?
The order does not matter. Together, the two tools fulfil their full potential. You configure the monitoring of devices directly in the CMDB and ensure that new devices are not put into operation without monitoring. This simplifies your processes and saves valuable time.
The two systems are conveniently linked via the i-doit pro add-on Checkmk 2, which is compatible with Checkmk version 1.5 and higher.
The add-on eliminates the need for duplicate data maintenance. You can easily supplement the information in your IT documentation with the live monitoring data from Checkmk. It does not matter whether you first document a new server in i-doit or create it as a new host in Checkmk. The synchronisation works in both directions (bi-directional) through the PUSH / PULL procedure. Thus, a server documented in i-doit can be transferred directly to Checkmk. A server already existing in Monitoring is exported to i-doit in order to expand it with additional information such as details on the physical location, contact persons and contracts.
This is the great strength of this combination: the data from Monitoring is highly up-to-date. Information - such as status, IP addresses and services - is automatically updated in the CMDB. All changed data is recorded there and can be tracked at any time. Time-consuming filtering and checking of log files is now a thing of the past.
Additional information that cannot be registered in Monitoring is easily recorded in the CMDB. This includes, for example, existing contracts. In the CMDB, additional relationships to suppliers, administrators and service managers can also be determined directly. In this way, the ACTUAL and TARGET status of the company-wide IT infrastructure can be compared in order to be able to recognise status changes at a glance.
The CMDB status of objects automatically changes through the coupling of the two systems. This allows users in the IT documentation, who do not have access to Monitoring, to see whether services are currently partially restricted or completely down. Another advantage is that administrators can call up instructions for action and map escalation levels without detours.
The Checkmk add-on can be obtained like all other i-doit add-ons in the customer portal and installed in the administration area by simply uploading the ZIP file. Then call the script "idoitcmk" for the configuration. You will then be guided through the rest of the installation and the i-doit JSON-RPC API will be connected to the Checkmk Web API (up to v1.6) or via a REST API (from version 2.0). During the installation, you can also optionally configure a proxy server.
The Checkmk 2 add-on supports Checkmk versions from version 1.5 upwards.
However, be careful not to run Checkmk and i-doit on the same server, otherwise both systems will not be available in the event of a failure.