RubyGems.org

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 © 2011 Ryan Geyer. See LICENSE.txt for further details.

installgem install ebs_conductor -v 0.0.2
Authors

Ryan Geyer

4,867 total downloads 1,184 for this version
Owners

94267d3c71d34c5a3f2777774afb30c2

Gemfile
gem 'ebs_conductor', '~> 0.0.2'
Versions
  1. 0.0.4 July 8, 2011 (13.5 KB)
  2. 0.0.3 June 22, 2011 (13.5 KB)
  3. 0.0.2 June 6, 2011 (13.5 KB)
  4. 0.0.1 June 2, 2011 (13.5 KB)