Open ThomasSteinbach opened 2 years ago
Hi @ThomasSteinbach
That's a pretty neat idea!
We're currently overthinking the whole pre-backup handling for K8up v3, as it's a bit finicky. See #585. So it's possible that we integrate Kanister into K8up in the future, as it provides pretty flexible handling of such scripts. This would allow to define various hook scripts for the various backup and restore stages.
Cool. Looking forward to v3 :)
Summary
As "DevOp / Admin"\ I want "to restore application-aware backups as easy as pvc backups"\ So that "I does not bother with boilerplate code to restore my databases."
Context
K8up can restore PVC backups defined by restore objects. However it should also be possible to restore application-aware backups - exactly the other way around as those backups were made. See my implementation idea below
Implementation Ideas
For making an application-aware backup you have to annotate your pods with (for instance):
K8up will then gather the stdout and process it with restic. However the other way around should also be possible:
K8up only needs to push the restic output to the
restorecommand
. K8up only needs to create a restore job, which executes the restic restore command and pushes the output with kubectl to the target pod. I tried this approach sucessfully with the official tutorial setup. The restore job should look like following:It would be nice when K8up could wrap this functionality into its existing CRD "k8up.io/restore".