Unified backups: CloudSQL backup integration
Release notes
Problem to solve
Google have a backup service that backs up their hosted PostgreSQL instance (CloudSQL). For cloud-hosted deployments on GCP that use a managed PostgreSQL instance, Google's backup service offers a good solution based on disk snapshots and transaction logs. This backup service needs to work in concert with Unified backups to create a consistent backup that is composed of all the major data types (DB, Repositories and Files) such that a GitLab instance can be restored to a working state in the event of a disaster and needs to be recovered from a backup.
Proposal
Google backup service offers two options for backing up CloudSQL
-
On-demand backups
- Does not support point-in-time recovery. Can be initiated are a specific time.
-
Automated backups
- Support point-in-time recovery and a lower RPO. Lines up well for supporting PITR across all data types in the future.
Decide which approach leads to the most consistent backups when taking into consideration the other data (repositories and files) that need to be backed up.
Unified backups must integrate with Google's backup service to restore a GitLab instance to a known good state using the backed-up data.
If automated backups are chosen, since this service runs continuously in the background, unified backup must check that the service is running and has a valid backup of the CloudSQL DB to support a given backup run.
Intended users
Sidney (Systems Administrator)
Feature Usage Metrics
N/A
Does this feature require an audit event?
No