Zurück zu KI
Automatisierung Profi

VMs verwalten mit Claude Code

Proxmox-API steuern, Monitoring-Skripte erstellen und Backups automatisieren — alles mit KI.

Die Proxmox API

Proxmox VE bietet eine vollständige REST-API, die du per Kommandozeile oder Skript ansprechen kannst. Statt im Web-UI zu klicken, automatisierst du alles.

API-Token erstellen

  1. Proxmox Web-UI → Datacenter → Permissions → API Tokens
  2. Neuen Token erstellen (z.B. user@pve!claude-code)
  3. Token-Secret sicher speichern

VM-Status abfragen

# Alle VMs auflisten
curl -s -k \
  -H "Authorization: PVEAPIToken=user@pve!token=SECRET" \
  "https://proxmox:8006/api2/json/nodes/pve/qemu" \
  | python3 -m json.tool

# Status einer einzelnen VM (VMID 100)
curl -s -k \
  -H "Authorization: PVEAPIToken=user@pve!token=SECRET" \
  "https://proxmox:8006/api2/json/nodes/pve/qemu/100/status/current"

Monitoring-Skript mit Claude Code

Lass dir ein Monitoring-Skript erstellen, das regelmäßig prüft:

#!/bin/bash
# monitor.sh - VM Health Check
API="https://proxmox:8006/api2/json"
TOKEN="PVEAPIToken=user@pve!token=SECRET"

for VMID in 100 103 108; do
  STATUS=$(curl -s -k -H "Authorization: $TOKEN" \
    "$API/nodes/pve/qemu/$VMID/status/current" \
    | python3 -c "import sys,json; print(json.load(sys.stdin)['data']['status'])")

  if [ "$STATUS" != "running" ]; then
    echo "WARNUNG: VM $VMID ist $STATUS!"
    # Telegram-Alert senden
  fi
done

Backup-Strategie

TypFrequenzAufbewahrung
Datenbank-DumpTäglich 02:307 Tage + 4 Wochen + 12 Monate
VM-SnapshotVor ÄnderungenLetzte 3
Full VM BackupWöchentlich4 Wochen

Automatischer Datenbank-Backup

#!/bin/bash
# backup.sh - Verschlüsselter DB-Backup
BACKUP_DIR="/opt/backups"
DATE=$(date +%Y-%m-%d_%H%M)
DB_NAME="meine_app"

# Dump erstellen und verschlüsseln
docker exec db-container pg_dump -U postgres $DB_NAME \
  | gzip \
  | openssl enc -aes-256-cbc -salt -pbkdf2 \
    -pass file:/opt/backups/.backup-key \
  > "$BACKUP_DIR/${DB_NAME}_${DATE}.sql.gz.enc"

# Alte Backups aufräumen (7 Tage behalten)
find "$BACKUP_DIR" -name "*.enc" -mtime +7 -delete

Backups sind nur nützlich, wenn du sie auch testest. Stelle mindestens einmal im Monat einen Backup wieder her und prüfe, ob die Daten vollständig sind.