Checkmk Raw – co to jest, instalacja, konfiguracja i porównanie z Zabbix

01. Co to jest Checkmk?

Checkmk to zaawansowana platforma monitorowania IT, rozwijana przez firmę Checkmk GmbH (dawniej tribe29). Powstała jako rozszerzenie do Nagios w 2008 roku, stworzone przez Mathiasa Kettner’a pod nazwą Check_MK. Z biegiem czasu projekt urósł do rangi samodzielnego, w pełni dojrzałego systemu monitorowania, który dziś obsługuje tysiące organizacji na całym świecie — od małych firm po korporacje z listy Fortune 500. Platforma oferuje monitoring infrastruktury IT, aplikacji, usług sieciowych i środowisk chmurowych w jednym, spójnym systemie.

Checkmk Raw w skrócie

Checkmk Raw to darmowy system monitoringu IT, który automatycznie wykrywa usługi na serwerach i umożliwia ich monitorowanie bez ręcznej konfiguracji.

Bezpłatne szkolenie: Zbuduj 5 agentów AI w n8n!

Weź udział w intensywnym, praktycznym szkoleniu i naucz się tworzyć automatyzacje oraz agentów AI komunikujących się przez komunikator. W programie m.in.: RAG Chatbot, Voice Agent, Wirtualna Rada Nadzorcza, Asystentka głosowa i Claude Code Admin.

Zapisy do 23 kwietnia, 23:59

Sprawdź szczegóły: https://asdevops.pl/warsztaty/

 

 

Auto-Discovery

Automatyczne wykrywanie usług i interfejsów sieciowych zaraz po dodaniu hosta.

Metryki i wykresy

Wbudowany RRDtool do przechowywania danych historycznych i generowania wykresów wydajnościowych.

Powiadomienia

Elastyczny system alertów: e-mail, SMS, Slack, PagerDuty, Jira i wiele innych.

SNMP i agenci

Obsługa SNMP v1/v2c/v3, własnych agentów oraz monitorowania bezagentowego (SSH, REST API).

Chmura i kontener

Natywna integracja z AWS, Azure, GCP, Kubernetes i Docker.

Konfiguracja przez WATO

Web Administration Tool — graficzny interfejs do zarządzania konfiguracją bez edycji plików.

Historia i geneza projektu

W 2008 roku Mathias Kettner napisał check_mk jako skrypt Pythona rozszerzający Nagios o bardziej wydajny mechanizm odpytywania hostów. Zamiast uruchamiać osobny proces dla każdego sprawdzanego parametru, Checkmk łączy wszystkie sprawdzenia w jedno połączenie TCP, drastycznie zmniejszając obciążenie serwera i monitorowanych hostów.

W 2020 roku firma zmieniła nazwę z tribe29 na Checkmk GmbH, a w 2021 roku pojawiła się wersja 2.0 z przepisanym silnikiem przetwarzania danych, nowym interfejsem webowym opartym na React.js oraz ulepszonym silnikiem powiadamiania.

Checkmk Raw a Nagios

Checkmk Raw Edition korzysta wewnętrznie z Nagios Core jako silnika schedulera, ale w praktyce użytkownik nigdy bezpośrednio z nim nie interaguje. Cała konfiguracja odbywa się przez WATO/GUI Checkmk, a pliki konfiguracyjne Nagiosa są generowane automatycznie.

02. Edycje Checkmk

Checkmk dostępny jest w czterech wersjach, różniących się możliwościami i modelem licencjonowania:

CechaRaw (CRE)Cloud (CCE)Enterprise (CEE)MSP (CME)
LicencjaGPL — DarmowaKomercyjnaKomercyjnaKomercyjna
Silnik scheduleraNagios CoreCMC (Checkmk)CMC (Checkmk)CMC (Checkmk)
Wbudowany RRDTakTakTakTak
Distributed MonitoringOgraniczoneTakTakTak
Predictive MonitoringNieTakTakTak
Business IntelligenceNieTakTakTak
SLA ReportingNieTakTakTak
Multi-tenantNieNieNieTak
Limit hostówBrakBrakLicencjaLicencja

Edycje Checkmk – którą wybrać?

