2017-08-20 3 views
0

Um wirklich externe und dauerhafte Backups von meinem ZFS-Pool zu haben, möchte ich zfs Snapshots in Amazon Glacier speichern. Die Daten müssten lokal unabhängig von Amazon verschlüsselt werden, um den Datenschutz zu gewährleisten. Wie könnte ich das erreichen?Speichern von lokal verschlüsselten inkrementellen ZFS-Snapshots in Amazon Glacier

zfs send -R <pool name>@<snapshot name> | gzip | gpg --no-use-agent --no-tty --passphrase-file ./passphrase -c - | aws s3 cp - s3://<bucketname>/<filename>.zfs.gz.gpg 

oder für inkrementelle Backups: einen vorhandenen Snapshot nehmen, serialisiert es mit zfs

zfs send -R -I <pool name>@<snapshot to do incremental backup from> <pool name>@<snapshot name> | gzip | gpg --no-use-agent --no-tty --passphrase-file ./passphrase -c - | aws s3 cp - s3://<bucketname>/<filename>.zfs.gz.gpg 

Dieser Befehl

Antwort

3

Eine bestehende Snapshot kann wie folgt auf einen S3 Eimer gesendet werden sende, komprimiere es und verschlüssele es mit einer Passphrase mit gpg. Die Passphrase muss in der ersten Zeile der ./passphrase-Datei lesbar sein.

Denken Sie daran, Ihre Passphrase-Datei separat an mehreren Orten zu sichern! - Wenn Sie den Zugriff darauf verlieren, werden Sie nie wieder zu Ihren Daten gelangen!

Dies erfordert:

  • einem vorher erstellten Amazon s3 bucket
  • awscli installiert (pip install awscli) und konfiguriert ist (aws configure).
  • gpg installiert

Schließlich können S3 Lifecycle-Regeln verwendet werden, um das S3-Objekt Gletscher nach einer vorgegebenen Zeitspanne (oder unmittelbar) zu überführen.


für die Wiederherstellung:

aws s3 cp - s3://<bucketname>/<filename>.zfs.gz.gpg | gpg --no-use-agent --passphrase-file ./passphrase -d - | gunzip | sudo zfs receive <new dataset name> 
+1

Ich würde mit 'gzip empfehlen -9' oder' bzip2'. Abhängig von den Daten könnte dies besser komprimiert werden. Die Komprimierung ist hier nicht der Flaschenhals - die Netzwerkkopie wird es tun. –

Verwandte Themen