c4k-nextcloud/doc/BackupAndRestore.md

51 lines
1.9 KiB
Markdown
Raw Normal View History

2021-11-12 08:12:03 +00:00
# Backup Architecture details
![](backup.svg)
* we use restic to produce small & encrypted backups
* backup is scheduled at `schedule: "10 23 * * *"`
2022-03-19 14:26:36 +00:00
* Cloud stores files on `/var/jira`, these files are backuped. If you create a jira xml backup located in /var/jira this file will also be backed up.
2021-11-12 08:12:03 +00:00
* postgres db is backed up as pgdump
## Manual init the restic repository for the first time
1. apply backup-and-restore pod:
2022-03-19 14:26:36 +00:00
`kubectl apply -f src/main/resources/backup/backup-restore-deployment.yaml`
1. Scale backup-restore deployment up:
`kubectl scale deployment backup-restore --replicas=1`
2021-11-12 08:12:03 +00:00
1. exec into pod and execute restore pod
`kubectl exec -it backup-restore -- /usr/local/bin/init.sh`
2022-03-19 14:26:36 +00:00
1. Scale backup-restore deployment down:
`kubectl scale deployment backup-restore --replicas=0`
2021-11-12 08:12:03 +00:00
## Manual backup the restic repository for the first time
2022-03-19 14:26:36 +00:00
1. Scale Cloud deployment down:
`kubectl scale deployment cloud --replicas=0`
2021-11-12 08:12:03 +00:00
1. apply backup-and-restore pod:
2022-03-19 14:26:36 +00:00
`kubectl apply -f src/main/resources/backup/backup-restore-deployment.yaml`
2021-11-12 08:12:03 +00:00
1. exec into pod and execute restore pod
`kubectl exec -it backup-restore -- /usr/local/bin/backup.sh`
1. remove backup-and-restore pod:
`kubectl delete pod backup-restore`
2022-03-19 14:26:36 +00:00
1. Scale Cloud deployment up:
`kubectl scale deployment cloud --replicas=1`
2021-11-12 08:12:03 +00:00
## Manual restore
2022-03-19 14:26:36 +00:00
1. Scale Cloud deployment down:
`kubectl scale deployment cloud --replicas=0`
2021-11-12 08:12:03 +00:00
1. apply backup-and-restore pod:
2022-03-19 14:26:36 +00:00
`kubectl apply -f src/main/resources/backup/backup-restore-deployment.yaml`
2021-11-12 08:12:03 +00:00
1. exec into pod and execute restore pod
`kubectl exec -it backup-restore -- /usr/local/bin/restore.sh`
1. remove backup-and-restore pod:
`kubectl delete pod backup-restore`
2022-03-19 14:26:36 +00:00
1. Scale Cloud deployment up:
`kubectl scale deployment cloud --replicas=1`
1. Update index of Cloud:
Cloud > Settings > System > Advanced > Indexing