Ceph RBD Backups

We have been playing with OpenNebula and Ceph and this has included crashing our cluster several times. (6 to be honest). Last night I thought it might be a good idea to backup the test cluster so we don’t need recreate the data each time a team member (mostly me) destroys the thing.

 

 

Backup script:

#!/bin/bash
###
# Author: Rhian Resnick
# Purpose: Backup CEPH RBD using snapshots, the files that are created should be stored off the ceph cluster, but you can use ceph storage during the process of backing them up.
# This should be replaced with a mirroring configuration to Boca when we have the hardware available.
# Use the restore command to create a new rbd volume of your preferred name
 
pool=$1
if [ “$pool” == “” ]
then
     echo Usage: $0 pool
    exit 1
fi
rbd ls $pool | while read vol
do
    # Make sure the directory exists
    if [ ! -d $vol ]
    then
        mkdir $vol
    fi
    # Look up latest backup file
    LASTSNAP=`ls $vol/ | sort | tail -n 1 | cut -d "." -f 1`
    echo "Last Snap: $vol/$LASTSNAP"
    
    # Create a snap, we need this to do the diff
    NEWSNAP=`date +%y%m%d%H%M`
    echo "New Snap: $NEWSNAP"
        echo rbd snap create $pool/$vol@$NEWSNAP
        rbd snap create $pool/$vol@$NEWSNAP
    
    if [ "$LASTSNAP" == "" ]
    then
        echo rbd export-diff $pool/$vol@$NEWSNAP $vol/$NEWSNAP.diff
        rbd export-diff $pool/$vol@$NEWSNAP $vol/$NEWSNAP.diff
    else
            echo rbd export-diff --from-snap $LASTSNAP $pool/$vol@$NEWSNAP $vol/$NEWSNAP.diff
            rbd export-diff --from-snap $LASTSNAP $pool/$vol@$NEWSNAP $vol/$NEWSNAP.diff
    fi
done

Restore Script

#!/bin/bash
# Restore a rbd volume from the backups
pool=$1
vol=$2
newvol=$3
if [ "$newvol" == "" ]
then
    echo Usage: $0 pool volume newvolume
    exit 1
fi
#rbd create $pool/$newvol --size 0M
echo rbd create $pool/$newvol --size 0M
rbd create $pool/$newvol --size 0M
ls $vol | cut -d "." -f 1 | sort | while read snap
do
    echo rbd import-diff $vol/$snap.diff $pool/$newvol
    rbd import-diff $vol/$snap.diff $pool/$newvol
done

Blackboard Plugins

I am very proud of our super simple Blackboard modules and plugins.Screen Shot 2012-12-18 at 8.01.23 PM Screen Shot 2012-12-18 at 8.01.47 PM

 

 

 

Rescue a corrupt USB key

If you play with bootable usb keys eventually you will fry a mbr. This site’s instructions can fix the problem without deleting your content.

http://myhack.sojugarden.com/forum/viewtopic.php?f=9&t=66

Blackboard jMeter examination test file

A simple example for load testing and functional testing Blackboard’s 9.1 SP6 exam module.

blackboard_sp6

VWorkspace for Android

vWorkspace for Android is the best remote desktop connection client I have found for use on mobile devices. While designed to work with their vWorkspace server software the client provides an excellent rdp client which I have been using for months.

Ha Apartments are funny

So this is what I find today while playing with Tamalyn’s computer.

The names are funny.

In Orlando with a dead battery

Nothing like a walmart.

Rhian Resnick Assistant Director Middleware and Applications Dev. Sent from my iPhone

150 text messages

I received a surprise text message when I was 15 minutes from home (after a 2 hour and 15 minute drive from Boca).

The surprise was a list of red and yellow critical and warning systems messages and their associated text messages.

Lucky me…

Pollen!!!

Why do we live here again?

 

Good morning

I love waking up to SMS messages in the morning. Let’s hope this is not a trend which will continue.