jfreundJFBackup
JFBackup

Funktionen

Ein Gedanke pro Kapitel, vom ersten Start bis zum Skript, das nachts läuft. Die Bilder stammen aus der Konsole mit Demodaten.

In wenigen Schritten eingerichtet

Einrichtungsassistent · Server, Verbindung oder Agent

Beim ersten Start der Konsole fragt ein Assistent, was dieser Computer tun soll: der Backup-Server sein, sich mit einem Server verbinden, der schon anderswo läuft, oder sich als Agent sichern lassen. Für einen Server fragt er nach einem Datenordner, ob der Server nur auf diesem Computer oder im Netzwerk erreichbar ist, nach dem ersten Administrator und einem ersten Repository. Dann richtet er den Dienst ein, meldet dich an und öffnet den Job-Assistenten.

Selbst registrieren kann sich niemand: Der erste Administrator entsteht mit dem einmaligen Setup-Token des Servers, jedes weitere Konto legt ein Administrator an.

Die Willkommensseite des Einrichtungsassistenten mit drei Möglichkeiten: Backup-Server auf diesem Computer, mit einem vorhandenen Server verbinden und diesen Computer als Agent sichern lassen.

Ein Job in sieben Schritten

Name und Art · Quelle · Ziel · Aufbewahrung · Verschlüsselung · Zeitplan · Zusammenfassung

Ein Assistent führt durch jeden Job. Er sichert Dateien und Ordner auf dem Server oder einem Agenten, kopiert die Restore-Points eines anderen Jobs in ein zweites Repository, schreibt den neuesten Punkt auf Band, sichert ein ganzes Volume oder virtuelle Maschinen.

Zeitpläne laufen stündlich, täglich, wöchentlich, monatlich oder nach einem Cron-Ausdruck, in jeder Zeitzone, und der Assistent zeigt die nächsten Läufe. Bei der Zeitumstellung läuft eine ausgefallene Uhrzeit direkt danach und eine doppelte nur einmal. Die Aufbewahrung behält eine Anzahl Punkte sowie tägliche, wöchentliche und monatliche; Verschlüsselung mit Passphrase und Kompressionsstufe stellst du je Job ein, und ein Schalter macht den Schutz laufend.

Der Schritt Zeitplan im Job-Assistenten: wöchentlich montags bis freitags um 02:00 in der Zeitzone Europe/Berlin, die nächsten fünf Läufe und der Schalter für laufendes Sichern mit seinem RPO.

Jeder Rechner in einer Liste

Server und Agenten · Betriebssystem · Status · letzter Kontakt

Der Backup-Server und alle Agenten stehen in einer Liste mit Rolle, Betriebssystem, Status, letztem Kontakt und Anzahl der Jobs. Von hier aus koppelst du einen neuen Agenten mit einem Einmal-Code, installierst einen per SSH auf einem Linux-Rechner, prüfst eine Verbindung, änderst die Ordner, die ein Rechner freigibt, oder entfernst ihn, was sein Zertifikat sperrt.

Jeder Agent gibt zwei Arten von Ordnern frei: die, die er sichert, und die, in die er zurückschreiben darf. Außerhalb davon liest und schreibt er nichts.

Die Seite Server und Agenten: sieben Hosts mit Ubuntu, Windows Server und Debian, sechs online und einer offline, mit letztem Kontakt und Anzahl der Jobs.
Server und Agenten mit Demodaten.

Wiederherstellen ohne Überraschungen

Restore-Point · Inhalt · Ziel · Optionen · Zusammenfassung

„Vorhandene Dateien werden nie stillschweigend überschrieben“ steht als erste Zeile im Wiederherstellungs-Assistenten, und so ist es auch. Du wählst einen Restore-Point, darin die Dateien und Ordner, dann das Ziel: den Originalort oder einen anderen Ordner, auf dem Server oder einem Agenten. Für Dateien, die es schon gibt, entscheidest du, ob sie übersprungen, umbenannt oder ersetzt werden.

Wiederhergestellte Dateien entstehen neben ihrem Ziel und werden erst umbenannt, wenn sie vollständig sind. Eine abgebrochene Wiederherstellung hinterlässt also nie eine halbe Datei.

Der Schritt Inhalt im Wiederherstellungs-Assistenten: die Wahl zwischen allem und einer Auswahl, darunter der geöffnete Ordner D:\Daten mit zwei gewählten Einträgen.

Speicher, in den du hineinsiehst

Repositories · Ersparnis · Unveränderlichkeit · Band

Jedes Repository zeigt, wie voll es ist, wie viele Restore-Points es hält, für wie viele Daten sie stehen und wie viel Deduplizierung und Kompression sparen. Es sagt, ob die Daten verschlüsselt sind und wie viele Tage Restore-Points unveränderlich bleiben, und es warnt, wenn weniger als ein Zehntel frei ist. Prüfen und Aufräumen startest du auf derselben Seite.

