|
|
@@ -28,9 +28,25 @@ It creates a =restic-cli= pod on ~raspberrypi4~.
|
|
|
Select the snapshot id by running =restic --repo /data/repo snapshots --insecure-no-password=.
|
|
|
Run =restic --repo /data/repo restore <snapshot_id> /data/glusterfs --insecure-no-password= to fully restore from a snapshot.
|
|
|
|
|
|
-* Remote backup - WIP
|
|
|
+* Remote backup
|
|
|
|
|
|
-=kubectl apply -f backup.remote.pod.yaml=
|
|
|
+[[https://rclone.org/commands/rclone_sync/][Rclone sync]] is used to copy the local restic repo to a remote destination.
|
|
|
+Remote destination is currently an Oracle Object Storage called ~backup~ in ~davidnabraczkyhajos~ tenancy.
|
|
|
+The API key secret and the rclone/oci config maps are created in =backup.remote.cronjob.yaml=. Apply this before anything else, it will create a cron job that runs every Sunday at 8:00 am.
|
|
|
+
|
|
|
+** One time backup
|
|
|
+
|
|
|
+Apply =backup.remote.job.yaml=.
|
|
|
+
|
|
|
+** Scheduled backup
|
|
|
+
|
|
|
+Apply =backup.remote.cronjob.yaml=.
|
|
|
+
|
|
|
+** Restore
|
|
|
+
|
|
|
+Apply =backup.remote.pod.yaml=.
|
|
|
It creates an =rclone-cli= pod on ~raspberrypi4~.
|
|
|
=kubectl exec -it rclone-cli -- /bin/sh= gives you a shell in the pod's container.
|
|
|
-Run =rclone -vvv --progress --stats-one-line --max-stats-groups 10 --log-format date,time,UTC,longfile --fast-list --buffer-size 256Mi --oos-no-check-bucket --oos-upload-cutoff 10Mi --multi-thread-cutoff 16Mi --multi-thread-streams 3000 --transfers 3000 --checkers 64 --retries 2 --oos-chunk-size 10Mi --oos-upload-concurrency 10000 --oos-attempt-resume-upload --oos-leave-parts-on-error sync /data/repo oos:backup -vv=
|
|
|
+Run =rclone sync --progress --verbose --verbose --cache-workes 4 --transfers 4 --retries 32 oos:backup /data/repo/restore=.
|
|
|
+Use ~--dry-run~ first.
|
|
|
+
|