Backup till Redbridge Bucket storage

(Jerker Montelius)

1 Inledning

Redbridge har i sin sin nya molnlösning en bucketstorage på flera terabyte. Ett exempel på vad man kan utnyttja en sådan tjänst till är att lagra sina backuper. Jag har skrivit ett exempelscript som visar på hur man kan använda det för att backa upp en CM maskin.

2 Förutsättningar

Själva upplägget bygger på att man installerar python applikationen swift.

3 backup.sh

#!/bin/bash

PREFIX="/var/CM"
PROJECT=$1
TMP="/tmp/backup\_$$"



host='https://objekt.rbcloud.net/v1.0'
id='redbridge-ab:jerker.montelius@redbridge.se'
skey='xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'
bucket='CM-backup'

mkdir $TMP
cd $PREFIX

#######################################################################
# HTpassword

cp $PREFIX/$PROJECT/htpasswd $TMP/


#######################################################################
# Subversion

svnadmin dump $PREFIX/$PROJECT/svn > $TMP/svn.dump


#######################################################################
# Git

#git bundle create $TMP/bundel.git master
git clone --mirror $PREFIX/$PROJECT/${PROJECT}.git $TMP/git

#######################################################################
# Trac

trac-admin $PREFIX/$PROJECT/trac hotcopy $TMP/trac


#######################################################################
# Jenkins

cp -r /var/lib/jenkins $TMP/jenkins


#######################################################################
# tar

D=\`date +%F\_%R\`
tar c -C /tmp -f /tmp/backup\_${D}.tgz backup\_$$


###############################################################################
# Swift

cd /tmp
swift -V 1 -A $host -U $id -K $skey upload $bucket backup\_${D}.tgz


#######################################################################
# Cleanup

rm -f /tmp/backup\_${D}.tgz
rm -fr $TMP