WersjaLicencjaDla kogo
Raw (CRE)darmowa (GPL)homelab, MŚP
Enterprise (CEE)płatnaduże środowiska
Cloud (CCE)płatnachmura
MSP (CME)płatnamulti-tenant

Checkmk Raw = brak limitów hostów + darmowy monitoring

Dla małych i średnich środowisk Checkmk Raw Edition jest w pełni funkcjonalnym, darmowym rozwiązaniem bez limitów liczby hostów czy usług. Jedynym ograniczeniem jest oparcie na Nagios Core zamiast natywnym CMC, co wpływa na wydajność przy bardzo dużej liczbie hostów (powyżej kilku tysięcy).

Dla kogo jest Raw Edition?

Checkmk Raw sprawdza się doskonale dla organizacji monitorujących od kilkudziesięciu do kilku tysięcy hostów, które potrzebują solidnego, darmowego rozwiązania bez komercyjnych licencji. Działa szczególnie dobrze w środowiskach MŚP, home labach, szkołach i uczelniach.

Checkmk Raw sprawdzi się gdy:

  • chcesz wdrożyć monitoring w kilka godzin
  • masz od 10 do 5000 hostów
  • nie chcesz zarządzać bazą danych SQL
  • cenisz automatyzację

Idealne dla:

  • homelab
  • firmy IT
  • szkoły / uczelnie
  • środowiska DevOps

03. Checkmk Raw vs Zabbix – które lepsze?

Zabbix i Checkmk Raw to dwa najpopularniejsze darmowe (open source) systemy monitorowania infrastruktury IT. Oba narzędzia mają podobne możliwości, ale różnią się filozofią, architekturą i sposobem pracy.

Filozofia i podejście do konfiguracji

Zabbix jest bardziej elastyczny i konfigurowalny. Dosłownie wszystko można w nim skonfigurować — od progów alertów, przez reguły discovery, po sposób zbierania danych. To jednak oznacza, że wymaga znacznie więcej czasu na wstępną konfigurację. Świeżo zainstalowany Zabbix to właściwie pusta powłoka, którą trzeba samodzielnie wypełnić szablonami i regułami.

Checkmk reprezentuje filozofię „działa od razu”. Po zainstalowaniu agenta na hoście i dodaniu go do monitorowania, Checkmk automatycznie wykrywa dziesiątki usług (CPU, RAM, dyski, interfejsy sieciowe, procesy systemowe, usługi Windows itp.) bez żadnej dodatkowej konfiguracji. To ogromna oszczędność czasu.

Porównanie techniczne

KryteriumCheckmk RawZabbix
LicencjaGPL v2GPL v2
Język backenduPython, CC (serwer), Go (agent)
Baza danychRRDtool (metryki), SQLite/confMySQL / PostgreSQL / Oracle
Auto-Discovery usługWbudowane, automatyczneWymaga konfiguracji reguł
Protokół agentaTCP 6556 (plain/TLS)TCP 10050 (Zabbix Protocol)
Obsługa SNMPv1, v2c, v3 + auto MIB walkv1, v2c, v3
Próg alertuPredefined + WARN/CRIT levelsExpressions + trigger functions
Czas do pracyKilkadziesiąt minutKilka godzin do dni
SkalowanieDo ~5000 hostów (Raw)Dziesiątki tysięcy hostów
Aktywny monitoring URLWbudowanyWbudowany
APIREST API (v2)Zabbix API (JSON-RPC)
Docker / KubernetesNatywny pluginPrzez template/plugin
Interfejs webowyNowoczesny React UINowoczesny (od v6.0)
Krzywa uczenia sięŁagodnaStroma
SpołecznośćDuża, aktywne forumBardzo duża, dojrzała
Wbudowane dashboardyAutomatyczneWymagają konfiguracji

Kiedy wybrać Checkmk?

  • Chcesz szybko wdrożyć monitoring bez wielodniowej konfiguracji.
  • Twoja infrastruktura to do kilku tysięcy hostów.
  • Zależy Ci na automatycznym wykrywaniu wszystkiego, co dzieje się na hostach.
  • Nie masz dedykowanego DBA — Checkmk nie wymaga zewnętrznej bazy danych.
  • Planujesz ewentualne przejście na wersję Enterprise z zachowaniem całej konfiguracji.

