<html><head><meta http-equiv="Content-Type" content="text/html charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">The problem I'm talking about is:<div><br></div><div>Glance-API A get's an image create request for image X</div><div>It stores image X in swift A</div><div>It stores the location in glance-registry as <a href="swift+http://tenant%3Ausername:password@keystone:5000/v2.0/images/X">swift+http://tenant%3Ausername:password@keystone:5000/v2.0/images/X</a></div><div><br></div><div>Glance-API B gets a request to get that image </div><div>Glance-API is backed by Swift B</div><div>The location url from glance registry doesn't allow it to find out that the image is in Swift A (it will look in swift B to find it and get a 404)</div><div><br></div><div><br></div><div>Does that make sense?</div><div><br></div><div>Sam</div><div><br></div><div><br></div><div><br><div><div>On 20/05/2013, at 1:24 PM, Drew Weaver <<a href="mailto:drew.weaver@thenap.com">drew.weaver@thenap.com</a>> wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div style="font-family: Helvetica; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: -webkit-auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><div>You could have the same URL resolve in DNS to the "local swift" in each region or you could use anycast. <br><br><br>-------- Original message --------<br>From: Sam Morrison <<a href="mailto:sorrison@gmail.com">sorrison@gmail.com</a>><span class="Apple-converted-space"> </span><br>Date: 05/19/2013 8:39 PM (GMT-05:00)<span class="Apple-converted-space"> </span><br>To: Jay Pipes <<a href="mailto:jaypipes@gmail.com">jaypipes@gmail.com</a>><span class="Apple-converted-space"> </span><br>Cc: <a href="mailto:openstack@lists.launchpad.net">openstack@lists.launchpad.net</a><span class="Apple-converted-space"> </span><br>Subject: Re: [Openstack] Share Glance between cells or regions<span class="Apple-converted-space"> </span><br><br><br></div><font size="2"><span style="font-size: 10pt; ">Hi Jay,<br><br>We are doing something similar. We have a single glance registry which is backed by galera DB replication.<br>Then we have multiple glance-apis around the place.<br><br>Currently they are all backed onto the same swift but I'd like to have it so each glance-api can talk to it's own swift.<br>The issue I see is that the location of the image as stored in the glance-registry is a keystone url. <br>So yes you could get a glance api to store data in a specific swift region (using the swift_store_region) but it has no way of knowing which region to pull an image out of.<br><br>I think the location value stored when using swift needs to be the swift URL or else it needs to store the region in the DB too.<br><br>Have you thought about this? Have a solution?<br><br>Cheers,<br>Sam<br><br><br>On 16/05/2013, at 6:49 AM, Jay Pipes <<a href="mailto:jaypipes@gmail.com">jaypipes@gmail.com</a>> wrote:<br><br>> On 05/15/2013 02:46 PM, John Paul Walters wrote:<br>>> Hi,<br>>> <br>>> We're looking at setting up a geographically distributed OpenStack installation, and we're considering either cells or regions. We'd like to share a single Glance install between our regions (or cells), so the same images can be spawned anywhere. From here:<br>>> <br>>> <a href="http://docs.openstack.org/trunk/openstack-ops/content/segregate_cloud.html">http://docs.openstack.org/trunk/openstack-ops/content/segregate_cloud.html</a><br>>> <br>>> it's not clear whether that's possible. Can anyone shed some light on this? Is it possible in regions OR cells (or both)? Is there a better solution that I'm not thinking of? <br>> <br>> We will be sharing both the Keystone identity (note: not token/catalog)<br>> and Glance registry databases in a synchronously-replicated Galera MySQL<br>> cluster. Databases like the above, which have extremely low write to<br>> read ratios are ideal for this kind of replication. We are replicating<br>> working sets over the WAN using rsync replication in the WSREP<br>> clustering software.<br>> <br>> What this enables us to do is have a single set of account records and a<br>> single set of image (base and snapshot) records. Note that we back<br>> Glance in each zone with a zone-local Swift cluster. But what this<br>> allows us to do is have a user in zone A make a snapshot and then<br>> immediately (once the snapshot goes from the SAVING state to ACTIVE),<br>> the user is able to launch their snapshot in zone B. The Glance registry<br>> database has the location of the snapshot in zone A's Swift cluster and<br>> when Nova in zone B launches the image, the Glance API server in zone B<br>> simply pulls the image bits from Swift in zone A.<br>> <br>> Best,<br>> -jay<br>> <br>> p.s. I say "will be sharing" because we are currently updating our<br>> deployment to use this single Glance registry database. Originally we<br>> went down the route of each zone having its own Glance registry database<br>> and realized that since the pattern of write activity to the Glance<br>> registry is so low, it made sense to replicate it across our zones and<br>> give the users the ability to launch instances from snapshots in any<br>> zone. The single identity database is already in use across our zones.<br>> <br>> _______________________________________________<br>> Mailing list: <a href="https://launchpad.net/~openstack">https://launchpad.net/~openstack</a><br>> Post to : <a href="mailto:openstack@lists.launchpad.net">openstack@lists.launchpad.net</a><br>> Unsubscribe : <a href="https://launchpad.net/~openstack">https://launchpad.net/~openstack</a><br>> More help : <a href="https://help.launchpad.net/ListHelp">https://help.launchpad.net/ListHelp</a><br><br><br>_______________________________________________<br>Mailing list: <a href="https://launchpad.net/~openstack">https://launchpad.net/~openstack</a><br>Post to : <a href="mailto:openstack@lists.launchpad.net">openstack@lists.launchpad.net</a><br>Unsubscribe : <a href="https://launchpad.net/~openstack">https://launchpad.net/~openstack</a><br>More help : <a href="https://help.launchpad.net/ListHelp">https://help.launchpad.net/ListHelp</a></span></font></div></blockquote></div><br></div></body></html>