docs(velero): add documentation about velero-restore script

This commit is contained in:
alegrey91
2021-07-05 15:53:27 +02:00
committed by Dario Tranchitella
parent 80143ffd50
commit e1e75a093b
3 changed files with 25 additions and 0 deletions
+1
View File
@@ -39,6 +39,7 @@ Bill, at Acme Corp. can use Capsule to address any of the following scenarios:
* [Taint Namespaces](./taint-namespaces.md)
* [Assign multiple Tenants to an owner](./multiple-tenants.md)
* [Cordoning a Tenant](./cordoning-tenant.md)
* [Velero Backup Restoration](./velero-backup-restoration.md)
> NB: as we improve Capsule, more use cases about multi-tenancy and cluster governance will be covered.
@@ -0,0 +1,19 @@
# Velero Backup Restoration
Velero is a 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
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 using 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.
+5
View File
@@ -14,6 +14,11 @@ KUBECFGFILE="~/.kube/config"
KUBEOPTIONS="--kubeconfig=$KUBECFGFILE"
TMPDIR=/tmp
# Print usage to stdout.
# Arguments:
# None
# Outputs:
# print usage with examples.
usage () {
printf "Usage: $0 [flags] commands\n"
printf "Flags:\n"