Add repository README
This commit is contained in:
1 parent
745719bb23
commit
f90b81606d
1 file changed
+178
@@ -0,0 +1,178 @@
|
|||||||
|
# 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:
|
||||||
|
|
||||||
|
```text
|
||||||
|
remote_access/README.md
|
||||||
|
```
|
||||||
|
|
||||||
|
Fertiges MKP:
|
||||||
|
|
||||||
|
```text
|
||||||
|
remote_access/packages/remote_access-1.4.4.mkp
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 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/
|
||||||
|
```
|
||||||
|
|
||||||
|
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:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
mkp add /pfad/zum/plugin.mkp
|
||||||
|
```
|
||||||
|
|
||||||
|
Plugin aktivieren:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
mkp enable PLUGIN_NAME VERSION
|
||||||
|
```
|
||||||
|
|
||||||
|
Beispiel für `remote_access`:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
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:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
omd restart apache
|
||||||
|
```
|
||||||
|
|
||||||
|
Installierte MKP-Pakete anzeigen:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
mkp list
|
||||||
|
```
|
||||||
|
|
||||||
|
## Releases und Versionierung
|
||||||
|
|
||||||
|
Die Plugins werden unabhängig voneinander versioniert.
|
||||||
|
|
||||||
|
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.
|
||||||
Reference in new issue
Block a user