Springe zum Hauptinhalt
t.animal
Anagraphein!

Blog

Das ist kein Blog. Ich poste hier in unregelmäßigen Abständen Dinge.

Backup nach Amazon Glacier mit Duplicity

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.