# 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:** ``` <<>> {"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 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 > > 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 > > 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 "<< 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