Backup and Restore
Backup & Restore is a service of nine Managed GKE allowing for regular backups and recovery of cluster data and configuration.
Details
Customers of nine Managed GKE need peace of mind that their cluster configuration and Persistent Volume Claim (PVC) data is backed up and can be made available when needed, for security and disaster recovery. Therefore nine regularly creates automated backups and on customer request engages in recovery and deployment of those backups (schedule and retention plan may be SLA dependent).
Data of Persistent Volumes is snapshotted and backed up in a multi-regional location, until the functionality of creating regional snapshots becomes available.
Kubernetes resource backups are saved in a GCS Bucket and spread across the zones (i.e. a, b and c) of the cluster region. For example, if the cluster is in Zürich, the resource backups stay in Zürich.
Non-Cluster Services (CloudSQL, nine Managed, etc.) have their own backup plans which are not covered by this service.
Availability
Backup/Restore is available as standard with nine Managed GKE.
Usage
- Backups of data and configuration will be automatically be taken nightly
- Backups are retained for 30 days by defaults
- You can restore namespaces yourself
File Storage (NFS) PVC Restoration
Please note that this paragraph is about the deprecated File Storage (NFS) add-on provided by Nine. Information about the Google Filestore product can be found here.
When requesting a data restoration from an NFS PVC your entire NFS drive will be mounted to a new location. You will be given access to this backup via a pod. If it is important to your security implementation that if a disaster occurs only specific PVC's data is exposed you will need to implement specific storage classes for these volumes. Please contact to discuss this.
Restoring namespaces
To create restores, the velero utility needs to be installed locally.
Make sure that your current kubecontext targets your GKE cluster by following the cluster login steps.
You can restore a complete namespace yourself. First you need to find the backup from which you want to restore. You can list all backups by executing the following command:
velero backup get -n nine-velero
Once you found the backup from which you want to restore, you can restore the whole content of one namespace into another one by using:
velero restore create -n nine-velero --from-backup <identifiedBackup> --include-namespaces <namespaceToBeRestored> --namespace-mappings <namespaceToBeRestored>:<targetNamespace>
If you want to restore the content of an existing namespace, you either delete the target namespace before restoring it or you delete all existing resources which would be restored by velero. Velero does not overwrite any existing resources.
velero restore create -n nine-velero --from-backup <identifiedBackup> --include-namespaces <namespaceToBeRestored>