From f3e3ff028258b03664bfcafc20714263c459aee3 Mon Sep 17 00:00:00 2001 From: Domenik Bildhauer Date: Sun, 16 Aug 2026 20:05:22 +0200 Subject: [PATCH] Update plugin documentation --- README.md | 181 +++++++----------------------- os-info/README.md | 139 +++++++---------------- remote_access/README.md | 237 +++++----------------------------------- 3 files changed, 111 insertions(+), 446 deletions(-) diff --git a/README.md b/README.md index 809befc..b37ebc9 100644 --- a/README.md +++ b/README.md @@ -1,178 +1,79 @@ -# Checkmk Plugins +# 🔍 Checkmk Plugins -Sammlung eigener Plugins und Erweiterungen für Checkmk. +![Checkmk](https://img.shields.io/badge/Checkmk-2.5.x-15d1a0) +![Edition](https://img.shields.io/badge/Edition-Community-blue) +![Plugins](https://img.shields.io/badge/Plugins-2-informational) -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. +Sammlung eigener Plugins und Erweiterungen für **Checkmk Community 2.5.x**. -## Umgebung +## 📦 Verfügbare Plugins -Die Plugins werden primär entwickelt und getestet mit: +### 🔗 Remote Access +Direkter SSH- und RDP-Zugriff aus der Checkmk-Weboberfläche. **Version:** `1.4.4` -- Checkmk Community Edition -- Checkmk 2.5 -- Linux-Hosts -- Windows-Hosts -- Checkmk Agent 2.5 +- 🐧 SSH für Linux-/Unix-Systeme +- 🪟 RDP für Windows +- automatische Erkennung über Checkmk Host Labels +- Integration in `Setup → Hosts` und Monitoring Views +- eigene SSH-/RDP-Icons -> Die Kompatibilität mit anderen Checkmk-Versionen oder der Enterprise Edition ist nicht grundsätzlich ausgeschlossen, wird aber nicht zwingend getestet. +➡️ [Dokumentation](remote_access/README.md) · 📦 [MKP](remote_access/packages/remote_access-1.4.4.mkp) ---- +### 🖥️ OS Info +Zeigt Betriebssysteminformationen als eigenen Checkmk-Service. **Version:** `1.0.0` -## Verfügbare Plugins +- 🐧 Linux · 🪟 Windows · 🍎 macOS +- Betriebssystem / Distribution und Version +- Windows-Build, Architektur und Kernel-Version -### remote_access +➡️ [Dokumentation](os-info/README.md) · 📦 [MKP](os-info/dist/os_info-1.0.0.mkp) -Direkter SSH- und RDP-Zugriff auf überwachte Hosts aus der Checkmk-Weboberfläche. +## 🛠️ Umgebung und Kompatibilität -**Aktuelle Version:** `1.4.4` +Primär entwickelt und getestet mit Checkmk Community Edition 2.5.x, Checkmk Agent 2.5 sowie Linux- und Windows-Hosts. -#### Funktionen +> Andere Checkmk-Versionen oder Editionen können funktionieren, werden aber nicht zwingend getestet. -- 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: - -```text -remote_access/README.md -``` - -Fertiges MKP: - -```text -remote_access/packages/remote_access-1.4.4.mkp -``` - ---- - -## Repository-Struktur +## 📂 Repository-Struktur ```text cmk-plugins/ ├── README.md -│ ├── remote_access/ │ ├── README.md │ ├── CHANGELOG.md │ ├── packages/ -│ │ └── remote_access-1.4.4.mkp │ └── src/ -│ └── local/ -│ └── share/ -│ └── check_mk/ -│ -└── weitere_plugins/ +└── os-info/ + ├── README.md + ├── CHANGELOG.md + ├── PROJECT.md + ├── LICENSE + ├── dist/ + └── src/ ``` -Jedes Plugin erhält einen eigenen Ordner. - -Dabei wird grundsätzlich folgende Struktur verwendet: - -```text -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: +## 📥 Installation von MKP-Paketen ```bash mkp add /pfad/zum/plugin.mkp -``` - -Plugin aktivieren: - -```bash mkp enable PLUGIN_NAME VERSION ``` -Beispiel für `remote_access`: +Je nach Plugin anschließend `cmk -R` oder bei Web-Erweiterungen `omd restart apache`. Details stehen in der jeweiligen Plugin-README. -```bash -mkp add remote_access-1.4.4.mkp -mkp enable remote_access 1.4.4 -``` +## 🏷️ Releases und Versionierung -Anschließend gegebenenfalls den Apache der Checkmk-Site neu starten: +Plugins werden unabhängig versioniert. Git-Tags verwenden das Schema `PLUGIN_NAME-vVERSION`, z. B. `remote_access-v1.4.4` oder `os_info-v1.0.0`. -```bash -omd restart apache -``` +## ⚠️ Hinweise -Installierte MKP-Pakete anzeigen: +Vor dem produktiven Einsatz sollte jede Erweiterung zunächst in einer Testumgebung geprüft werden. -```bash -mkp list -``` +## 👤 Autor -## Releases und Versionierung +Domenik Bildhauer -Die Plugins werden unabhängig voneinander versioniert. +## ⚖️ Lizenz -Git-Tags verwenden deshalb folgendes Schema: - -```text -PLUGIN_NAME-vVERSION -``` - -Beispiele: - -```text -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: - -```text -PLUGIN_NAME/src/ -``` - -Die Verzeichnisstruktur unterhalb von `src/` entspricht dabei möglichst der späteren Struktur innerhalb der Checkmk-Site. - -Beispiel: - -```text -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. \ No newline at end of file +Die Lizenz ist im jeweiligen Plugin dokumentiert. Checkmk ist eine Marke der Checkmk GmbH. diff --git a/os-info/README.md b/os-info/README.md index 49c88e0..89e3f9c 100644 --- a/os-info/README.md +++ b/os-info/README.md @@ -1,161 +1,102 @@ -# Checkmk OS Info +# 🖥️ Checkmk OS Info -MKP-Erweiterung für **Checkmk Community 2.5.x**, die auf überwachten Hosts einen eigenen Service **„Betriebssystem“** bereitstellt. +![Version](https://img.shields.io/badge/Version-1.0.0-blue) +![Checkmk](https://img.shields.io/badge/Checkmk-2.5.x-15d1a0) +![API](https://img.shields.io/badge/Check%20API-V2-informational) +![License](https://img.shields.io/badge/License-GPL--2.0-lightgrey) -## Funktionen +MKP-Erweiterung für **Checkmk Community 2.5.x**, die pro überwachten Host einen Service **„Betriebssystem“** bereitstellt. -Der Service zeigt unter anderem: +⬅️ [Zurück zur Plugin-Übersicht](../README.md) + +## ✨ Funktionen - Betriebssystem bzw. Linux-Distribution - Betriebssystem-Version / Windows-Build -- Architektur -- Kernel-Version +- Architektur und Kernel-Version - OS-ID und Version-ID +- 🐧 Linux · 🪟 Windows · 🍎 macOS -Unterstützt werden Linux, Windows und grundsätzlich auch macOS. +## 📥 Installation des MKP -## Repository-Struktur - -```text -checkmk-os-info/ -├── src/ -│ ├── agents/ -│ │ ├── plugins/ -│ │ │ └── os_info -│ │ └── windows/ -│ │ └── plugins/ -│ │ └── os_info.ps1 -│ └── cmk_addons_plugins/ -│ └── os_info/ -│ ├── agent_based/ -│ │ └── os_info.py -│ └── checkman/ -│ └── os_info -├── dist/ -│ └── os_info-1.0.0.mkp -├── CHANGELOG.md -├── LICENSE -└── README.md -``` - -## Installation des MKP - -Das fertige Paket befindet sich unter: - -```text -dist/os_info-1.0.0.mkp -``` - -Auf den Checkmk-Server kopieren und als Site-Benutzer installieren: +Paket: `dist/os_info-1.0.0.mkp` ```bash mkp add /tmp/os_info-1.0.0.mkp mkp enable os_info 1.0.0 cmk -R -``` - -Kontrolle: - -```bash mkp list ``` -Der Eintrag `os_info` sollte als `Enabled (active on this site)` erscheinen. +## 🐧 Agent-Plug-in für Linux / macOS -## Agent-Plug-in für Linux/macOS - -Nach Aktivierung des MKP liegt das Plug-in im lokalen Site-Verzeichnis: +Nach Aktivierung: ```text ~/local/share/check_mk/agents/plugins/os_info ``` -Auf den Zielhost kopieren: - -```bash -scp ~/local/share/check_mk/agents/plugins/os_info \ -root@HOST:/usr/lib/check_mk_agent/plugins/os_info -``` - -Danach auf dem Zielhost: +Auf den Zielhost kopieren und testen: ```bash +scp ~/local/share/check_mk/agents/plugins/os_info root@HOST:/usr/lib/check_mk_agent/plugins/os_info chmod 755 /usr/lib/check_mk_agent/plugins/os_info /usr/lib/check_mk_agent/plugins/os_info ``` -Die Ausgabe muss mit folgender Sektion beginnen: +Die Ausgabe muss mit `<<>>` beginnen. -```text -<<>> -``` +## 🪟 Agent-Plug-in für Windows -## Agent-Plug-in für Windows - -Nach Aktivierung liegt die PowerShell-Datei auf dem Checkmk-Server unter: +Quelldatei: ```text ~/local/share/check_mk/agents/windows/plugins/os_info.ps1 ``` -Auf dem Windows-Host nach folgendem Verzeichnis kopieren: +Ziel: ```text C:\ProgramData\checkmk\agent\plugins\os_info.ps1 ``` -## Service Discovery - -Auf dem Checkmk-Server zunächst prüfen, ob die Agent-Sektion ankommt: +## 🔎 Service Discovery ```bash cmk -d HOSTNAME | grep -A2 '^<< ~/var/log/web.log omd restart apache ``` -Danach die betreffende Seite neu laden und prüfen: - -```bash -cat ~/var/log/web.log -``` - -## Status 1.4.4 +## ✅ Status 1.4.4 | Funktion | Status | |---|---| @@ -247,7 +85,7 @@ cat ~/var/log/web.log | Verwendung der Host-IP | ✅ | | RDP aus Monitoring-Problemansicht | ⏳ Noch abschließend zu testen | -## Repository-Struktur +## 📂 Repository-Struktur ```text remote_access/ @@ -256,24 +94,9 @@ remote_access/ ├── packages/ │ └── remote_access-1.4.4.mkp └── src/ - └── local/ - └── share/ - └── check_mk/ - └── web/ - ├── plugins/ - │ ├── wato/ - │ │ └── remote_access_setup.py - │ └── views/ - │ └── remote_access_views.py - └── htdocs/ - └── images/ - └── icons/ - ├── remote_access_ssh.svg - └── remote_access_rdp.svg + └── local/share/check_mk/ ``` -## Lizenz +## ⚖️ Lizenz -Dieses Plugin wurde für den Einsatz mit Checkmk Community entwickelt. - -Checkmk ist eine Marke der Checkmk GmbH. \ No newline at end of file +Dieses Plugin wurde für den Einsatz mit Checkmk Community entwickelt. Checkmk ist eine Marke der Checkmk GmbH.