In today‘s complex and dynamic IT environments, having visibility into your infrastructure performance is crucial. But setting up effective monitoring can be daunting, with exploding volumes of metric data across on-prem and cloud. This is where a tool like Checkmk shines – it‘s designed to make robust infrastructure monitoring achievable for organizations of any size.
In this post, we‘ll explore why Checkmk is gaining popularity, walk through getting started in just minutes, and see some of its key capabilities in action. Whether you‘re managing your own data centers or adopting hybrid cloud, read on to learn how Checkmk can help you gain peace of mind.
Why Should You Consider Checkmk?
Before we dive into using Checkmk, let‘s look at why it‘s become one of the most popular open source monitoring tools:
Flexible and extensible
Checkmk can monitor on-prem infrastructure, cloud platforms like AWS and Azure, containers, Kubernetes clusters, and more. It ships with over 2000 plugins to extend monitoring to specific technologies – whether MySQL, Apache, VMware or a custom in-house system.
Automatic discovery and configuration
Forget spending hours manually configuring checks or thresholds. Checkmk auto-discovers over 90% of infrastructure and services out-of-the-box. It comes prepacked with recommended monitoring configs tailored to different systems like Linux servers, Docker, network devices and so on.
Intelligent alerting and anomaly detection
Checkmk doesn‘t just blindly trigger alerts when thresholds are crossed. Its advanced correlation engine analyzes metric patterns and relationships to detect true anomalies worthy of alerting on. This minimizes false positives and alert fatigue.
Customizable visualization and dashboards
While Checkmk provides customizable and preconfigured dashboards, you can also build custom views to focus on the metrics that matter most for a specific app, team or business process.
Active open source community
Checkmk is open source with a large community contributing plugins, integrations and support. The paid Enterprise edition adds official support, SLA guarantees and premium features, but the free Raw Edition is production-ready.
According to ITCentralStation user reviews, Checkmk delivers on its promises of automated monitoring and ease of use even for beginners. Let‘s experience it firsthand by installing Checkmk and monitoring our first service.
Getting Started with Checkmk
One of the great aspects of Checkmk is how fast and frictionless it is to get started. We‘ll walk through installing the open source Checkmk Raw Edition in a Docker container and monitoring our first service in just a few minutes.
Installing Checkmk via Docker
We‘ll leverage the official Checkmk Docker image to spin up a Checkmk instance in a container:
docker container run -dit -p 8080:5000 --tmpfs /opt/omd/sites/cmk/tmp:uid=1000,gid=1000 -v monitoring:/omd/sites --name monitoring -v /etc/localtime:/etc/localtime:ro --restart always checkmk/check-mk-raw:2.0.0-latest
This pulls the latest Checkmk Raw Edition image from Docker Hub, names the container monitoring, exposes the UI on port 8080, and configures some mounts for persistence and timezone settings.
Verifying with docker ps, we should see the container running:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
9729e323a840 checkmk/check-mk-raw:2.0.0-latest "/docker-entrypoint...." 5 minutes ago Up 5 minutes 6557/tcp, 0.0.0.0:8080->5000/tcp, :::8080->5000/tcp monitoring
During initialization, Checkmk prints the login credentials for the UI to the container logs. We can access these by viewing the logs:
The admin user for the web applications is cmkadmin with password: ClFxBPre
And with that, we can now navigate to the Checkmk UI at http://localhost:8080/cmk and log in to start monitoring! The setup so far took less than 5 minutes and a single command – the beauty of Checkmk.
Adding a Host and Services to Monitor
The Checkmk dashboard starts empty, so let‘s begin by adding a host to monitor. We‘ll use the Docker host running the container itself.
Navigating to Setup -> Hosts and clicking Add Host:
- Hostname:
docker-host - IP address: The Docker bridge IP (e.g. 172.17.0.1)
- Save and go to service discovery
Once added, Checkmk automatically discovers and lists all the services detected on this Docker host:

We can choose which services to monitor by clicking the + or – icons. Services enabled will appear under "Monitored Services".
For this example, let‘s say we enabled the Docker service itself, the OS file system, and memory utilization.
After selecting our services, we need to Activate Changes for the monitoring to go live. And we‘re done – our first host and services configured with just a few clicks!
Viewing Metrics and Dashboards
Now we can sit back and watch the monitoring data flow in. Metrics for each service are shown under the host:

We can instantly graph or table these metrics and also set thresholds for alerting. The main dashboard gives an overview of our entire infrastructure status at a glance. We could build custom dashboards focused on specific applications or teams as well.
This gives a taste of how seamless Checkmk makes it to get started monitoring your environments. With just a few clicks we enabled collection and visualization of live system metrics.
Now let‘s look at how Checkmk can extend monitoring to specific technologies like Docker with its vast plugin ecosystem.
Monitoring Docker Containers with Checkmk
A key strength of Checkmk is its library of over 2000 plugins – the largest of any open monitoring system. These plugins extend monitoring capabilities to virtually any system or technology.
For example, the Docker monitoring plugin provides deep visibility into containers. The mk_docker plugin uses the Docker API to auto discover running containers across Docker hosts.
It collects granular CPU, memory, network, disk and health metrics for each container. Custom rules specialized for container environments can trigger alerts for issues like excessive restarts, stuck builds, or unauthorized images.
According to ITCentralStation user reviews, the Checkmk Docker monitoring plugin provides invaluable insights with minimal setup:
"Setting up the Docker plugin was very straightforward and worked smoothly. It discovered all our containers automatically and began collecting metrics immediately. This plugin is a huge time-saver compared to having to manually configure each container for monitoring."
This is just one example – Checkmk offers similar plugins for Kubernetes, MySQL, Apache, VMware and more. This extensive library enables monitoring of the entire modern technology stack.
Achieving Monitoring Made Easy with Checkmk
In today‘s hybrid environments, comprehensive monitoring is crucial but can also be daunting to implement. This is where Checkmk shines – it‘s designed from the ground up to make robust infrastructure monitoring achievable.
As we saw firsthand, Checkmk delivers on its goals of flexibility, intelligent automation and usability:
-
Getting started took just minutes, with most systems auto-discovered and monitored out of the box
-
Checkmk instantly translated torrents of performance data into insights via customizable dashboards
-
Rich integrations like the Docker plugin provide deep visibility into container health and performance
Whether you manage on-prem data centers, cloud environments, containers or a mix, Checkmk deserves a close look. The fully open source Raw Edition is free to use without limitations – an ideal way to get hands-on with this friendly yet powerful monitoring solution.
So if you‘re looking for monitoring made easy, Checkmk is a top choice trusted by IT teams across the globe. I encourage you to try it out and experience the benefits yourself. Let me know if you have any other questions!