You can almost hear the sigh of a tired DevOps engineer watching yet another flaky metrics stack fall apart. Containers up, alerting down. Ops chat lights up. Someone mutters, “Why isn’t Checkmk just feeding off Microk8s already?” Fair question.
Checkmk thrives at infrastructure monitoring. It digs into systems wide and deep, collecting performance data with the precision of a grumpy sysadmin. Microk8s, on the other hand, is the compact Kubernetes that developers actually install without turning their laptops into helicopters. Put them together and you get real observability for edge, lab, and small-cluster environments without wrangling a control plane army.
To connect Checkmk with Microk8s, you mainly bridge two worlds: service discovery and node metrics. Microk8s exposes cluster data through kube-state metrics and cAdvisor endpoints, while Checkmk pulls these as monitored hosts and services. The logic is simple: Microk8s produces metrics, Checkmk consumes and interprets them. Once discovered, you can label pods, set thresholds, and fire alerts in one interface. It feels less like “integration” and more like turning on the lights in a room that was already wired.
How do I connect Checkmk to Microk8s?
Use the Checkmk Kubernetes special agent to authenticate against your Microk8s API server. The agent lists nodes, pods, and services via the Kubernetes API, then folds that into your monitoring tree. For restricted clusters, map Checkmk’s service account to an RBAC role with read access only. You get authentication, not chaos.
What if Checkmk cannot reach the Microk8s API?
Check Microk8s’ kubectl get services -n kube-system output for the API endpoint. Often, the culprit is a self-signed certificate or network policy. Adding the proper CA bundle to Checkmk’s trusted store usually clears it up. When in doubt, test with curl before blaming DNS.