Einrichtung Bareos Backuplösung

Getestet mit UCS4.4.1 und Bareos 17.2

Bareos (Backup Archiving Recovery Open Sourced) arbeitet netzwerkübergreifend und kann Daten vieler Betriebssysteme (Linux, Windows, macOS, FreeBSD, AIX, HP-UX und Solaris) sichern, archivieren und wiederherstellen. Sie können Ihre Backups auf Festplatten und Bandlaufwerken ablegen oder die Daten in der Cloud sichern. Es ist möglich, Zeitpläne für volle, inkrementelle und differenzielle Backups zu definieren. Über eine mehrsprachige Weboberfläche (das Bareos Web UI) erhalten Sie Zugriff auf die Bareos-Komponenten und auf die gesicherten Daten.

Bareos besteht aus mehreren Komponenten, die Hand in Hand arbeiten:

  • Bareos Director
  • Bareos File Daemon(s)
  • Bareos Storage Daemon(s)

Der Bareos Director (der Server) ist die Steuerzentrale, der die Datenbank (Bareos-Katalog), die angeschlossenen Clients, die File Sets (beschreiben, welche Daten Bareos sichern soll), die Zeitpläne und die Backup-Jobs selbst verwaltet. Der File Daemon ist auf jedem Client-Rechner installiert, den Bareos sichern soll. Er führt die Anweisungen des Bareos Director aus und schickt die Daten an den Storage Daemon, der sie zusammen mit ihren Attributen auf den eingerichteten Sicherungsmedien speichern kann. Im einfachsten Fall können alle Komponenten auf einem einzigen Rechner laufen (detailliertere Informationen bietet das Bareos-Handbuch).

Folgende Variabel UCR sind wichtig:

ucr search bareos

Alle anderen Configs befinden sich am Bareosserver unter /etc/bareos.

Die wichtigsten Verzeichnisse:

/etc/bareos/bareos-dir.d/fileset (Was wird gesichert und was nicht)
/etc/bareos/autogenerated/clients (Clientconfig generiert von UCS)
/etc/bareos/bareos-dir.d/schedule (Backupzeiten, Weekly...)

Bei neuen Files in diesen Verzeichnissen immer darauf achten das die Datei dem Bareosbenutzer und der Gruppe gehört.

Wir gehen hier von einer UCS VM aus, die auf Proxmox (ZFS) installiert ist. Für die Speicherung der Backups hängen wir einfach eine weitere virtuelle HDD ein. Hier auch wieder wichtig: „immer darauf achten das die Datei dem Bareosbenutzer und der Gruppe gehört.“ Den Pfad der Storage kann man mit folgender Variable ändern:

ucr get bareos/filestorage

Auch das Einrichten der Rechner aus der UCS-Domäne, die Bareos sichern soll, gelingt schnell und komfortabel. In der derzeitigen Version (Bareos 17.2.6 unter UCS 4.3 und 4.4) werden lediglich Windows- und Linux-Clients unterstützt. Um einen neuen Client in den Bareos-Backup-Plan aufzunehmen, wechseln Sie in der Univention Management Console (UMC) in die Abteilung Geräte und wählen Rechner aus. Klicken Sie in der Liste auf einen Rechnernamen. Auf der linken Seite sehen Sie unter Allgemein nun den Menüpunkt Bareos Backup. Klicken Sie auf diesen und aktivieren dann rechts die Checkbox Backup-Job aktivieren.

Nach einem Klick auf Speichern werden automatisch neue Konfigurationsdateien für den Bareos Director und für den Bareos File Daemon erzeugt. Auf dem Windows- oder Linux-Rechner installieren Sie danach den Bareos File Daemon. Abschließend gilt es, die Konfigurationsdatei vom UCS-Rechner auf den Client zu übertragen. Dazu kopieren Sie die passende Einrichtungsdatei aus dem Verzeichnis /etc/bareos/autogenerated/clients auf dem UCS-Server auf den jeweiligen Client-Rechner. Die Konfigurationsdateien enthalten zur besseren Orientierung den in der Management Console gesetzten Rechnernamen.

Zur Installation der Client-Pakete unter Linux und Windows und zu den Konfigurationsdateien der jeweiligen File Daemons gibt es ein englisches Howto, das die wichtigsten Schritte beschreibt.

Weiters setzt man den FQDN in diesem File /etc/bareos/bareos-dir.d/storage/File.conf. Da ansonsten nur vom Hostnamen ausgegangen wird. Beispiel:

file.conf
Storage {
  Name = File
  Address = bareos.supertux.lan                # N.B. Use a fully qualified name here (do not use "localhost" here).
  Password = "XXXXXXXXXXXXXXXXXxx"
  Device = FileStorage
  Media Type = File
  Collect Statistics = yes
}

Danach muss das bareos-dir.service neu gestartet werden.

Aktivierung IPV6 am Server

Bareos spricht auch IPV6. Default aber nur IPV4. Um das zu ändern editiert man diese Files /etc/bareos/bareos-dir.d/director/bareos-dir.conf, /etc/bareos/bareos-sd.d/storage/bareos-sd.conf, /etc/bareos/bareos-fd.d/client/myself.conf und fügt folgenden Bereich hinzu. Danach startet man den Director, Filedaemon und die Storage neu. Achtung, die Einrückungen müssen hier genau passen, sonst starten die Services nicht mehr.

