📊 Checkmk vs Zabbix vs Prometheus: Mana yang Cocok untuk Homelab?

📊 Checkmk vs Zabbix vs Prometheus: Mana yang Cocok untuk Homelab?

✨ Pendahuluan

Sebagai pengelola homelab, saya menyadari bahwa memantau infrastruktur secara real-time bukan hanya kebutuhan, tetapi juga kenikmatan tersendiri. Melihat grafik CPU, disk usage, dan notifikasi error dalam satu dashboard membuat saya merasa lebih tenang dan terkendali.

Untuk kebutuhan monitoring ini, saya menggunakan kombinasi Checkmk dan Prometheus. Namun sebelum memilih keduanya, saya juga menimbang-nimbang Zabbix, karena popularitas dan fitur lengkapnya.

Artikel ini akan membahas:

  • Apa itu Checkmk, Zabbix, dan Prometheus
  • Kelebihan dan kekurangan masing-masing
  • Cara instalasi secara umum
  • Perbandingan dalam konteks homelab
  • Pengalaman saya memakai Checkmk + Prometheus

🔎 Ringkasan Singkat Ketiga Tools

ToolTipe MonitoringModel DataVisualisasiInstallasi MudahKonsumsi Resource
CheckmkAgent-based & SNMPPush & PullWeb UI built-in✅ YaRingan
ZabbixAgent-based & SNMPPull + DBUI built-in⚠️ MenengahSedang
PrometheusPull-based + ExporterTime-seriesButuh Grafana✅ ModularRingan – Sedang

🧩 1. Checkmk

Checkmk adalah sistem monitoring berbasis agent, SNMP, dan smart auto-discovery. Sangat cocok untuk server, switch, router, dan aplikasi.

CheckMK Dashboard

✅ Kelebihan:

  • Setup cepat, UI web langsung jalan
  • Auto-discovery: mendeteksi disk, service, CPU, RAM, dll secara otomatis
  • Notifikasi built-in (email, Telegram, webhook)
  • Plugin monitoring sangat banyak
  • Mendukung agentless (SNMP) dan remote Linux/Windows
  • Docker image resmi tersedia

❌ Kekurangan:

  • Tampilan klasik (walaupun sangat fungsional)
  • Skala besar butuh versi enterprise

🧰 Cara Install (Docker)

docker run -dit -p 8080:80 --name checkmk \
  -e CMK_SITE_ID=mysite \
  -e CMK_PASSWORD=mypassword \
  checkmk/check-mk-raw:2.2.0-latest

Lalu akses via http://localhost:8080

📦 Use Case Saya:

  • Monitoring disk usage di server
  • Cek status SNMP Mikrotik
  • Pantau Docker container via Checkmk agent

🧩 2. Zabbix

Zabbix adalah solusi monitoring enterprise yang sangat lengkap dan fleksibel, dengan arsitektur client-server berbasis database.

✅ Kelebihan:

  • Visualisasi real-time built-in
  • Mendukung auto-discovery
  • Mendukung SNMP, IPMI, JMX, dan custom script
  • Sistem alert dan eskalasi yang powerful
  • Template banyak di komunitas

❌ Kekurangan:

  • Setup lebih kompleks (butuh database, agent, server, web UI)
  • UI agak lambat di server kecil
  • Konsumsi resource lebih besar

🧰 Cara Install (Docker Compose)

version: '3'
services:
  zabbix-server:
    image: zabbix/zabbix-server-mysql
    environment:
      - DB_SERVER_HOST=zabbix-db
      - MYSQL_USER=zabbix
      - MYSQL_PASSWORD=zabbix
  zabbix-web:
    image: zabbix/zabbix-web-nginx-mysql
    ports:
      - "8081:8080"
  zabbix-db:
    image: mysql:5.7
    environment:
      - MYSQL_DATABASE=zabbix
      - MYSQL_USER=zabbix
      - MYSQL_PASSWORD=zabbix

📦 Use Case Ideal:

  • Monitoring perangkat enterprise dalam jumlah banyak
  • Manajemen alarm kompleks
  • Perusahaan dengan tim IT lengkap

🧩 3. Prometheus

Prometheus adalah sistem monitoring berbasis time-series yang sangat modular dan cocok dipasangkan dengan Grafana.

Prometheus
Grafana

✅ Kelebihan:

  • Sangat ringan dan scalable
  • Semua data disimpan sebagai time-series
  • Bahasa query PromQL sangat powerful
  • Mudah digabung dengan Grafana untuk dashboard
  • Ekosistem exporter sangat luas (node_exporter, mikrotik_exporter, samba_exporter, dll)

❌ Kekurangan:

  • Tidak ada alert & UI bawaan yang user-friendly (butuh Alertmanager & Grafana)
  • Setup awal lebih teknis
  • Konfigurasi manual (scrape job, alert rules)

🧰 Cara Install (Docker Compose)

version: '3'
services:
  prometheus:
    image: prom/prometheus
    volumes:
      - ./prometheus.yml:/etc/prometheus/prometheus.yml
    ports:
      - "9090:9090"
  grafana:
    image: grafana/grafana
    ports:
      - "3000:3000"

📦 Use Case Saya:

  • Monitoring host Debian & ARM64
  • Pantau trafik SNMP Mikrotik
  • Membuat dashboard Gitea, Samba, Proxmox, uptime
  • Notifikasi via Telegram dan ntfy melalui Alertmanager

🧠 Mana yang Harus Dipilih untuk Homelab?

KebutuhanTool Ideal
Ingin setup cepat dan simpel✅ Checkmk
Monitoring + Visualisasi waktu nyata✅ Prometheus
Butuh fitur alert kompleks✅ Zabbix / Prom
Perangkat dengan SNMP✅ Checkmk / Zabbix
Ingin eksplorasi data & metrik custom✅ Prometheus
Ingin monitoring ringan untuk ARM✅ Prometheus
Monitoring perangkat legacy/enterprise✅ Zabbix

🤝 Pengalaman Saya Menggunakan Checkmk + Prometheus

Saya menemukan kombinasi keduanya sangat ideal:

  • Checkmk untuk overview cepat status server dan perangkat via SNMP
  • Prometheus + Grafana untuk data time-series dan dashboard mendetail
  • Alertmanager saya gunakan untuk notifikasi push Telegram jika container down

Keduanya bisa berjalan berdampingan di homelab saya, dan tidak saling tumpang tindih.


📝 Kesimpulan

Ketiga alat ini sangat bermanfaat untuk monitoring homelab:

  • Checkmk cocok untuk yang ingin cepat jadi dan fleksibel
  • Zabbix powerful untuk skala besar dengan kebutuhan enterprise
  • Prometheus modular, ringan, dan cocok untuk pecinta metrik
Monitoring bukan hanya soal reaktif terhadap masalah, tapi tentang mengantisipasi sebelum terjadi.

Apapun tool yang kamu pilih, pastikan kamu memahami apa yang ingin kamu awasi, seberapa dalam kamu ingin metriknya, dan bagaimana kamu ingin diberi tahu jika ada yang salah. 🎯📈