1. Selecting a Checkmk edition
Before you begin installing Checkmk, you must first decide which of the available editions you want to use:
Checkmk Raw is free, 100 % Open Source and incorporates Nagios as its core. You can use it to comprehensively monitor complex environments. Support is available in our Forum from the Checkmk community.
Checkmk Enterprise is primarily aimed at professional users and offers a number of interesting features beyond the scope of Checkmk Raw, such as with the Checkmk Micro Core (CMC) a very performant own core (which replaces Nagios), a flexible distribution of Checkmk monitoring agents (which obtain the information from the monitored target systems), a large number of sophisticated dashlets to incorporate into dashboards, reporting, and much more. As a Checkmk Enterprise user, you can optionally receive professional support from our team or from one of our partners.
Checkmk Cloud extends the functionality of Checkmk Enterprise with features that are useful in cloud environments such as Amazon Web Services (AWS) and Microsoft Azure, with specialized check plug-ins and dashboards, as well as providing a combination of auto-registration and configuration of the Checkmk agent in the push mode. More details on Checkmk Cloud can be found in this article.
You can test Checkmk Cloud without obligation, because it is not limited for the first 30 days (in license state "Trial"). On a small scale, i.e. with one site and up to 750 services, you can also run Checkmk with Checkmk Cloud permanently without licensing in the license state "Free". Entering a license key after 30 days at the latest is only necessary if you want to use Checkmk Cloud without limitations.
Checkmk MSP is a multi-tenant capable extension of Checkmk Cloud and has all of the necessary functions for operating individual, self-contained sites for each of multiple clients with Checkmk via a distributed monitoring. If you as a provider want to offer these services to your customers, this is your edition. You can find more details on the concept of managed services in the introduction of this article.
A list with descriptions of the differences between the various editions can be found on our website.
In this User Guide, whenever we discuss functions that apply only to the commercial editions — i.e. to Checkmk Enterprise, Checkmk Cloud or Checkmk MSP — we mark this with the icon as in this paragraph.
2. Selecting a version
We are continually developing all editions of Checkmk and therefore there are different versions of each edition. To get started, we generally recommend the latest stable version. A detailed overview of what other versions are available can be found in this article.
3. Installing the software
The Checkmk server fundamentally requires a Linux system on which it can run. (Of course, you can still monitor Windows and other operating systems). If you do not want to set up your own Linux server, you can also run Checkmk using Docker or an appliance. There are four options in total, which we briefly present below and which are installed in different ways. When you have finished installing your variant, continue reading in the next chapter, which is about creating a site.
3.1. Linux server
The installation of Checkmk on a Linux server — whether on a 'real' or on a virtual machine — is the standard scenario. If you have basic Linux knowledge, the installation is very simple. All the software you need is either included in your Linux distribution or in our Checkmk package.
Checkmk supports the following Linux distributions: Red Hat Enterprise Linux (RHEL) based systems, SUSE Linux Enterprise Server (SLES), Debian and Ubuntu. For each Checkmk edition, Checkmk version and Linux distribution, there is a separate customized package from us that you can install with the package manager in your Linux distribution.
3.2. Virtual appliance
With the Checkmk virt1 virtual appliance you get a ready-to-use virtual machine with an OVA (Open Virtualization Archive) file format that you can use in a hypervisor such as VirtualBox or VMware ESXi.
The appliance contains the Linux operating system Debian and a firmware which, among other things, provides a web GUI for managing the appliance. The advantage with the appliance, apart from a pre-installed system, is that you can configure the operating system, the appliance and Checkmk completely via the graphical user interface without having to use the Linux command line. The installation of the Checkmk software and the creation of sites is also carried out via the web GUI of the appliance.
The virtual appliance has its own version management, different from the Checkmk software. Therefore, you can update the appliance software by installing a new firmware — independently of the Checkmk software installed in the appliance.
The virtual appliance is available for all commercial editions, for Checkmk Cloud and Checkmk MSP also in the license states "Trial" and "Free". You can find out how to proceed with the installation in the Quick start guide.
3.3. Physical appliance
You can go one step further with the physical appliance — also known as the hardware appliance. Here, the complete software you need for Checkmk comes pre-installed and ready to use on a device, for example, to install directly in your data center. You can connect two physical appliances together to form a high-availability cluster (HA cluster) in just a few steps.
The physical appliance is available for all commercial editions. You can choose between several models with differing levels of maintenance. The instructions for commissioning the appliance can be found in the Quick start guide.
3.4. Docker container
If you would like to provide Checkmk using a Docker container, you also have this option. We support both Checkmk Raw and commercial editions with ready-made container images that can be set up with just a few commands.
You can find the instructions for this in the article on installing as a Docker container.
4. Creating a site
Checkmk has a special feature that may seem unimportant at first, but it is one which has proven very useful in practice — you can run several independent sites of Checkmk in parallel on the same server. Each site can even run a different version of Checkmk.
Here are two common uses for this well-thought-out feature:
An uncomplicated method for trying out a new Checkmk version.
The parallel operation of a test site for the monitoring of hosts that are not yet used as production system.
If you have just installed Checkmk on a Linux server, there will be no sites as yet. In this chapter we will show you how to create a site following an installation of Checkmk software on a Linux distribution.
Checkmk appliances are administered via a web GUI that also covers the creation of sites. This is explained in the article on the appliance. If you are running Checkmk in a Docker container, a site will be created for you automatically during its installation. |
First choose a name for your site.
This may only consist of letters, digits and underscores, must start with a letter and may be a maximum of 16 characters long.
The convention here is lower case letters.
In the User Guide, we use the name mysite
in examples.
Replace this name with your own site name.
The creation itself is very simple.
As root
, simply enter the command omd create
followed by the name for the site:
root@linux# omd create mysite
Adding /opt/omd/sites/mysite/tmp to /etc/fstab.
Creating temporary filesystem /omd/sites/mysite/tmp...OK
Updating core configuration...
Generating configuration for core (type nagios)...
Precompiling host checks...OK
Executing post-create script "01_create-sample-config.py"...OK
Executing post-create script "02_cmk-compute-api-spec"...OK
Restarting Apache...OK
Created new site mysite with version 2.3.0p1.cre.
The site can be started with omd start mysite.
The default web UI is available at http://linux/mysite/
The admin user for the web applications is cmkadmin with password: YzxfoFZh
For command line administration of the site, log in with 'omd su mysite'.
After logging in, you can change the password for cmkadmin with 'cmk-passwd cmkadmin'.
When creating a new site, the following events take place:
A Linux user (without password) and a Linux group are created with the name of the site. This user is known as the site user.
A home directory is created for the site in the
/omd/sites
directory, e.g./omd/sites/mysite
. This directory is known as the site directory.A suitable default configuration is copied into the new directory.
A user with the name
cmkadmin
and a random password is created for the web interface in Checkmk. Make a note of this password. You can also change the password as described below.
By the way — whenever we give file path names in the User Guide that do not begin with a slash, they refer to the site directory.
If you are in this directory, you can therefore use such paths directly in this way.
This also applies, for example, to the file etc/htpasswd
, whose absolute path here is /omd/sites/mysite/etc/htpasswd
.
This file contains the passwords for the Checkmk users of this site.
Do not confuse this file with /etc/htpasswd
.
If you receive this or a similar error message when trying to create the site:
then a Linux user or group already exists with the site name you specified. In such a case, simply choose a different name. |
Once you have created the new site, subsequent administration is no longer carried out as the root
, but instead as the site user.
The easiest way to become a site user is with the following command:
root@linux# su - mysite
OMD[mysite]:~$
You can see from the changed prompt that you are now logged into the site, and as the command pwd
shows, you will then be automatically in the site directory:
OMD[mysite]:~$ pwd
/omd/sites/mysite
As you have seen in the output from omd create
, an administrative Checkmk user named cmkadmin
is automatically created when the site is created.
This user is for logging into the web interface in Checkmk and has been given a random password.
As the site user, you can easily change this password:
OMD[mysite]:~$ cmk-passwd cmkadmin
New password: *****
Re-type new password: *****
5. Starting the site
A site can be started or stopped.
The start type is automatic, which means that a started site is also restarted after a reboot of the computer.
Newly-created sites nevertheless begin their lives in a stopped state.
You can easily check this with the command omd status
, which shows the status of all the individual processes that are necessary to operate the site:
OMD[mysite]:~$ omd status
agent-receiver: stopped
mkeventd: stopped
rrdcached: stopped
npcd: stopped
nagios: stopped
apache: stopped
redis: stopped
crontab: stopped
-----------------------
Overall state: stopped
With a simple omd start
you can start the site:
OMD[mysite]:~$ omd start
Temporary filesystem already mounted
Starting agent-receiver...OK
Starting mkeventd...OK
Starting rrdcached...OK
Starting npcd...OK
Starting nagios...OK
Starting apache...OK
Starting redis...OK
Initializing Crontab...OK
As expected, afterwards omd status
shows all services as running
:
OMD[mysite]:~$ omd status
agent-receiver: running
mkeventd: running
rrdcached: running
npcd: running
nagios: running
apache: running
redis: running
crontab: running
-----------------------
Overall state: running
Since the commercial editions have more features than Checkmk Raw, you will see more services there.
In addition, you will find cmc
as the core instead of nagios
:
OMD[mysite]:~$ omd status
agent-receiver: running
mkeventd: running
liveproxyd: running
mknotifyd: running
rrdcached: running
cmc: running
apache: running
dcd: running
redis: running
crontab: running
-----------------------
Overall state: running
The omd
command provides many more options for controlling and configuring sites, and these are described in the article on sites.
In addition, you can find out how the directory structure for Checkmk is set up in the article on Checkmk in the command line.
6. Logging in
With the site running, you can now proceed.
Each site has its own URL that you can open in your browser.
This URL consists of the name or IP address of the Checkmk server, a slash, and the name of the site, e.g. http://mycmkserver/mysite
.
You will find this login dialog at this address:
Now log in with the user name cmkadmin
and the password you chose or changed at the beginning.
This will take you to the start page in Checkmk, which we will look at in more detail in the next chapter.
If your site has not started, you will see the following error message instead of the login dialog:
If there is no site with this name at all — or you have landed on a server without Checkmk — it will look more like this:
Important: As soon as you are running Checkmk as production system, we recommend that for security reasons you only allow access to the interface in a secured manner. You can find out what you need to do for this in the article on securing the web interface with HTTPS.