Add garage backup info
This commit is contained in:
parent
1e9a538be9
commit
2695a79e8a
4 changed files with 67 additions and 1 deletions
1
op_guide/garage/README.md
Normal file
1
op_guide/garage/README.md
Normal file
|
@ -0,0 +1 @@
|
||||||
|
Not very generic currently, check the backup.sh script
|
65
op_guide/garage/backup.sh
Normal file
65
op_guide/garage/backup.sh
Normal file
|
@ -0,0 +1,65 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
cd $(dirname $0)
|
||||||
|
|
||||||
|
if [ "$(hostname)" != "io" ]; then
|
||||||
|
echo "Please run this script on io"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ ! -d "buckets" ]; then
|
||||||
|
btrfs subvolume create $(pwd)/buckets
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
AK=$1
|
||||||
|
SK=$2
|
||||||
|
|
||||||
|
function gctl {
|
||||||
|
docker exec garage /garage $@
|
||||||
|
}
|
||||||
|
|
||||||
|
gctl status
|
||||||
|
BUCKETS=$(gctl bucket list | tail -n +2 | cut -d " " -f 3 | cut -d "," -f 1)
|
||||||
|
|
||||||
|
for BUCKET in $BUCKETS; do
|
||||||
|
case $BUCKET in
|
||||||
|
*backup*)
|
||||||
|
echo "Skipping $BUCKET (not doing backup of backup)"
|
||||||
|
;;
|
||||||
|
*cache*)
|
||||||
|
echo "Skipping $BUCKET (not doing backup of cache)"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "Backing up $BUCKET"
|
||||||
|
|
||||||
|
if [ ! -d $(pwd)/buckets/$BUCKET ]; then
|
||||||
|
mkdir $(pwd)/buckets/$BUCKET
|
||||||
|
fi
|
||||||
|
|
||||||
|
gctl bucket allow --key $AK --read $BUCKET
|
||||||
|
rclone sync --s3-endpoint http://localhost:3900 \
|
||||||
|
--s3-access-key-id $AK \
|
||||||
|
--s3-secret-access-key $SK \
|
||||||
|
--s3-region garage \
|
||||||
|
--s3-force-path-style \
|
||||||
|
--transfers 32 \
|
||||||
|
--fast-list \
|
||||||
|
--stats-one-line \
|
||||||
|
--stats 10s \
|
||||||
|
--stats-log-level NOTICE \
|
||||||
|
:s3:$BUCKET $(pwd)/buckets/$BUCKET
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
done
|
||||||
|
|
||||||
|
# Remove duplicates
|
||||||
|
#duperemove -dAr $(pwd)/buckets
|
||||||
|
|
||||||
|
if [ ! -d "$(pwd)/snapshots" ]; then
|
||||||
|
mkdir snapshots
|
||||||
|
fi
|
||||||
|
|
||||||
|
SNAPSHOT=$(pwd)/snapshots/buckets-$(date +%F)
|
||||||
|
echo "Making snapshot: $SNAPSHOT"
|
||||||
|
btrfs subvolume snapshot $(pwd)/buckets $SNAPSHOT
|
|
@ -1,4 +1,4 @@
|
||||||
Start by following ../backup-minio
|
Start by following ../restic
|
||||||
|
|
||||||
## Garbage collect old backups
|
## Garbage collect old backups
|
||||||
|
|
||||||
|
|
Reference in a new issue