Kiedy wybrać Zabbix?

  • Potrzebujesz monitorować dziesiątki tysięcy hostów i zależy Ci na wydajności.
  • Chcesz pełnej kontroli nad każdym aspektem konfiguracji.
  • Masz doświadczony zespół z czasem na wstępne wdrożenie.
  • Potrzebujesz zaawansowanych funkcji statystycznych i prognozowania wbudowanych w silnik.
  • Twoja organizacja korzysta już z MySQL/PostgreSQL i chce je wykorzystać.

Ważna uwaga o bazie danych

Checkmk Raw nie używa relacyjnej bazy danych SQL do przechowywania metryk — korzysta z RRDtool, co jest doskonałym rozwiązaniem dla danych szeregów czasowych. Oznacza to jednak, że nie możesz wykonywać dowolnych zapytań SQL na danych historycznych, jak ma to miejsce w Zabbix.

04. Architektura Checkmk (jak działa „pod spodem”)

Zrozumienie architektury Checkmk pomaga w prawidłowej konfiguracji i diagnozowaniu problemów. Poniżej przedstawiono przepływ danych w typowym wdrożeniu.

Przeglądarka ↕ HTTPS Apache + mod_wsgi ↕ Checkmk GUI (React)

WATO / Configuration → generuje → Nagios Core (scheduler)

↕ LiveStatus socket

Livestatus API ↔ Event Console ↔ Notification Engine

↕ TCP 6556 / SNMP

Agent Linux/Win SNMP Device Docker / API Pasywne (NSCA)

Kluczowe komponenty

Nagios Core — w wersji Raw pełni rolę schedulera. Definiuje harmonogram sprawdzeń, ale samo pobieranie danych odbywa się przez Check Helper Checkmk, nie przez pluginy Nagios.

Checkmk Micro Core (CMC) — zastępuje Nagios Core w wersjach komercyjnych. Napisany w C++, jest wielokrotnie szybszy i zużywa znacznie mniej zasobów. W Raw Edition go nie ma.

Checkmk Agent — mały demon uruchomiony na monitorowanym hoście. Nasłuchuje na porcie TCP 6556. Gdy serwer Checkmk się połączy, agent wykonuje lokalne skrypty/pluginy i zwraca wyniki w postaci tekstowej. Nie przechowuje żadnego stanu.

Livestatus — socket Unix/TCP do zapytań na żywo o status wszystkich hostów i usług. Zastępuje bazy danych SQL w Nagios dla tego celu — jest znacznie szybszy.

RRDtool — biblioteka do przechowywania danych szeregów czasowych w plikach .rrd z automatyczną konsolidacją (średnia, min, max). Każda usługa ma własny zestaw plików RRD.


05. Instalacja Checkmk Raw (Docker – najszybsza metoda)

Checkmk dostarcza gotowe paczki .deb , .rpm oraz docker dla popularnych dystrybucji Linux. Serwer Checkmk nie powinien być instalowany na Windowsie — działa wyłącznie na Linuksie.

Wymagania systemowe

Minimalne

2 CPU cores, 2 GB RAM, 20 GB dysk. Do ~100 hostów.

Zalecane

4 CPU cores, 8 GB RAM, 100 GB dysk SSD. Do ~1000 hostów.

Produkcja

8+ CPU cores, 16+ GB RAM, 500 GB+ SSD. Kilka tysięcy hostów.

Obsługiwane systemy

Ubuntu 20.04, 22.04, 24.04 · Debian 10, 11, 12 · CentOS/AlmaLinux/Rocky 8, 9 · RHEL 8, 9 · SUSE SLES 15. W tym poradniku używamy Ubuntu 22.04 LTS.

Krok 1 — Instalacja Docker (Debian)

  • zainstalowany Docker
  • zainstalowany Docker Compose

Skonfiguruj repozytorium apt dla Docker.

# Add Docker's official GPG key:
sudo apt update
sudo apt install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

# Add the repository to Apt sources:
sudo tee /etc/apt/sources.list.d/docker.sources <<EOF
Types: deb
URIs: https://download.docker.com/linux/ubuntu
Suites: $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}")
Components: stable
Signed-By: /etc/apt/keyrings/docker.asc
EOF

