Checkmk Plugins
Sammlung eigener Plugins und Erweiterungen für Checkmk.
Dieses Repository enthält Checkmk-Erweiterungen, die für meine eigene Monitoring-Umgebung entwickelt und getestet werden. Die einzelnen Plugins werden jeweils mit Source-Code, Dokumentation und einem installierbaren MKP-Paket bereitgestellt.
Umgebung
Die Plugins werden primär entwickelt und getestet mit:
- Checkmk Community Edition
- Checkmk 2.5
- Linux-Hosts
- Windows-Hosts
- Checkmk Agent 2.5
Die Kompatibilität mit anderen Checkmk-Versionen oder der Enterprise Edition ist nicht grundsätzlich ausgeschlossen, wird aber nicht zwingend getestet.
Verfügbare Plugins
remote_access
Direkter SSH- und RDP-Zugriff auf überwachte Hosts aus der Checkmk-Weboberfläche.
Aktuelle Version: 1.4.4
Funktionen
- SSH-Zugriff auf Linux-/Unix-Hosts
- RDP-Zugriff auf Windows-Hosts
- Automatische Betriebssystemerkennung über Checkmk Host Labels
- Verwendung der von Checkmk ermittelten Host-IP
- Integration in
Setup → Hosts - Integration in Checkmk Monitoring Views
- Eigene SSH- und RDP-Icons
- Direkter SSH-Aufruf über
ssh:// - Direkter RDP-Aufruf über
rdpadmin://
Weitere Informationen:
remote_access/README.md
Fertiges MKP:
remote_access/packages/remote_access-1.4.4.mkp
Repository-Struktur
cmk-plugins/
├── README.md
│
├── remote_access/
│ ├── README.md
│ ├── CHANGELOG.md
│ ├── packages/
│ │ └── remote_access-1.4.4.mkp
│ └── src/
│ └── local/
│ └── share/
│ └── check_mk/
│
└── weitere_plugins/
Jedes Plugin erhält einen eigenen Ordner.
Dabei wird grundsätzlich folgende Struktur verwendet:
plugin_name/
├── README.md
├── CHANGELOG.md
├── packages/
│ └── plugin_name-VERSION.mkp
└── src/
└── local/
└── share/
└── check_mk/
Installation von MKP-Paketen
Das gewünschte .mkp-Paket auf den Checkmk-Server übertragen.
Anschließend als Checkmk-Site-Benutzer installieren:
mkp add /pfad/zum/plugin.mkp
Plugin aktivieren:
mkp enable PLUGIN_NAME VERSION
Beispiel für remote_access:
mkp add remote_access-1.4.4.mkp
mkp enable remote_access 1.4.4
Anschließend gegebenenfalls den Apache der Checkmk-Site neu starten:
omd restart apache
Installierte MKP-Pakete anzeigen:
mkp list
Releases und Versionierung
Die Plugins werden unabhängig voneinander versioniert.
Git-Tags verwenden deshalb folgendes Schema:
PLUGIN_NAME-vVERSION
Beispiele:
remote_access-v1.4.4
os_info-v1.0.0
Dadurch können mehrere Plugins mit unterschiedlichen Versionsständen innerhalb desselben Git-Repositories verwaltet werden.
Fertige MKP-Pakete werden zusätzlich als Download beim jeweiligen Gitea Release bereitgestellt.
Entwicklung
Der eigentliche Checkmk-Source-Code eines Plugins befindet sich unter:
PLUGIN_NAME/src/
Die Verzeichnisstruktur unterhalb von src/ entspricht dabei möglichst der späteren Struktur innerhalb der Checkmk-Site.
Beispiel:
src/local/share/check_mk/web/plugins/
Dadurch lässt sich direkt erkennen, an welcher Stelle die jeweilige Datei auf dem Checkmk-Server installiert wird.
Hinweise
Die Plugins wurden primär für meine eigene Checkmk-Umgebung entwickelt.
Vor dem Einsatz in produktiven Umgebungen sollte die jeweilige Erweiterung in einer Testumgebung geprüft werden.
Autor
Domenik Bildhauer
Lizenz
Sofern im jeweiligen Plugin keine abweichende Lizenz angegeben ist, handelt es sich um eigene Erweiterungen für Checkmk.
Checkmk ist eine Marke der Checkmk GmbH.