linux-suse-opensuse backup disaster-recovery dr rear btrfs sles

SUSE Disaster Recovery: ReaR & Snapshots (Artikel 178)

Implementierung von Disaster Recovery unter SUSE. Erfahren Sie alles über Relax-and-Recover (ReaR) für Bare-Metal-Recovery und die Nutzung von Btrfs-Snapshots zur Datensicherung.

# SUSE Disaster Recovery: Rettung durch ReaR und Btrfs

TL;DR / Management Summary Ein Backup schützt die Daten, aber eine Disaster Recovery (DR) Strategie schützt das gesamte System. Unter SUSE verlassen wir uns auf das Duo ReaR (Relax-and-Recover) für die Wiederherstellung des nackten Blechs (Bare Metal) und Btrfs Send/Receive für die blitzschnelle Replikation von Dateisystem-Zuständen. Wer ReaR beherrscht, kann einen komplett zerstörten SLES-Server in unter 30 Minuten aus einem ISO-Image wiederbeleben.


# 1. Einführung & Architektur

Die Rettungskette.

Disaster Recovery unter SUSE folgt einem zweistufigen Prozess:

  1. System-Recovery (ReaR): Stellt Partitionierung, Bootloader und das Basis-OS wieder her.
  2. Daten-Recovery (Btrfs/Rsync): Füllt das System mit den eigentlichen Applikationsdaten.
graph TD
    A[SLES Production Host] -->|Daily Backup| B[Backup Storage: NFS / S3]
    A -->|Config Backup| C[ReaR: ISO Creation]
    C -->|Store| B
    subgraph "The Disaster"
        D[Physical Host Dead]
    end
    D --> E[New Hardware / VM]
    E -->|Boot from| C
    C -->|Restore Layout| E
    B -->|Restore Files| E
    E --> F[System Online]

# 2. Bare-Metal Recovery mit ReaR

Vom System zum ISO.

ReaR erstellt ein bootfähiges Rettungssystem, das exakt auf Ihre Hardware zugeschnitten ist.

# Installation & Konfiguration

sudo zypper install rear genisoimage syslinux

Datei: /etc/rear/local.conf

OUTPUT=ISO
OUTPUT_URL=nfs://backup-server.intern/export/rear/
BACKUP=NETFS
BACKUP_URL=nfs://backup-server.intern/export/backups/

# Rettungs-Medium erstellen

sudo rear -v mkrescue

Dies lädt ein ISO-Image auf Ihren NFS-Server. Brennen Sie dieses Image oder halten Sie es für die VM bereit.


# 3. Datenreplikation mit Btrfs Snapshots

Daten über das Netz schieben.

Nutzen Sie die Power von Btrfs (Artikel 153), um inkrementelle Backups auf einen entfernten SLES-Server zu spiegeln.

# Der Replikations-Befehl

# Erstellt einen Read-Only Snapshot
sudo btrfs subvolume snapshot -r / /snapshots/backup_today

# Sendet den Diff zum Ziel-Server
sudo btrfs send /snapshots/backup_today | ssh backup-node btrfs receive /backup/remote_host/

# 4. Day-2 Operations: Der Restore-Drill

Üben für den Ernstfall.

Ein DR-Plan ist ohne regelmäßige Tests wertlos.

  1. Erstellen Sie eine leere VM in Proxmox.
  2. Booten Sie das von ReaR erstellte ISO.
  3. Wählen Sie “Recover .
  4. ReaR partitioniert die Disk automatisch nach dem Vorbild des Originals.
  5. Nach dem Reboot: Prüfen Sie die Applikations-Konsistenz.

# 5. Troubleshooting & “War Stories”

Wenn das Rettungsboot leckt.

# Story 1: “Der Treiber-Mismatch”

Symptom: Das ReaR-ISO bootet auf der neuen Hardware, findet aber keine Netzwerkkarte oder Festplatten. Ursache: Die neue Hardware nutzt andere Treiber als der Quell-Server. ReaR packt standardmäßig nur die aktuell geladenen Module in das ISO. Lösung: Setzen Sie MODULES=( 'all_modules' ) in der local.conf. Das ISO wird größer, ist aber universeller einsetzbar.

# Story 2: “EFI vs. BIOS”

Symptom: Der Restore-Vorgang bricht beim Installieren von GRUB ab. Ursache: Der Quell-Server nutzte BIOS (Legacy), die neue VM/Hardware ist auf UEFI eingestellt. Lösung: Stellen Sie sicher, dass das Ziel-System den gleichen Boot-Modus wie das Original nutzt. ReaR kann zwar konvertieren, dies ist aber fehleranfällig.


# 6. Fazit & Empfehlung

  • ReaR: Unverzichtbar für komplexe Bare-Metal-Setups.
  • Snapshots: Btrfs ist für SUSE-Admins die schnellste Methode für lokale und entfernte Backups.
  • Backup-Ziel: Nutzen Sie NFS oder Tape-Libraries als Ziel für ReaR, um die ISOs getrennt vom System zu lagern.

# Anhang: Cheatsheet

Aufgabe Befehl
ISO erstellen rear mkrescue
Gesamtes Backup + ISO rear mkbackup
ReaR Check rear checklayout
Btrfs Snapshot btrfs subvolume snapshot -r / /snap
Btrfs Diff senden `btrfs send -p <old_snap> <new_snap>
YaST Modul Nicht vorhanden (reine CLI)
Log-Datei /var/log/rear/rear-<hostname>.log