Checkmk/TSM/QUICKSTART.md
2026-01-13 23:25:08 +01:00

338 lines
6.6 KiB
Markdown

# TSM Backup Monitoring - Schnellstart-Anleitung
## 🚀 Quick Start (5 Minuten)
Diese Anleitung führt Sie durch die grundlegende Installation des TSM Backup Monitoring Plugins für CheckMK.
---
## Voraussetzungen
- ✅ CheckMK 2.3.0p40 oder höher
- ✅ Python 3.6+ auf überwachten Hosts
- ✅ TSM CSV-Export verfügbar
- ✅ Root-Zugriff auf überwachte Hosts
- ✅ Site-User-Zugriff auf CheckMK Server
---
## Schritt 1: CSV-Export einrichten (5 Min)
### Option A: NFS-Mount (empfohlen)
```bash
# Auf dem überwachten Host als root
mkdir -p /mnt/CMK_TSM
echo "tsm-server:/exports/backup-stats /mnt/CMK_TSM nfs defaults,ro 0 0" >> /etc/fstab
mount -a
# Test
ls -lh /mnt/CMK_TSM/*.CSV
```
### Option B: Rsync via Cron
```bash
# Auf dem überwachten Host als root
mkdir -p /mnt/CMK_TSM
# Crontab eintragen
crontab -e
# Füge hinzu:
*/15 * * * * rsync -az tsm-server:/path/to/*.CSV /mnt/CMK_TSM/
# Manueller Test
rsync -az tsm-server:/path/to/*.CSV /mnt/CMK_TSM/
ls -lh /mnt/CMK_TSM/
```
**CSV-Format verifizieren:**
```bash
head -n 2 /mnt/CMK_TSM/*.CSV
# Erwartete Ausgabe:
# 2026-01-12 08:00:00,FIELD,SERVER_MSSQL,DAILY_FULL,Completed
# 2026-01-12 09:15:00,FIELD,DATABASE_HANA,HOURLY_LOG,Completed
```
---
## Schritt 2: Agent-Plugin installieren (2 Min)
```bash
# Auf dem überwachten Host als root
cd /usr/lib/check_mk_agent/plugins
# Plugin kopieren (anpassen an deinen Pfad)
scp user@your-server:tsm_backups_agent.py ./tsm_backups
# Oder wget (wenn auf Webserver verfügbar)
wget https://your-repo/tsm_backups_agent.py -O tsm_backups
# Ausführbar machen
chmod +x tsm_backups
# Test
./tsm_backups
```
**Erwartete Ausgabe:**
```
<<<tsm_backups:sep(0)>>>
{"SERVER_MSSQL": {"statuses": ["Completed"], "schedules": ["DAILY_FULL"], "last": 1736693420, "count": 1}}
```
**❌ Fehler "Empty output"?**
- Prüfe: Existiert `/mnt/CMK_TSM/`?
- Prüfe: Sind CSV-Dateien vorhanden? (`ls /mnt/CMK_TSM/*.CSV`)
- Prüfe: Python3 installiert? (`python3 --version`)
---
## Schritt 3: Check-Plugin installieren (3 Min)
```bash
# Auf dem CheckMK Server als Site-User
OM=/omd/sites/$(omd sites --bare | head -1)
cd $OM
# Plugin-Verzeichnis erstellen
mkdir -p local/lib/python3/cmk_addons/plugins/tsm/agent_based
# Plugin kopieren
cp /path/to/tsm_backups.py local/lib/python3/cmk_addons/plugins/tsm/agent_based/
# Rechte setzen
chmod 644 local/lib/python3/cmk_addons/plugins/tsm/agent_based/tsm_backups.py
# CheckMK neuladen
cmk -R
# Test
cmk -vv hostname | grep "TSM Backup"
```
**Erwartete Ausgabe:**
```
[agent] Received agent data: <<<tsm_backups:sep(0)>>> ...
TSM Backup SERVER_MSSQL: OK - Type=MSSQL (database), Level=FULL, Freq=daily, Status=Completed, Last=3h 15m, Jobs=1
```
---
## Schritt 4: Service Discovery (2 Min)
### Option A: WebUI
1. Gehe zu: `Setup > Hosts`
2. Wähle deinen Host aus
3. Klicke: `Service Discovery`
4. Klicke: `Full Scan`
5. Warte auf Ergebnisse
6. Klicke: `Accept all` bei neuen Services
7. Klicke: `Activate on selected sites`
### Option B: Command Line
```bash
# Einzelner Host
cmk -II hostname
# Alle Hosts
cmk -II --all
# Änderungen aktivieren
cmk -O
```
**Erwartete Services:**
```
TSM Backup SERVER_MSSQL
TSM Backup DATABASE_HANA
TSM Backup FILESERVER_FILE
...
```
---
## Schritt 5: Verifizierung (2 Min)
### 1. Services prüfen
```bash
# Status aller TSM-Services
cmk -n hostname | grep "TSM Backup"
```
**Erwartetes Ergebnis:**
```
TSM Backup SERVER_MSSQL OK - Type=MSSQL (database), Level=FULL, Freq=daily, Status=Completed, Last=3h 15m, Jobs=1
TSM Backup DATABASE_HANA OK - Type=HANA (database), Level=FULL, Freq=daily, Status=Completed, Last=5h 20m, Jobs=1
```
### 2. Labels prüfen
WebUI: `Monitor > Services > <wähle TSM-Service> > Service labels`
**Erwartete Labels:**
- `backup_type: mssql`
- `backup_category: database`
- `backup_system: tsm`
- `frequency: daily`
- `backup_level: full`
- `error_handling: strict`
### 3. Metriken prüfen
WebUI: `Monitor > Services > <wähle TSM-Service> > Service Metrics`
**Erwartete Metriken:**
- `backup_age`: [Sekunden seit letztem Backup]
- `backup_jobs`: [Anzahl Jobs]
---
## Troubleshooting Quick-Fixes
### Problem: Keine Services gefunden
```bash
# 1. Agent-Output prüfen
check_mk_agent | grep -A 5 "<<<tsm_backups"
# 2. CSV-Dateien prüfen
ls -lh /mnt/CMK_TSM/*.CSV
head /mnt/CMK_TSM/*.CSV
# 3. Plugin manuell testen
/usr/lib/check_mk_agent/plugins/tsm_backups
# 4. Discovery neu durchführen
cmk -II hostname
```
---
### Problem: Services bleiben UNKNOWN
```bash
# 1. Check manuell ausführen
cmk -nv --debug hostname | grep "TSM Backup"
# 2. Plugin-Cache löschen
cmk -R
# 3. Discovery wiederholen
cmk -II hostname
```
---
### Problem: Falsche Backup-Typen
**Node-Namen-Schema überprüfen:**
**Korrekt:**
```
SERVER_MSSQL
DATABASE_HANA_01
FILESERVER_FILE
VM_HYPERV_123
```
**Falsch:**
```
MSSQL # Zu kurz
SERVER # Kein Typ erkennbar
SERVER_12345 # Typ unklar (nur Zahl)
```
**Lösung:** Node-Namen in TSM anpassen oder Plugin erweitern
---
## Nächste Schritte
Nach erfolgreicher Installation:
### 1. Custom Views erstellen
Erstelle eine View für alle Datenbank-Backups:
```
Setup > General > Custom views > Create new view
Filter: Service labels: backup_category = database
```
### 2. Benachrichtigungen konfigurieren
Erstelle Notification Rule für kritische Backup-Fehler:
```
Setup > Notifications > Add rule
Conditions:
- Service state: CRIT
- Service labels: error_handling = strict
Contact: dba-team
```
### 3. Schwellwerte anpassen (optional)
Wenn Standard-Schwellwerte nicht passen:
```bash
# Plugin bearbeiten
vim $OM/local/lib/python3/cmk_addons/plugins/tsm/agent_based/tsm_backups.py
# Suche nach THRESHOLDS = {
# Passe Werte an, z.B.:
# "mssql": {"warn": 30 * 3600, "crit": 50 * 3600},
# CheckMK neuladen
cmk -R
cmk -II --all
```
---
## Hilfe & Support
- 📖 **README.md:** Ausführliche Feature-Übersicht und Verwendung
- 📚 **DOCUMENTATION.md:** Technische Details, API-Referenz, erweiterte Konfiguration
- 🐛 **Issues:** GitHub Issues oder CheckMK Forum
- 📧 **Kontakt:** [deine-email]@example.com
---
## Cheat Sheet
```bash
# === Agent-Seite (überwachter Host) ===
# Plugin testen
/usr/lib/check_mk_agent/plugins/tsm_backups
# CSV-Dateien prüfen
ls -lh /mnt/CMK_TSM/*.CSV
# === CheckMK-Seite (Server) ===
# Plugin neu laden
cmk -R
# Service Discovery
cmk -II hostname
# Service-Status prüfen
cmk -n hostname | grep "TSM Backup"
# Debug-Modus
cmk -vv --debug hostname | grep -A 20 "TSM Backup"
# Alle TSM-Services aktivieren
cmk -O
```
---
**Installations-Dauer:** ~15 Minuten
**Schwierigkeit:** Mittel
**Letzte Aktualisierung:** 2026-01-12
**Version:** 4.1