Die Daten der WebApp werden regelmäßig mit duplicity gesichert.
Tägliche Sicherung mit Duplicity
Duply wird jede Nacht per cronjob (user root) auf der VMMain gestartet. Danach holt seehase die Dateien ab. Auf seehase werden alte Sicherungen regelmäßig mit einem Script gelöscht. Die Konfiguration welche bestimmt, was gesichert wird, findet sich in /root/.duply/flunder-backup. Jeden Tag um 3 Uhr am Morgen wird das Backup-script angeworfen, welches Folgendes tut:
- Dump sämtlicher MySQL-Datenbanken, bis auf
information_schemaundmysql - Es wird ein inkrementelles Backup durchgeführt, es sei denn, das letzte volle Backup ist mindestens einen Monat alt. In diesem Fall wird stattdessen ein volles Backup durchgeführt. Unabhängig von der Art des Backups wird das resultierende tar-Archiv in 25MB-Stücke zerteilt, komprimiert (bzip2) und schließlich mit dem GPG-Schlüssel
0xB5DFF0A3signiert. - Ein Aufräumscript wird ausgeführt,
Es werden alle vorhandenen MySQL-Datenbanken gesichert.
Duplicity wählt die zu sichernden Dateien aus, indem es die Dateien exclude und include im Profilordner (siehe oben) einliest. Für diese Dateien gilt die folgende Syntax:
- Einträge dürfen wildcards (globs) enthalten und können entweder Ordner oder einzelne Dateien sein, die entweder im Backup enthalten sein werden (
include-Datei) oder explizit nicht (exclude-Datei) - Hat ein Eintrag ein + als Präfix, gefolgt von einem Leerzeichen, so wird dieser Eintrag wie ein
include-Eintrag behandelt, unabhängig davon, in welcher Datei er sich tatsächlich befindet - Hat ein Eintrag ein
-als Präfix, gefolgt von einem Leerzeichen, so wird dieser Eintrag wie einexclude-Eintrag behandelt, unabhängig davon, in welcher Datei er sich tatsächlich befindet
Wegen dieser etwas seltsamen Definition wird empfohlen, immer ein Präfix zu verwenden und die Dateinamen include und exclude als zufällig so benannt zu behandeln.
Weitere Dokumentation:
- duply (das genutzte Front-end): DUPLY(1) manpage oder online.
- duplicity (das genutzte Back-end): DUPLICITY(1) manpage oder online.
Vollständige Sicherung der VMMain
Eine weitere Möglichkeit, alles zu sichern. Wird nicht automatisch durchgeführt.
Für diese Variante wird Zugang zu Numerobis benötigt.
Zunächst muss die VMMain heruntergefahren werden (am besten per Login auf der VMMain und shutdown Befehl).
Nun loggt man sich auf Numerobis ein und exportiert die VMMain:
VBoxManage export vmmain -o ~/ovf/vmmain2.ova
Der Export kann nun eine ganze Weile dauern. Ist er abgeschlossen, sollte die alte Backup-Datei noch durch die neue ersetzt werden:
cd ~/ovf/ rm vmmain.ova mv vmmain2.ova vmmain.ova Der Inhalt des Ordners ~/ovf/ wird bei Veränderungen automatisch regelmäßig extern gesichert.
Abschließend kann die VMMain wieder gestartet werden:
VBoxManage startvm vmmain --type headless
Hierzu sind auch die entsprechenden Dokumentationen zum Starten der VMMain zu beachten: Starten der VMMain