Bacula

From A-Eskwiki
Jump to: navigation, search

Om backups te maken in het nieuwe systeem wordt gebruik gemaakt van Bacula. Dit is een open source, netwerkgebaseerd backup programma. Uitgebreide informatie van Bacula zelf kan gevonden worden op [1].

Onderdelen

Bacula bestaat uit een aantal onderdelen die op verschillende plekken op een netwerk kunnen draaien.

  • Director. De Director is degene die bijhoudt waar alle andere onderdelen zich bevinden en coordineert en dirigeert alle andere onderdelen. De Director gaat draaien op Claude.
  • Storage Daemon. De Storage Daemon draait op de machine waar alle backups fysiek opgeslagen worden. De Storage Daemon praat met de database voor het opslaan van metadata en de File Daemons zodat deze direct hun data kunnen sturen naar de plek waar het opgeslagen wordt. De Storage Daemon gaat draaien op Claude.
  • Database. Alle metadata over de backups wordt opgeslagen in een MySQL database. Deze hoeft alleen te praten met de Director en de Storage daemon. Omdat deze beide al op Claude draaien en de database zelf ook op Claude draait is deze niet open gesteld naar buiten toe.
  • File Daemon. Dit zijn de clients die gebackupt worden. Op dit moment draaien deze op haskell zelf en in de MailNFS VM.
  • Console. Dit is een simpel programmaatje die verbinding maakt met de Director en op die manier dingen kan doen als bestanden terugzetten en dergelijke.

Configuratiebestanden

De configuratiebestanden van elk apart onderdeel is te vinden in de map /etc/bacula op de machine waar deze geïnstaleerd is. Voor de Director, Storage Daemon en File Daemon heten deze bestanden respectievelijk bacula-dir.conf, bacula-sd.conf en bacula-fd.conf. Het gros van de configuratie, zoals wat gebackupt wordt en waar naartoe, wordt gedaan in de Director.

Versies

Omdat Bacula op verschillende plekken geïnstaleerd wordt zijn er op dit moment 2 versies die gebruikt worden en (nog) zonder problemen met elkaar praten. Op machines waar CentOS 6.4 draait is versie 5.0.0 geïnstaleerd. Op Haskell draait Proxmox waar een nieuwere versie van Bacula in de repositories staat, dus hier is versie 5.2.6 geïnstaleerd.

Bestanden terugzetten

Bestanden kunnen teruggezet worden door eerst de console te openen met het commmando bconsole op een machine waar dit geïnstaleerd is. Een uitgebreide documentatie hierover is te vinden op [2]

$ bconsole

Dit start de Console op van Bacula. Om een bestand te restoren typ restore

*restore

Hier kan je op verschillende manieren de backups selecteren die je wilt restoren. Houd hierbij rekening dat je alleen data uit een backup kan terugzetten die hij gebackupt heeft. Het is wel mogelijk om meerdere backups tegelijk te selecteren, om data over verschillende backups terug te zetten.

Nadat je de backups hebt geselecteerd waarin de data staat die je wilt terugzetten maakt bacula een index van alle files die gebackupt zijn in de geselecteerde backups. In de shell waarin je terecht komt kan je gewoon simpele commando's als ls en cd gebruiken om te navigeren. Standaard worden geen files teruggezet en je kan zelf bestanden toevoegen die teruggezet moeten worden.

* mark <wildcard>
* mark *

zal bijvoorbeeld alle files terugzetten in de directory waar je je dan in bevind. Bestanden deselecteren kan met het unmark.

Als alle gewenste files geselecteerd zijn kan je aangeven dat je klaar bent met done.

* done

Nu kan je selecteren naar welke File Daemon de backup gerestored moet worden.

Aan het einde komt een overzicht te staan van alle opties en kan je nog dingen aanpassen zoals het filepath waar de backup naar toe gerestored moet worden. Zet hier / neer als je de files op hun originele plek terug wilt hebben. Standaard is dit /tmp/bacula-restore.