55 lines
1.5 KiB
Markdown
55 lines
1.5 KiB
Markdown
# borgbackup sidekick
|
|
|
|
```bash
|
|
# attach to borgbackup-sidekick
|
|
POD_NAME=$(kubectl get pod -l app=borgbackup-sidekick -n git-limbosolutions-com -o jsonpath='{.items[0].metadata.name}')
|
|
kubectl exec -it ${POD_NAME} -- bash
|
|
```
|
|
|
|
```bash
|
|
# list borg repo
|
|
POD_NAME=$(kubectl get pod -l app=borgbackup-sidekick -n git-limbosolutions-com -o jsonpath='{.items[0].metadata.name}')
|
|
kubectl exec -it ${POD_NAME} -- bash -c "\
|
|
borg list ${BORG_REPO} \
|
|
"
|
|
```
|
|
|
|
```bash
|
|
# get borg info
|
|
POD_NAME=$(kubectl get pod -l app=borgbackup-sidekick -n git-limbosolutions-com -o jsonpath='{.items[0].metadata.name}')
|
|
kubectl exec -it ${POD_NAME} -- bash -c "\
|
|
borg info ${BORG_REPO}\
|
|
"
|
|
```
|
|
|
|
```bash
|
|
POD_NAME=$(kubectl get pod -l app=borgbackup-sidekick -n git-limbosolutions-com -o jsonpath='{.items[0].metadata.name}')
|
|
# Check if repository size is greater than 4GB
|
|
kubectl exec -it ${POD_NAME} -- bash -c "\
|
|
MAX_SIZE=\$((4 * 1024 * 1024 * 1024))
|
|
SIZE_IN_BYTES=\$(\${BORG_RSH} mf@backupsrv01.dev.lan \"du -b ~/borg-repos/git.limbosolutions.com --max-depth=0 | cut -f1 \") && \
|
|
echo \"Repository size: \$((SIZE_IN_BYTES / 1024 / 1024)) MB\" && \
|
|
if [ \$SIZE_IN_BYTES -gt \$MAX_SIZE ]; then \
|
|
echo 'Repository size exceeds \$MAX_SIZE'; \
|
|
exit 1; \
|
|
else \
|
|
echo 'Repository size is within limits for offsite sync'; \
|
|
fi \
|
|
|
|
"
|
|
```
|
|
|
|
**Create borgbackup-sidekick pod:**
|
|
|
|
```bash
|
|
kubectl apply -f ../deploy/backups/borgbackup-sidekick.yaml
|
|
```
|
|
|
|
**Remove borgbackup-sidekick pod:**
|
|
|
|
```bash
|
|
# delete the sidekick pod after use
|
|
kubectl delete pod -l app=borgbackup-sidekick
|
|
```
|
|
|