# Snapshot Management: Die Kunst der Point-in-Time Sicherung

TL;DR / Management Summary Ein Snapshot ist eine Momentaufnahme des Zustands eines Datenträgers zu einem exakten Zeitpunkt. Er basiert auf der Copy-on-Write (CoW) oder Redirect-on-Write Technologie und benötigt initial fast keinen Speicherplatz. Ein Senior Admin nutzt Snapshots für schnelle Rollbacks vor riskanten Updates und als Basis für konsistente Backups. Wichtigste Regel: Ein Snapshot ist kein Backup, da er physisch auf den gleichen Festplatten liegt wie die Originaldaten!


# 1. Einführung & Technologien

Wie Snapshots ‘zaubern’.

Anstatt Daten zu kopieren, merkt sich das System den Zustand der Metadaten (Pointer).

  1. Copy-on-Write (CoW): Wenn ein Block geändert wird, wird der alte Block erst an eine andere Stelle kopiert, bevor er überschrieben wird. (z.B. LVM).
  2. Redirect-on-Write (RoW): Neue Daten werden einfach an eine freie Stelle geschrieben, der Snapshot-Pointer zeigt weiterhin auf den alten Block. (z.B. ZFS, Proxmox, NetApp). Dies ist performanter!

# 2. Snapshots in Proxmox (QEMU/ZFS)

Sicherheit per Mausklick.

Proxmox nutzt Snapshots für VMs und Container.

# CLI Kommando (Shell)

# Erstellt einen Snapshot der VM 100
qm snapshot 100 "Vor_Update_XY" --description "Riskantes Kernel-Update"

# 3. Deep Dive: VSS (Windows) & Quiescing

Konsistenz sicherstellen.

Ein Snapshot der Hardware ist wertlos, wenn die Applikation (z.B. SQL) gerade Daten im RAM hält.


# 4. Day-2 Operations: Snapshot-Hygiene

Den ‘Snapshot-Sumpf’ vermeiden.

Einer der häufigsten Gründe für Performance-Probleme im RZ sind verwaiste Snapshots.


# 5. Troubleshooting & “War Stories”

Wenn der Snapshot das System killt.

# Top 3 Fehlerbilder

  1. Symptom: VM friert beim Erstellen des Snapshots für 30 Sekunden ein.

    • Ursache: “VM Stun”. Der Hypervisor braucht zu lange, um den RAM auf die Disk zu schreiben.
    • Lösung: Schnellere Disk-Subsysteme (SSDs) nutzen oder auf RAM-Sicherung verzichten.
  2. Symptom: Speicherplatz am Host läuft schlagartig voll.

    • Ursache: Ein vergessener Snapshot sammelt alle Änderungen eines Monats.
    • Fix: zfs list -t snapshot prüfen und alte Stände löschen.
  3. Symptom: Datenbank meldet “Log Corruption” nach Rollback.

    • Ursache: Snapshot wurde ohne Quiescing/VSS erstellt.

# “War Story”: Der “Forever-Snapshot”

Ein Admin erstellte einen Snapshot einer VM vor einem Datenbank-Update. Das Update gelang, er vergaß den Snapshot. Das Ergebnis: Ein Jahr später war das Backup-Storage voll. Die Suche ergab, dass die VM durch den Snapshot 500 GB “Delta-Daten” angesammelt hatte. Beim Versuch, den Snapshot zu löschen (Mergen), war der Host für 4 Stunden ausgelastet, da er die Datenblöcke eines ganzen Jahres umschichten musste. Lehre: Implementieren Sie einen Snapshot-Monitor, der Sie täglich per Mail über Snapshots informiert, die älter als 3 Tage sind.


# 6. Monitoring & Reporting

Inventur der Momentaufnahmen.

# Snapshot Auditor Script (Bash)

# Findet alle Snapshots in Proxmox, die älter als 7 Tage sind
pvesh get /cluster/resources --type vm | jq -r '.[] | .vmid' | while read id; do
    qm listsnapshot $id | grep -v "current" | awk '$4 < (strftime("%s") - 604800) {print "VM " id " has old snapshot"}'
done

# 7. Fazit & Empfehlung

Snapshots sind ein Werkzeug für das operative Management, nicht für die Datensicherung.


# Anhang: Cheatsheet

System Befehl / Pfad
Proxmox qm snapshot <vmid> <name>
ZFS zfs snapshot <pool/dataset>@<name>
Windows vssadmin list shadows
LVM lvcreate -s -n <name> -L <size> <path>

# Referenzen