← Back to team overview

openstack team mailing list archive

Re: [Glance] Replication implementations

 

I'm working on a patch to at least make the glance UUID -> S3 image ID
not totally depend on an on-demand insertion order as it does now.

Agreed, collisions are inevitable given the relative domain and range
sizes (122 unique bit UUID versus 32-bit hex string) - in testing,
the first colliding UUID tends to occur after ~75k-80k images IDs
have been generated.

So at least it would be useful for smaller deployments to have a
semi-predictable ID mapping (modulo collisions).

For larger deployments, the mapping data to be replicated could be
much reduced by limiting it to the colliding IDs.

Cheers,
Eoghan

> Alternatively, we could just consider the ec2 mapping layer to be
> global data that must be replicated somehow across the system.  I
> don't think we can really ensure no collisions mapping from uuid ->
> ec2_id deterministically, and I don't see a clear path forward when
> we do get a collision.
> 
> Vish
> 
> On May 8, 2012, at 12:24 AM, Michael Still wrote:
> 
> > On 04/05/12 20:31, Eoghan Glynn wrote:
> > 
> > Sorry for the slow reply, I've been trapped in meetings.
> > 
> > [snip]
> > 
> >> So the way things currently stand, the EC2 image ID isn't really
> >> capable of
> >> migration.
> >> 
> >> I was thinking however that we should change the EC2 image
> >> generation logic,
> >> so that there is a reproducible glance UUID -> EC2 mapping (with a
> >> small
> >> chance of collision). This change would allow the same EC2 ID to
> >> be generated
> >> in multiple regions for a given glance UUID (modulo collisions).
> >> 
> >> Would that be helpful in your migration use-case?
> > 
> > I do think this is a good idea. Or even if the column wasn't
> > auto-increment, but just picked a random number or something
> > (because
> > that would be marginally less likely to clash). Without somehow
> > making
> > these ec2 ids more global, replication between regions is going to
> > suffer from ec2 api users having to somehow perform a lookup out of
> > band.
> > 
> > Now, my use case is a bit special, because I can enforce that
> > images are
> > only ever uploaded to one master region, and then copied to all
> > others.
> > I think that's probably not true for other users though.
> > 
> > Mikal
> > 
> > _______________________________________________
> > Mailing list: https://launchpad.net/~openstack
> > Post to     : openstack@xxxxxxxxxxxxxxxxxxx
> > Unsubscribe : https://launchpad.net/~openstack
> > More help   : https://help.launchpad.net/ListHelp
> 
> 


Follow ups

References