-
Notifications
You must be signed in to change notification settings - Fork 162
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
docs(velero): add documentation about velero backup restoration
- Loading branch information
Showing
2 changed files
with
28 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
# Velero Backup Restoration | ||
|
||
Velero is backup system that perform disaster recovery, and migrate Kubernetes cluster resources and persistent volumes. | ||
|
||
Using this in a Kubernetes cluster where Capsule is installed can lead to an incomplete restore of the cluster's Tenants. This is due to the fact that Velero omits the `ownerReferences` section from the tenant's namespace manifests when backup them. | ||
|
||
To avoid this problem you can use the script `velero-restore.sh` under the `hack/` folder. | ||
|
||
Below are some examples on how to use the script to avoid incomplete restorations. | ||
|
||
## Getting Started | ||
|
||
The first step we have to do is to create our tenant's namespaces backup using `velero-restore.sh`. | ||
|
||
```bash | ||
./velero-restore.sh --kubeconfig /path/to/your/kubeconfig backup | ||
``` | ||
|
||
Once completed, you can find the tenant's namespaces backup under `/tmp/tenant_${tenant_name}`. Here we are saving the information required to complete the restoration later. | ||
|
||
Now, in case of a data loss, the right thing to do is to restore the cluster with Velero at first. Once Velero has finished, you can proceed with the script to complete the restoration. | ||
|
||
```bash | ||
./velero-restore.sh --kubeconfing /path/to/your/kubeconfig restore | ||
``` | ||
|
||
Running this command, we are going to patch the tenant's namespaces manifests that are actually `ownerReferences`-less. Once the command has finished its run, you got the cluster back. |