Backups are done via perf-tool database backup
for the regressions and alerts.
There are things that are not backed up:
To make the system as simple as possible a single script runs once a day that uses perf-tool database backup
and then copies those gzipped backups to GCS.
We use a docker image that contains perf-tool
and gsutil
.
Edit ./images/backup/backup.sh
to add the new config name and then:
$ make push_backup
To test backups you can manually create a job from the cronjob:
$ kubectl create job --from=cronjob/perf-cockroachdb-backup-daily cdb-backup-manual-005
And then watch the logs for that job as it runs:
$ kubectl logs -f job/cdb-backup-manual-005
kubectl port-forward perf-cockroachdb-0 26257`
perf-tool database restore alerts --config=$config --in=alerts.dat --connection_string=$connection perf-tool database restore regressions --config=$config --in=regressions.dat --connection_string=$connection perf-tool database restore shortcuts --config=$config --in=regressions.dat --connection_string=$connection