Monitoring eines Proxmox Clusters mit checkmk

Aus Thomas-Krenn-Wiki
Zur Navigation springen Zur Suche springen

Dieser Artikel erklärt, wie man einen Proxmox Ceph HCI Cluster (3 Nodes) mittels checkmk monitoren kann und wie die Konfiguration vorzunehmen ist. Für die Konfiguration der Ceph-Checks sehen Sie sich bitte den Artikel: Monitoring eines Proxmox VE Ceph Hosts mit checkmk.
Achtung: Diese Anleitung funktioniert nur, wenn Sie ein gültiges SSL-Zertifikat haben UND die Proxmox Nodes per DNS auflösbar sind. Für alle anderen Setups, gibt es den Punkt "Monitoring ohne DNS und SSL".

Voraussetzungen

Um einen Proxmox VE Cluster monitoren zu können mittels checkmk benötigt es folgende Komponenten:

  • einen installierten Linux Server (bevorzugt Debian 12)
  • eine vollständige Installation von Docker
  • einen betriebsbereiten, funktionalen checkMK-RAW Container (kostenfrei)
  • die Proxmox Nodes müssen per DNS auflösbar sein
  • die Proxmox Nodes benötigen ein gültiges SSL-Zertifikat

Proxmox Konfiguration

Damit checkmk die Daten von Proxmox VE abfragen kann, müssen auf Datacenter-Ebene eine Gruppe und ein zugehöriger User angelegt und berechtigt werden.

checkmk Agent Installation

Dieser Schritt muss für jeden Host gemacht werden. Auf jedem Proxmox Host muss nun der checkmk-Agent installiert werden, den Link zum Download findet man nach dem Einloggen in checkmk unter Setup -> Agents -> Linux. Wir benötigen den packaged-Agent: check-mk-agent_2.2.0p8-1_all.deb. Auf dem Proxmox Host kann man diesen dann wie folgt installieren:


root@PMX4:~# wget http://10.2.1.180:8006/cmk/check_mk/agents/check-mk-agent_2.2.0p8-1_all.deb
root@PMX4:~# dpkg -i check-mk-agent_2.2.0p8-1_all.deb

Konfiguration in checkmk

Proxmox Hosts anlegen

Dieser Schritt muss für jeden Host gemacht werden. Damit der Agent sich in checkmk auch registrieren kann, müssen wir den Host erst in checkmk anlegen. Einmal in der Web-UI einloggen und unter Setup -> Hosts -> Add Host kann man den Proxmox Host hinzufügen. Ausgefüllt werden muss:

  • Basic Settings -> Hostname: Name oder IP des Proxmox Hosts
  • Monitoring Agents -> Checkmk agent / API integrations: (API integrations if configured, else Checkmk agent)
  • Nach dem Speichern mit "Save & view folder" konfigurieren wir noch die API-Integration mittels des Spezialagents für Proxmox VE.

Proxmox User hinterlegen

Unter Setup kann man in der Suche "Proxmox" eingeben und dann "VM, Cloud, Container" mit dem Unterpunkt Proxmox VE auswählen. Mittels Add-Rule kann man nun eine Regel anlegen. Hier ist es wichtig, dass man folgende Daten hinterlegt:

  • Username : checkmk@pve hinterlegen
  • Password: relation hinterlegen
  • Conditions -> Explicit Conditions auswählen
  • Explicit Hosts: hier müssen alle in checkmk angelegten Proxmox Nodes des Clusters ausgewählt werden.

Proxmox Cluster hinterlegen

  • Setup -> Host -> Hosts > Add cluster
  • Basic settings: Hostname: pve-cluster-01 (Name des Clusters) und Nodes: Hosts des Clusters hinzufügen
  • Network address: IP address family: No IP
  • Monitoring agents: Checkmk agent / API integrations: API integrations if configured, else Checkmk agent
  • Speichern

Clusterd Services konfigurieren

  • Setup -> nach clustered suchen -> Clusterd services
  • Add Rule
  • Conditions -> Explicit Hosts -> Nodes des PVE-Clusters auswählen
  • Services: Interface fw im ersten Feld und Interface tap im zweiten Feld eintragen

Host bei checkmk registrieren

Ist der Agent auf dem Proxmox Knoten installiert, muss man den Host noch im checkmk registrieren. Dies bitte für jeden Server durchführen. Bitte passen Sie die folgenden Parameter an Ihre Umgebung an. Achtung: Wir haben den Default Port des Agent-Receivers von 8000 auf 8007 geändert.

  • -- hostname <Name oder IP des Proxmox Hosts>
  • -- server <Name oder IP + Port des checkmk-Servers>
root@PMX4:/etc/check_mk# cmk-agent-ctl register --trust-cert --hostname hostname --server checkmkserver:8007 --site cmk --user cmkadmin

Please enter password for 'cmkadmin'
Registration complete.

Monitoring ohne DNS und SSL

Proxmox Cluster Checks ohne Ceph

Diese Anleitung funktioniert nur, wenn alle Hosts per DNS erreichbar sind und die SSL-Zertifikate gültig sind! Möchten Sie die Checks nur mit IP und ohne gültiges SSL-Zertifikat haben, müssen Sie folgendes erledigen:

  • Host in checkmk anlegen
  • CheckMK Agent auf Proxmox Hosts installieren
  • Hosts mittels cmk-agent-ctl registrieren auf checkmk-server
  • Service Discovery in checkmk

Haben Sie dies gemacht, sind die Basis-Checks schonmal vorhanden.


Quelle

Foto Jonas Sterr.jpg

Autor: Jonas Sterr

Ich beschäftige mich mit den Themen Software Defined Storage, Proxmox Virtualisierung auf Basis von KVM, QEMU & Ceph im Produktmanagement der Thomas-Krenn.AG in Freyung. Proxmox ist meine absolute Leidenschaft und ich freue mich gerne über Kontaktanfragen und einen Austausch auf LinkedIn.


Das könnte Sie auch interessieren

Monitoring Plugins für Thomas-Krenn-Server
OPNsense mit Grafana visualisieren
OPNsense Telegraf Plugin Installation und Konfiguration