Speichermedien für Backups gibt es reichlich. Eines der ältesten Medien sind sicherlich Bänder. Und auch wenn sie immer mehr von Cloudlösungen und Festplatten abgelöst werden gibt es sie noch immer. Die Vorteile sind sicherlich die hohen Kapazitäten in Verbindung mit den günstigen Medien. Einzig die Einstiegpreise für ein entsprechendes Laufwerk sind zunächst sicher abschreckend.

Ein Nachteil von Bändern ist sicher dass man sie nicht einfach so wie eine normale Festplatte ansprechen kann. Somit scheiden viele Backuplösungen aus und man benötigt eine auf Bandlaufwerke spezialisierte Software.

Hier kommt Bacula ins Spiel.

Im Vergleich zu anderen Backupprogrammen wie obnam, bup, attic und rsnapshot ist Bacula ein Monstrum, welches zudem eine ziemlich steile Lernkurve hat. Die Dokumentation ist umfangreich aber nicht frei von Fehlern und/oder zumindest missverständlichen Formulierungen. Dennoch lohnt es sich sehr, sich mit Bacula zu befassen.

Zunächst sollte man sich also genau überlegen was man eigentlich genau mit seinem Backup erreichen möchte. Auf Basis dieser Überlegungen kann man dann entsprechende Pools (ein Set von 1-n Bändern) planen.

Wichtig ist hierbei, unter anderem, ein tieferes Verständnis der 3 Backupmodi von Bacula:

  • Full
  • Incremental
  • Differential

Für jeden Modus können separate Bänder genutzt werden. Dies kann sehr sinnvoll sein, z.B. wenn das Backup Off-Site aufbewahrt werden soll. Man könnte z.B. einmal im Monat ein Full-Backup erstellen welches man in einem Bankschließfach unterbringt. Den Rest des Monats nutzt man dann andere Bänder für Incremental/Differential-Backups, die entweder in der Backup-Library verbleiben oder im täglichen Wechsel genutzt werden.

Der tägliche Wechsel erfordert einige Zusatzüberlegungen. Man könnte einen Pool mit der doppelten (besser dreifachen) Anzahl der eigentlich benötigten Bänder anlegen und dann immer die Hälfte davon entfernen. Hierzu muss man aber natürlich darauf achten welche Bänder welche Daten enthalten. Alternativ kann man zwei (besser drei) Pools nutzen, sollte dann aber auch zwei bzw. drei Full-Backups erzeugen, da die Pools nichts voneinander wissen.

Beide Lösungen sind nicht wirklich elegant. Es kann daher sinnvoll sein verschiedene Backuptechniken zu kombinieren. Zum Beispiel könnte man Bacula für Langzeitbackups verwenden und die Daten die sich tagtäglich ändern auf ein RDX-Laufwerk sichern. Sinnvollerweise sollten die Datenablagen (z.B. Samba-Shares) dies entsprechend widerspiegeln (z.B. Aktuelle Projekte und Archiv), damit ganz klar ist welche Daten täglich (Off-Site) gesichert werden müssen und welche nicht. Dies reduziert im Zweifel auch die nötigen Zeiten für ein Restore erheblich, wenn es (zumindest zunächst) ausreicht die tagesaktuellen Daten zurückzuspielen.

Ein weiterer Vorteil einer solchen Lösung ist es dass man den Catalog, in dem Bacula speichert welche Daten sich auf welchem Band befinden, so nochmals sichern kann ohne ein Band dafür nutzen zu müssen. Dies ist elementar wichtig, geht der Catalog verloren kann man diesen zwar mittels der Bänder neu auslesen, dies dauert aber mitunter sehr lange (Wochen).

Im nächsten Teil geht es dann um die einzelnen Bacula-Komponenten und deren Installation.

Next Post Previous Post