...
Dir Addresses  = {
    ipv6 = {
        addr = ::;
    }
  }
...
...
SD Addresses  = {
    ipv6 = { addr = ::; }
  }

...
Client {
  Name = bareos-fd
  Maximum Concurrent Jobs = 20

  # remove comment from "Plugin Directory" to load plugins from specified directory.
  # if "Plugin Names" is defined, only the specified plugins will be loaded,
  # otherwise all filedaemon plugins (*-fd.so) from the "Plugin Directory".
  #
  # Plugin Directory = "/usr/lib/bareos/plugins"
  # Plugin Names = ""

  # if compatible is set to yes, we are compatible with bacula
  # if set to no, new bareos features are enabled which is the default
  # compatible = yes
  FD Addresses  = {
    ipv6 = { addr = ::; }
  }

}
systemctl restart bareos-sd.service bareos-dir.service bareos-fd.service

Überprüfen ob die Ports offen sind:

lsof -i :9101 (Director)
lsof -i :9102 (Filedaemon)
lsof -i :9103 (Storagedaemon)

Getestet auf Ubuntu 18.04

Für die Installation (neueste Version) muss ein Rository eingebunden werden. Diese Version 18.2 funktioniert nicht mit den UCS-Servern. Da die Version des Clients (Filedaemon) immer exakt die gleiche sein muss wie am Server, also 17.2. Direkt von Bareos neueste Version:

RELEASE=release/latest/
DIST=xUbuntu_$(lsb_release -sr)
URL=http://download.bareos.org/bareos/$RELEASE/$DIST 
printf "deb $URL /\n" | sudo tee  /etc/apt/sources.list.d/bareos.list
wget -q $URL/Release.key -O- | sudo apt-key add - 
apt update
apt install bareos-client -y

Installation des Clients 17.2 für Ubuntu 18.04. Direkt vom ITEAS Repository.

apt install bareos-filedaemon

Optinal die QTGUI wenn man eine Desktopworkstation benutzt:

apt install bareos-traymonitor

Danach editiert man die Datei

nano /etc/bareos/bareos-fd.d/client/myself.conf

Dort schreibt man den richtigen Namen hinein so wie dieser auch in der autogenerierten Config am Server steht. z.B. ubuntu.supertux.lan-fd Weiters editiert man die Datei

nano /etc/bareos/bareos-fd.d/director/bareos-dir.conf

Dort schreibt man das richtige Passwort von der autogenerierten Config am Server ab und ersetzt das in dieser Datei.

Event. möchte man noch Zeitpläne und Filesets anpassen. Hat man das erledigt, kann man das Backup auch schon starten.

Aktivierung IPV6 am Client

Bareos spricht auch IPV6. Default aber nur IPV4. Um das zu ändern editiert man folgendes File /etc/bareos/bareos-fd.d/client/myself.conf Achtung, die Einrückungen müssen hier genau passen.

myself.conf
Client {
  Name = ubuntudev.osit.cc-fd
  Maximum Concurrent Jobs = 20
 
  # remove comment from "Plugin Directory" to load plugins from specified directory.
  # if "Plugin Names" is defined, only the specified plugins will be loaded,
  # otherwise all storage plugins (*-fd.so) from the "Plugin Directory".
  #
  # Plugin Directory = /usr/lib/bareos/plugins
  # Plugin Names = ""
 
  # if compatible is set to yes, we are compatible with bacula
  # if set to no, new bareos features are enabled which is the default
  # compatible = yes
 
  FD Addresses  = {
    ipv6 = { addr = ::; }
  }
 
 
}

Danach startet man den Filedaemon neu.

systemctl restart bareos-filedaemon.service

Ob es funktioniert sieht man mit lsof -i :9102.

COMMAND     PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
bareos-fd 20971 root    3u  IPv6  97544      0t0  TCP *:bacula-fd (LISTEN)

FIXME

Ok, it looks like you'll need to add the following parameters to get this working:

(assuming default/out-of-the-box config filenames)

/etc/bareos/bareos-dir.d/director/bareos-dir.conf:
(Director section)
Statistics Collect Interval = XX # interval in seconds
/etc/bareos/bareos-dir.d/storage/File.conf:
(Storage section)
Collect Statistics = yes
/etc/bareos/bareos-sd.d/storage/bareos-sd.conf:
(Storage section)
Collect Job Statistics = yes

After restarting the director and the storagedaemon, I did see some values in the progress bar, but only near completion of the job (I don't have a nice backup config yet to test this properly).

Bis zur Version 16 gab es ein Admintool das man in Windows und Linux installieren konnte. Mittlerweile konzentriert sich die Entwicklung nur mehr auf die WebGUI.

Zitiat:

The Bacula/Bareos Administration tool (bat) is part of the Bareos releases up to version 16.2. Instead of further developing BAT, we will concentrate on Bareos Webui. Therefore we would like to ask for your help to improve the Bareos Webui. If you miss any functionality from BAT in Bareos Webui, please inform us on the bareos-users mailinglist.

Link: https://thehacker.blog/bareos-einrichtung-einer-neuen-backup-loesung/

Melde dich an um einen Kommentar zu erstellen.