Ich habe Bacula (v.5.0.2) ausgewählt, um Backups der Daten unserer Büromitarbeiter zu erstellen.
Der Director und der Storage Daemon laufen auf einem Debian-basierten Root-Server (dem SERVER
), der von einem großen deutschen Hosting-Unternehmen gemietet wurde.
Alle wertvollen Daten und somit auch Baculas File Daemon (der CLIENT
) befinden sich auf einem Debian-basierten Samba-Server, der sich vor Ort befindet und über ADSL (~768 Kbit/s) hinter einem SOHO-Router (es handelt sich um eine gemeinnützige Organisation, die chronisch unter Geldmangel leidet) mit dem Internet verbunden ist.
Darüber hinaus CLIENT
wird die Internetverbindungalle 24 Stunden vom ISP getrenntUndseine IP ändert sichab und zu.
Ich habe es geschafft, die grundlegende Infrastruktur einzurichten und das Sichern und Wiederherstellen von Dateien erfolgreich zu testen. Aber jetzt, wo es an der Zeit ist, die automatisierten Jobs zu definieren, stehe ich vor einem Problem, das ich einfach nicht begreifen kann:
Problem
Angenommen, ich möchte einen Job pro Büroangestelltem haben und muss seine Samba-Freigabe sichern, die etwa wiegt
10GB
. Die Sicherungsebene spielt keine Rolle, da Bacula zunächst eine vollständige Sicherung durchführen muss.Dieses erste vollständige Backup schafft es jedoch nicht über die Büroleitung, bevor eine erzwungene Trennung die Arbeit nutzlos macht.
Frage
Gibt es eine Möglichkeit, die anfängliche Arbeitslast in kleinere Teile aufzuteilen, ohne mehrere Jobs (und Dateisätze) einzurichten?
Oder besser: Ist es möglich, einen laufenden Job irgendwie anzuhalten und neu zu starten, um den unvermeidlichen Verbindungsverlust zu überwinden?
Gibt es sonst noch etwas, woran ich nicht gedacht habe und das helfen könnte?
Antwort1
Die Dauer von Backups ist proportional zur Menge der zu sichernden Daten. Wenn Sie 10 G Daten verschieben müssen, wird dies einige Zeit in Anspruch nehmen (die Dauer hängt von der Geschwindigkeit Ihrer Netzwerkverbindung ab).
Darüber hinaus geht Bacula davon aus, dass Ihre Netzwerkverbindung zuverlässig ist. Es wird nicht damit gerechnet, dass die Verbindung abbricht, und das ist, ehrlich gesagt, eine vernünftige Annahme von Bacula.
DerRICHTIGDie Lösung für Ihr Problem besteht darin, den ISP zu wechseln.
Ehrlich gesagt, wenn Ihre Netzwerkverbindung so unzuverlässig ist, wie Sie es beschreiben (alle 24 Stunden unterbrochen!) und Sie die Verbindung nicht 100 % kostenlos erhalten, zahlen Sie wahrscheinlich zu viel.
Wenn Sie nicht in der Lage sind, die richtige Lösung zu implementieren, besteht Ihre beste Alternative darin, einen lokalen Storage Daemon auf der Client-Site auszuführen und dort auf die Festplatte zu sichern.
Sie können dann ein Tool wiersync
um die virtuellen Banddateien an einen anderen Speicherort zu kopieren.
Die größten Nachteile dieser Lösung sind, dass Sie (mindestens) eine zusätzliche Festplatte zum Sichern benötigen und den rsync-Job verwalten müssen (was Sie mit einem RunAfterBackup
Skript in Bacula tun können).
Je nach Bedarf kann eine USB-Festplatte als zusätzliche Festplatte ausreichen.
Die anderen Alternativen, die Sie in Ihrer Frage beschrieben haben, sind entweder fehlerhaft oder nicht möglich.
Insbesondere hat Bacula kein Konzept zum „Anhalten“ eines Backups, und das Aufteilen des Backups in mehrere Jobs (die einzige Möglichkeit, es aufzuteilen) bedeutet nur, dass ein Teiljob fehlschlägt und nicht das gesamte Backup – wenn Sie dies tun, könnten Sie trotzdem mit einem Backup enden, das Sie nicht in einen guten/konsistenten Zustand zurückversetzt, sodass Sie das Problem nicht wirklich lösen.
Antwort2
AbAusführung7.2
, Bacula unterstützt das Anhalten und Fortsetzen von Jobs (über die Befehle stop
und resume
/ restart
).