Das ist der erste Eintrag in der Kategorie Readme.md, in der ich Erfahrungen, Erfolge, Fehlschläge
und sowas dokumentieren will. Zum einen, damit ich sie nicht nochmal mache, zum anderen, damit
das Internet™ davon lernen kann.
tl;dr:
Backups mit duplicity auf Amazon Glacier lohnt sich für alle, die viele GB Backups erstellen wollen
von Daten, die sie im Fall der Fälle nicht sofort, sondern über einen längeren Zeitraum hinweg
wieder herstellen können (in meinem Fall mein Fotoarchiv). Allerdings muss man in Kauf
nehmen, die Backups nicht verifizieren zu können.
Das Szenario
Ich mache Backups nicht nur auf eine externe Platte sondern zusätzlich off-site-backups, falls meine
Bude abbrennt oder sonstige Katastrophen hereinbrechen. Da ich auch mein Fotoarchiv backupen will,
scheiden aus Kostengründen traditionelle Hostinglösungen aus (wir reden von einigen hundert GB), da
ich am liebsten für wenige Euro backupen will.
Es gibt da Anbieter (bspw. BackBlace), die so eine Art DropBox-Client
anbieten für 5$ im Monat. Aber ich wollte noch billiger. Ausserdem liegen die Daten dort
unverschlüsselt, was ich nicht so toll fand.
Eine andere Möglichkeit wäre, eine Platte bei einem Freund/Bekannten unterzubringen. Das hat den
Nachteil, dass Backups von zu Hause sind nicht möglich sind (fremde Server mal ausgeschlossen,
da zieht dann ein Backup aber schon ordentlich Traffic). Außerdem muss dann eine zweite (große)
Backupplatte her, für deren Kosten ich problemlos einige Jahre Cloud-Backup bekomme.
Die Lösung, für die ich mich entschieden habe ist Duplicity. Das
Versprechen der Software: PGP-verschlüsseltes Backup in der Cloud, in meinem Fall auf
Amazon Glacier. Nach einigen Erfahrungen hier
mein Fazit.
Duplicity auf Amazon Glacier
Backups erstellen
Alles in allem bin ich wirklich zufrieden damit, wie Backups erstellt werden. Duplicity lädt
einzelne (in meinem Fall 100MB große) Chunks in Amazon S3 hoch und diese werden dann von einer
Filterregel in den Glacier Storage verschoben. Wie das geht steht
hier.
Zuerst die Cons:
- Backups erstellen dauert. Keine Ahnung wieso, aber auch mit Gigabit-Leitung lädt die Software
nur mit etwa 15MB/s hoch, ohne den Prozessor auszulasten. Ein volles Backup dauert dadurch
einige Stunden.
- Backups verifizieren ist nicht. Ausgehender Traffic ist bei amazon recht teuer (10ct/GB). Ein
200GB Backup zu verifizieren kostet also flockige 20 Euro. Das dürfte für viele schon ein
Aussschlusskriterium sein. Meinen bisherigen Erfahrungen nach scheitern Backups aber eher am Menschen
als an der Software, deshalb nehme ich das Risiko in Kauf. Dafür erhalte ich günstiges, 100%
sicheres Storage.
- Duplicity ist Software, die auf den ersten Blick wacklig aussieht. So stirbt es häufig nicht
mit einer Fehlermeldung, sondern mit einem Stacktrace, zB wenn eine Option falsch gesetzt ist.
Python-Frickelware halt.
Jetzt die Pros:
- Der Preis. Für mein gesamtes Backup zahle ich deutlich unter 2$ pro Monat.
- Auch wenn die Software wacklig aussieht, (bisher) hat sie sich immer als solide herausgestellt
und auch (von mir) abgebrochene Backup-Jobs sauber wieder aufgenommen.
- Backups von daheim ist kein Problem, ich muss mich auf niemanden anderen verlassen. Einfach
anmachen, schlafen gehen oder warten.
Backups wieder herstellen
Wie Amazon Glacier Kosten berechnet
Was man verstehen muss ist, wie Glacier restore operations in Rechnung stellt. Es kommt nicht darauf
an, wie viel Daten man wieder herstellt, sondern mit welchem Durchsatz.
Das heißt 100GB in 24h wiederherzustellen kostet etwa das selbe, wie 17GB in 4h. Wenn ich meine
200GB wieder herstellen will und das mit 2GB/4h tue (also alle 4h einen restore-prozess von 2GB
anstoße), habe ich mein komplettes Fotoarchiv-Backup nach einem halben Monat wieder hergestellt.
Die Kosten belaufen sich 3$ für die Wiederherstellung des Glacier-Backups und 17$ für den
Datentransfer über's Internet (berechnet mit
http://liangzan.net/aws-glacier-calculator/).
Erfahrungen
Neulich musste ich tatsächlich an die Glacier-Backups, weil ich zwei Fotoordner versehentlich im
Backup und Original gelöscht hatte (längere Geschichte...). Natürlich hab ich das mit dem Durchsatz
gleich falsch gemacht und musste so für die Wiederherstellung statt der möglichen 3$ (bei 16h)
Wartezeit) 15$ bezahlen.
Duplicity zerteilt ein Backup in Volumes. Die für die Wiederherstellung benötigten Volumes lädt es
Stück für Stück runter und fordert sie zur Not aus dem Glacier an. Deshalb blockiert es dann nach
jedem Volume für 4h. Es bietet sich also an, die für die Wiederherstellung benötigten Volumes vor
Beginn mit Hilfe der manifest
-Dateien in .cache/duplicity
fest zu stellen und manuell oder
mit einem kleinen Script aus dem Glacier zu holen.
Ansonsten hat Duplicity die Fotos ordentlich wieder hergestellt. In Summe kostet mich der Spaß
jetzt also 17$ für 2×8GB (inklusive Datentransfer). Das ist immer noch deutlich günstiger als
Backblace auf den gleichen Zeitraum (Backblace 12 Monate 60$ (speichern) + 0$ (restore), Glacier:
~ 15$ (speichern) + 17$ (restore)). Und eigentlich ist der Plan ja, das Backup eher einmal
alle paar Jahre anzufassen.