sudo apt update

Zainstaluj pakiety Docker.

sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

Sprawdzenie:

docker --version
docker compose version

Plik docker-compose.yml

Utwórz plik:

nano docker-compose.yml

Wklej:

services:
checkmk:
image: "checkmk/check-mk-raw:2.4.0-latest"
container_name: "monitoring"
environment:
- CMK_PASSWORD=Twoje_haslo <--- Tutaj wpisz Swoje hasło
- TZ=Europe/Warsaw
volumes:
- monitoring:/omd/sites
tmpfs:
- /opt/omd/sites/cmk/tmp:uid=1000,gid=1000
ports:
- 8080:5000
- 8000:8000
restart: always

volumes:
monitoring:

Krok 2 — Uruchomienie kontenera

docker compose up -d

Po tych krokach interfejs webowy jest dostępny pod adresem: http://<IP_SERWERA>:8080

Pierwsze logowanie i zmiana hasła

Zaloguj się przy użyciu nazwy użytkownika cmkadmin i hasła wygenerowanego podczas tworzenia instancji. Po zalogowaniu natychmiast zmień hasło w menu: User → Change password.

Jak dodać host Linux do Checkmk?

Kliknij na Setup / Linux

Kliknij prawym myszy na plik check-mk-agent_2.4.0p24-1_all.deb i Kopiuj adres linku (obsługa systemów opartych na Debianie)

Kliknij prawym myszy na plik check-mk-agent-2.4.0p24-1.noarch.rpm i Kopiuj adres linku (Fedora, RHEL itd.)

Przejdź do serwera który chcesz monitorować i wprowadź komendę (bazuję na systemach Debian):

wget http://192.168.1.74:8080/cmk/check_mk/agents/check-mk-agent_2.4.0p24-1_all.deb

Następnie nadaj uprawnienia wykonywania (execute) dla pliku i go zainstaluj:

chmod +x check-mk-agent_2.4.0p24-1_all.deb

dpkg -i check-mk-agent_2.4.0p24-1_all.deb

Wróć do Checkmk wybierz Setup / Hosts

Kliknij Add host to the monitoring

Nadaj nazwę w Hostname, zaznacz IP address family / IPv4 only oraz IPv4 address podaj adres IP serwera na którym zainstalowałeś plik check-mk-agent_2.4.0p24-1_all.deb

Kliknij na Save & run service discovery (by rozpocząć proces propagowania danych serwera)

Po chwili pokażą się usługi które będą monitorowane na serwerze. Kliknij Accept all a następnie na changes

Aktywuj zmiany klikając na Active on selected sites i poczekaj na Progress aż pokaże się zielony napis Success

Przejdź do Monitor / All hosts

Gdy klikniesz na utworzony host ujrzysz stan (State) Pend, po odczekaniu 2-3 minut zaczną napływać dane z serwera do Checkmk

W pełni monitorowany serwer, przykład:

Rejestracja TLS (bardzo ważne)

cmk-agent-ctl register   --hostname debian   --server 192.168.1.74:8000   --site cmk   --user cmkadmin   --password Twoje_haslo

Po chwili pojawi się rejestracja certyfikatu, wpisz „y” i zatwierdź. Registration complete oznacza prawidłową instalację certyfikatu:

TLS w Checkmk – dlaczego jest ważny?

Domyślnie agent działa w plain TCP (port 6556).
To NIE jest bezpieczne w produkcji.

Rozwiązanie: cmk-agent-ctl

Zapewnia:

  • szyfrowanie TLS
  • autoryzację hostów
  • zarządzanie certyfikatami

Jak dodać host Windows do Checkmk?

Kliknij na Setup / Windows

Kopiuj adres linku pliku check_mk_agent.msi

Wklej link do przeglądarki internetowej w Windows, po pobraniu pliku kliknij 3 kropki i kliknij Zachowaj

Przy Usuń kliknij 3 kropki i kliknij Zachowaj mimo to

Uruchom instalator, w sekcji Produkt Features zaznacz Clean installation i kliknij Next

Kliknij na ikonę Windowsa wyszukaj cmd, uruchom Wiersz polecenia / Uruchom jako administrator