Eine virtuelle Bandbibliothek schreibt vollständige Restore-Points auf Bänder in Dateien, in Medienpools mit Schreibschutz, und setzt auf dem nächsten Band fort, wenn eines voll ist. Bänder lassen sich ohne das Repository zurücklesen, sogar ohne den Server.

Die Seite Repositories im dunklen Design: drei Repositories mit 4,70 TB, 18,6 TB und 400 GB frei, ihren Restore-Points, den gesicherten Daten, einer Ersparnis von etwa 2 bis 3 zu 1, der Verschlüsselung und einer Unveränderlichkeit von aus, 30 und 365 Tagen.
Drei Repositories mit Demodaten.

Jede Sitzung festgehalten

Sitzungen · Vorgänge · Hinweise · Audit-Protokoll · Benachrichtigungen

Das Monitoring listet jede Sitzung mit Ergebnis, Dauer und Datenmenge. Öffnest du eine, siehst du, wie viele Dateien gelesen wurden, wie viel neu gespeichert wurde, wie gut Deduplizierung und Kompression gewirkt haben, und ihr Protokoll Zeile für Zeile. Weitere Reiter zeigen, was gerade läuft, offene Hinweise und das Audit-Protokoll jeder Änderung.

Fehler, oder jede Sitzung, kommen auf Wunsch per E-Mail und Web-Hook, dazu eine tägliche Zusammenfassung zu einer Uhrzeit deiner Wahl. Ein zentraler Server kann außerdem die JFBackup-Server anderer Standorte beobachten und ihre Jobs, ihren Speicher und ihre Hinweise in seiner eigenen Übersicht zeigen.

Die Seite Monitoring: eine Liste von Sicherungssitzungen mit den Abzeichen Erfolgreich und Fehlgeschlagen und die Details einer Sitzung mit Dauer, Dateien, gelesenen und neu gespeicherten Daten, einer Deduplizierung von 2,6 zu 1, einer Kompression von 1,8 zu 1 und ihrem Protokoll.

Virtuelle Maschinen, direkt aus dem Backup

QEMU/KVM · Sofortstart · Zusammenführen · Startprüfung

Auf einem Linux-Backup-Server findet JFBackup die Maschinen unter QEMU/KVM und sichert sie im laufenden Betrieb, alle Platten im selben Moment; der nächste Lauf liest nur die Blöcke, die sich geändert haben. Eine ausgeschaltete Maschine wird aus ihren Plattendateien gelesen.

Der Sofortstart bootet eine Maschine direkt aus einem Restore-Point, ohne Netzwerk oder in einem abgeschotteten Netz. Was sie schreibt, landet in einer eigenen Datei, der Restore-Point bleibt unverändert. Zusammenführen holt die laufende Maschine in einen eigenen Ordner, Beenden verwirft die Änderungen. Die Startprüfung startet einen Restore-Point auf dieselbe abgeschottete Weise, prüft, ob er weiterläuft, auf seiner Konsole einen Text zeigt oder auf einem Port antwortet, verwirft dann alles und behält das Ergebnis.

Der Dialog Sofortstart: ein Restore-Point des nächtlichen VM-Jobs, die Maschine dc02, ihr Arbeitsspeicher und die Wahl zwischen keinem Netzwerk und einem isolierten Netz.

Skripte und Automatisierung

bcctl · Ausgabe als JSON · klare Rückgabewerte

Alles, was ein Skript braucht, steckt in bcctl, dem Kommandozeilen-Client: einen Server einrichten, anmelden, Jobs starten und auf sie warten, wiederherstellen, prüfen, Protokolle und das Audit-Protokoll lesen, Updates und das Signieren eigener Releases. Mit --json antwortet es in JSON, und seine Rückgabewerte sagen dem Skript, was passiert ist: 0 erledigt, 1 abgelehnt oder fehlgeschlagen, 2 falscher Aufruf, 3 keine Verbindung oder ein nicht vertrauter Server.

# einmal anmelden; eine unbekannte Zertifizierungsstelle wird gezeigt und bestätigt
$ bcctl --server https://backup.corp.local:7642 login --user admin
# einen Job starten und auf das Ergebnis warten
$ bcctl run "Mailserver" --wait
# einen Punkt in einen Ordner zurückholen, vorhandene Dateien umbenennen
$ bcctl restore POINT --target /srv/restore --conflict rename --wait
# einen Bandsatz ganz ohne Server lesen
$ bcctl tape extract TAPEFILE --to /srv/restore --kit KITFILE
Teil von jfreund.orgGebaut mit JFLibImpressumDatenschutz