# Snapshot und Restore

<p class="callout info">Zielgruppe: Betreuer · Stand: 06.11.2026</p>

Ein Raft-Snapshot sichert alle Daten von OpenBao: Secrets, Konfiguration und PKI. Im Lab ist belegt, dass sich ein Snapshot in eine leere Instanz zurückspielen lässt.

<p class="callout warning"><strong>Lab-PoC:</strong> Im Lab gibt es keine automatischen Snapshots, nur das tägliche Proxmox-Backup der VMs. Für Produktion sind automatische Snapshots außerhalb der Knoten Pflicht.</p>

## Voraussetzungen

- Admin-Token (siehe [Admin-, Break-glass- und Root-Token](https://docs.squeeze.one/books/openbao/page/admin-break-glass-und-root-token)).
- Für den Restore: der Seal-Schlüssel der Zielinstanz. Er steckt **nicht** im Snapshot.

## Vorgehen

1. Snapshot erstellen:

   ```bash
   bao operator raft snapshot save <datei>
   ```

2. Snapshot sicher ablegen. Er enthält alle Secrets, verschlüsselt mit dem Seal.
3. Restore in eine Instanz:

   ```bash
   bao operator raft snapshot restore <datei>
   ```

   - `<datei>`: Pfad zur Snapshot-Datei

<p class="callout danger">Ein Restore überschreibt alle Daten der Zielinstanz. Vorher von der Zielinstanz selbst einen Snapshot ziehen.</p>

## Prüfen

<p class="callout success">Nach dem Restore zeigt <code>bao operator raft list-peers</code> alle Knoten, und ein bekanntes Secret ist mit der erwarteten Version lesbar.</p>

## Stolperfallen

- Der Seal-Schlüssel darf nur kurz und nur im Arbeitsspeicher als Datei vorliegen (z. B. unter `/dev/shm`) und wird danach gelöscht.
- Ohne passenden Seal-Schlüssel lässt sich ein Snapshot nicht nutzen.

## Weiterführend

- [Cluster, Storage und Seal](https://docs.squeeze.one/books/openbao/page/cluster-storage-und-seal)
- [OpenBao: raft snapshot](https://openbao.org/docs/commands/operator/raft/)