Skip to content
A RightScale/Amazon EC2 EBS library
Ruby
Find file
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
lib
test
.document
.gitignore
Gemfile
LICENSE.txt
NOTICE
README.rdoc
Rakefile
VERSION
ebs_conductor.gemspec

README.rdoc

ebs_conductor

The EBS Conductor is a library for managing Amazon Elastic Block Storage volumes and snapshots. It is designed to persist a specific set of data (a “lineage”) between different compute instances.

EBS Conductor can be used on it's own, but it's most powerful when executed on an EC2 instance using Chef, and the ebs_conductor cookbook

Examples

Attach a new 1GB blan volume in the lineage “foobar” to a linux box at /dev/sdb1

ebs_conductor = Rgeyer::Gem::EbsConductor.new('...','...')
ebs_conductor.attach_from_lineage('i-abcd1234', 'foobar', 1, '/dev/sdb1')

Attach a specific snapshot to a 1GB volume in the lineage “foobar” to a linux box at /devb/sdb1

ebs_conductor = Rgeyer::Gem::EbsConductor.new('...','...')
ebs_conductor.attach_from_lineage('i-abcd1234', 'foobar', 1, '/dev/sdb1' {:snapshot_id => 'snap-abcd1234'})

Snapshot the lineage “foobar”, do not purge any old snapshots in the lineage

ebs_conductor = Rgeyer::Gem::EbsConductor.new('...','...')
ebs_conductor.snapshot_lineage('foobar')

Snapshot the lineage “foobar”, and purge old snapshots so that only 7 remain

ebs_conductor = Rgeyer::Gem::EbsConductor.new('...','...')
ebs_conductor.snapshot_lineage('foobar', {:history_to_keep => 7})

Snapshot the lineage “foobar” from the specified volume_id

This is useful if you're trying to start a lineage from a “naked” instance, or if you are trying to create a new lineage from an existing one

ebs_conductor = Rgeyer::Gem::EbsConductor.new('...','...')
ebs_conductor.snapshot_lineage('foobar', {:history_to_keep => 7, :volume_id => 'vol-abcd1234'})

List of To Do Items

  • Support for stripes in a lineage

Copyright

Copyright © 2011 Ryan Geyer. See LICENSE.txt for further details.

Something went wrong with that request. Please try again.