REAR: Disaster Wiederherstellung mit Bareos über Boot-ISO

Mit Relax and Recover soll ein Disaster-Recovery über Bareos erfolgen und vom Backup-Server Bareos die benötigten Daten zu sammeln. Auf dem Backup-Server wird der komplette Server ohne folgende Verzeichnisse gesichert:

  • /var/lib/bareos
  • /var/lib/bareos/storage
  • /proc
  • /tmp
  • /var/tmp
  • /.journal
  • /.fsck
  • /snap

Voraussetzung: Es muss der Director für die bconsole über seine angegebene Adresse erreichbar sein! In der DMZ müssten ggf. Ports geöffnet werden!

Hinweis: Alle Skripte sind unter /usr/share/rear zu finden (BASH-Skripte)!

Konfiguration auf dem Client

Als erstes wird das Debian-Paket "rear" installiert (enthält keine Installation des Bareos-Filedaemons):

 

apt-get install rear bconsole

 

Es wird folgende Datei angelegt /etc/rear/site.conf:

 

# Default is to create Relax-and-Recover rescue media as ISO image
# set OUTPUT to change that
# set BACKUP to activate an automated (backup and) restore of your data
# Possible configuration values can be found in /usr/share/rear/conf/default.conf
#
# This file (local.conf) is intended for manual configuration. For configuration
# through packages and other automated means we recommend creating a new
# file named site.conf next to this file and to leave the local.conf as it is.
# Our packages will never ship with a site.conf.
OUTPUT=ISO
OUTPUT_URL=null
BACKUP=BAREOS
BAREOS_CLIENT=<hostname>-fd
BAREOS_RESTORE_JOB=<hostname>-restore
BAREOS_FILESET=LinuxAll
USE_RESOLV_CONF=( "search example.com" "nameserver 192.168.0.1" )

COPY_AS_IS_BAREOS=( /etc/bareos /var/spool/bareos /usr/lib/bareos)

 

Die folgende Datei muss angepasst werden /etc/bareos/bconsole.conf:

 

#
# Bareos User Agent (or Console) Configuration File
#

Director {
  Name = bareos-dir
  address = <IP/FQDN>
  DIRport = 9101
  Password = "Passwort-muss-gefuellt-sein" # Zufallspasswort, muss nicht angepasst werden!
  Description = "Bareos Console credentials for local Director"
}

Console {
  Name = bareos-mon # muss ebenfalls mit dem Namen im Director übereinstimmen von /etc/bareos/bareos-dir.d/console/bareos-mon.conf
  Password = "bCpS1W++Ej4VlUm1QvRnCtsbU8FAATTsT/4xfEEYawaa" # Monitoring-Passwort vom Director unter /etc/bareos/bareos-dir.d/console/bareos-mon.conf
}

 

Überprüfen der Konfiguration auf dem Client:

"bconsole" öffenen und folgendes eingeben:

 

status client=<hostname>-fd

Connecting to Client <hostname>-fd at <eigene IP>:9102
 Handshake: Immediate TLS, Encryption: TLS_CHACHA20_POLY1305_SHA256 TLSv1.3

<hostname>-fd Version: 20.0.0 (16 December 2020)  Ubuntu 18.04.5 LTS
Daemon started 17-Dez-20 20:42. Jobs: run=24 running=0, bareos.org build binary
 Sizeof: boffset_t=8 size_t=8 debug=0 trace=0 bwlimit=0kB/s
Plugin Info:
 Plugin     : bpipe-fd.so
 Description: Bareos Pipe File Daemon Plugin
 Version    : 2, Date: January 2014
 Author     : Kern Sibbald
 License    : Bareos AGPLv3
 Usage      : bpipe:file=<filepath>:reader=<readprogram>:writer=<writeprogram>
 readprogram runs on backup and its stdout is saved
 writeprogram runs on restore and gets restored data into stdin
 the data is internally stored as filepath (e.g. mybackup/backup1)


Running Jobs:
bareos-dir (director) connected at: 08-Jan-21 18:51
No Jobs running.
====

Terminated Jobs:
 JobId  Level    Files      Bytes   Status   Finished        Name
======================================================================
   232  Full    174,650    3.503 G  OK       01-Jan-21 22:37 <jobname>
====

 

Wenn REAR den Status des Clients über die BConsole nicht abfragen kann, schlägt im nächsten Schritt der Bau der ISO fehl! Hintergrund: Anhand der Abfrage des Statuses für den Client wird über eine Schleife überprüft, ob der Backup-Job läuft. Bareos kann selbst den Backup-Job in der BConsole starten (wenn es dafür eine Anweisung gibt) oder es wird während des "waiting for job to start" der Restore-Job manuell gestartet.

Jetzt kann das Rescue-Medium erstellt werden.

 

/usr/sbin/rear -v mkrescue # ohne Systembackup

 

Die ISO wird nach /var/lib/rear/output/rear-<hostname>.iso abgelegt. Hier können Alternativ oben in der Konfiguration SSH, NFS, SAMBA angegeben werden.

 

Konfiguration auf dem Server (einmalig)

Bitte folgendes anpassen /etc/bareos/bareos-dir.d/console/bareos-mon.conf:

 

Console {
  Name = bareos-mon
  Description = "Restricted console used by tray-monitor to get the status of the director."
  Password = "bCpS1W++Ej4VlUm1QvRnCtsbU8FAATTsT/4xfEEYawaa"
  CommandACL = status, .status
  JobACL = *all*
  ClientACL = *all*
}

 

 

Weitere Informationen entnehmen Sie bitte: https://github.com/rear/rear oder http://relax-and-recover.org/