Dwa razy wpisz cd.. i zatwierdz Enter, przejdź do ścieżki Program Files (x86)\checkmk\service

cd C:\Program Files (x86)\checkmk\service

Analogicznie, wybierz Setup / Hosts

Kliknij Add host

Analogicznie podaj Host name, zaznacz IP address family / IPv4 only oraz IPv4 address podaj adres IP Windowsa na którym zainstalowałeś plik check_mk_agent.msi

Kliknij na Save & run service discovery (by rozpocząć proces propagowania danych serwera)

Wróć do Windows i wprowadź komendę, gdzie –hostname musi się zgadzać z Hostname, który podałeś w Checkmk. Za password wpisz hasło do logowania się jako administrator Checkmk:

cmk-agent-ctl register --hostname win11 --server 192.168.1.74:8000 --site cmk --user cmkadmin --password Twoje_haslo

Po chwili pojawi się rejestracja certyfikatu, wpisz „y” i zatwierdź. Registration complete oznacza prawidłową instalację certyfikatu:

Wróć do Checkmk i kliknij Rescan

Po chwili pokażą się usługi które będą monitorowane na serwerze. Kliknij Accept all a następnie na changes

Aktywuj zmiany klikając na Active on selected sites i poczekaj na Progress aż pokaże się zielony napis Success

Podsumowanie i dobre praktyki

Checkmk Raw Edition to potężne, darmowe narzędzie do monitorowania infrastruktury IT. Po przeczytaniu tego artykułu powinieneś mieć działający serwer z HTTPS, podłączone hosty Windows i Linux

Checklist po wdrożeniu

TLS/HTTPS włączone

Hasło cmkadmin zmienione

Firewall skonfigurowany

Powiadomienia działają

Backup konfiguracji

Monitoring serwera Checkmk!

Dobre praktyki bezpieczeństwa

  • Zawsze używaj HTTPS — nigdy nie wystawiaj Checkmk na HTTP w sieci produkcyjnej.
  • Ogranicz dostęp do GUI przez VPN lub whitelist IP w Apache (Require ip 10.0.0.0/8).
  • Używaj silnych, unikalnych community strings SNMP — różnych dla każdej sieci.
  • Regularnie aktualizuj Checkmk: sudo omd update (po pobraniu nowego pakietu .deb).
  • Utwórz oddzielnych użytkowników monitorowania z minimalnym dostępem zamiast używać cmkadmin do wszystkiego.
  • Skonfiguruj backup całego katalogu /omd/sites/monitoring/ — to jedyne miejsce przechowywania danych CMK.

FAQ – najczęstsze pytania o Checkmk

Czy Checkmk jest darmowy?

Tak, Checkmk Raw (CRE) jest darmowy i open source.

Czy Checkmk wymaga bazy danych?

Nie, używa RRDtool zamiast MySQL/PostgreSQL.

Jaki port używa Checkmk agent?

Domyślnie TCP 6556.

Czy Checkmk jest lepszy od Zabbix?

Zależy – Checkmk jest szybszy w wdrożeniu, Zabbix bardziej elastyczny.

Checkmk Raw to bardzo wydajny i szybki do wdrożenia system monitoringu, który dzięki automatycznemu discovery i prostocie konfiguracji pozwala uruchomić monitoring w kilka godzin. W porównaniu do Zabbix oferuje mniej ręcznej konfiguracji, ale kosztem mniejszej elastyczności. Dzięki wsparciu TLS, SNMP i agentów dla wielu systemów nadaje się zarówno do małych homelabów, jak i dużych środowisk produkcyjnych.

Bezpłatne szkolenie: Zbuduj 5 agentów AI w n8n!

Weź udział w intensywnym, praktycznym szkoleniu i naucz się tworzyć automatyzacje oraz agentów AI komunikujących się przez komunikator. W programie m.in.: RAG Chatbot, Voice Agent, Wirtualna Rada Nadzorcza, Asystentka głosowa i Claude Code Admin.

Zapisy do 23 kwietnia, 23:59

Sprawdź szczegóły: https://asdevops.pl/warsztaty/

 

 

 

 

Bezpłatny dostęp do warsztatów "Zbuduj 5 agentów AI w n8n!"

X