← Back to team overview

openstack team mailing list archive

Re: [Glance] Replication implementations

 

On 05/02/2012 11:24 PM, Michael Still wrote:
Hi.

I'd be interested in hearing from people who have implemented some form
of replication with glance. I'm especially interested in how you went
about it. I attended the session at the dev summit, but that was forward
looking, and I am pretty sure that there wasn't any mention of current
implementations.

I'll get the ball rolling -- I have just implemented API level
replication for glance for an internal project. It uses the glance API
to replicate images from a master glance to slave glances. Its not very
smart at the moment, it just copies everything.

Current warts:
  - no support for metadata update
  - no support for filtering of what is replicated
  - maintaining amazon ec2 ids across regions requires twiddling the nova
database where this mapping is stored

Advantages of this approach:
  - API level replication means that I can run different versions of
glance at each end of the replication relationship
  - it really wasn't that hard to do

Would other people be interested in getting this code into glance,
probably as a stand alone command line tool? Or has someone done
something much better that I should be using instead?

To make your solution look incredibly complex, in TryStack, we do image replication with a Jenkins job that runs a two line bash script every 20 minutes or so that rsyncs the image_data_dir from our active Glance API server (with filesystem backend) to our passive failover Glance API server. We use a simple DRBD HA setup for the MySQL server so we aren't concerned about the Glance registry server.

So there! I have officially one-upped your simple solution ;)

-jay

p.s. Yes, I know it's not cross-region replication, but figured I would get in on the conversation anyway ;)


References