[openstack-dev] [Glance][Nova][Cinder] glance_store and glance

Jesse Cook jesse.cook at RACKSPACE.COM
Fri Aug 7 14:02:54 UTC 2015


I largely agree with the points made in the messages by Nikhil and Erno. A
few additional points.

One of the biggest use cases that I heard for glance_store (true, false,
or otherwise) was that Glance is a bottleneck and an unnecessary proxy to
the stores and consumers should be able to interface with the stores
directly. A few lessons learned from creating and subsequently killing
Glance Bypass internally (bypass Glance to interface directly with the
store i.e. Swift in our case):

1. The proxy is not free, but it¹s not the bottleneck (assuming you have
decent networking on your Glance API nodes)
2. Maintaining the code to interface directly with the object store is
expensive and reinvents what Glance already does killing the value of
moving Glance out of Nova tree
3. Loses the abstraction provided by Glance
4. Allows retrying uploads (this is being fixed in Glance in Liberty along
with other reliability and performance improvements)

My current perception is that glance_store raises confidence issues
outside the community with the Glance and causes confusion about what and
how to consume the project. It¹s a leaky abstraction and leads to a path
of maintaining multiple APIs and circular dependencies. Glance should
provide a single clean API that ensures data consistency, is performant,
and has reliability guarantees.

One other thought: After seeing some of the discussion on IRC I want to
remind people that the sunken cost fallacy can strongly influence one¹s
position, so please think carefully about the use cases and value outside
the cost already put into splitting it out.

Thanks,

Jesse




On 8/7/15, 3:56 AM, "Kuvaja, Erno" <kuvaja at hp.com> wrote:

>Hi,
>
>Flagged Nova and Cinder into this discussion as they were the first
>intended adopters iirc.
>
>I don't have big religious view about this topic. I wasn't huge fan of
>the idea separating it in the first place and I'm not huge fan of keeping
>it separate either.
>
>After couple of cycles we have so far witnessed only the downside of
>glance_store being on it's own. We break even our own gate with our own
>lib releases, we have one extra bug tracker to look after and even not
>huge but it just increases the load on the release and stable teams as
>well.
>
>In my understanding the interest within Nova to consume glance_store
>directly has pretty much died off since we separated it, please do
>correct me if I'm wrong.
>I haven't heard anyone expressing any interest to consume glance_store
>directly within Cinder either.
>So far I have failed to see use-case for glance_store alone apart from
>Glance API Server and the original intended use-cases/consumers have
>either not expressed interest what so ever or directly expressed being
>not interested.
>
>Do we have any reason what so ever keeping doing the extra work to keep
>these two components separate? I'm more than happy to do so or at least
>extend this discussion for a cycle if there is projects out there
>planning to utilize it. I don't want to be in middle of separating it
>again next cycle because someone wanted to consume and forked out the old
>tree because we decided to kill it but I'm not keen to take the overhead
>of it either without reason.
>
>- Erno
>
>> -----Original Message-----
>> From: Nikhil Komawar [mailto:nik.komawar at gmail.com]
>> Sent: Friday, August 07, 2015 6:21 AM
>> To: openstack-dev at lists.openstack.org
>> Subject: [openstack-dev] [Glance] glance_store and glance
>> 
>> Hi,
>> 
>> During the mid-cycle we had another proposal that wanted to put back the
>> glance_store library back into the Glance repo and not leave it is as a
>> separate repo/project.
>> 
>> The questions outstanding are: what are the use cases that want it as a
>> separate library?
>> 
>> The original use cases that supported a separate lib have not had much
>> progress or adoption yet. There have been complaints about overhead of
>> maintaining it as a separate lib and version tracking without much gain.
>> The proposals for the re-factor of the library is also a worrysome
>>topic in
>> terms of the stability of the codebase.
>> 
>> The original use cases from my memory are:
>> 1. Other projects consuming glance_store -- this has become less likely
>>to be
>> useful.
>> 2. another upload path for users for the convenience of tasks -- not
>> preferable as we don't want to expose this library to users.
>> 3. ease of addition of newer drivers for the developers -- drivers are
>>only
>> being removed since.
>> 4. cleaner api / more methods that support backend store capabilities -
>>a
>> separate library is not necessarily needed, smoother re-factor is
>>possible
>> within Glance codebase.
>> 
>> Also, the authN/Z complexities and ACL restrictions on the back-end
>>stores
>> can be potential security loopholes with the library and Glance
>>evolution
>> separately.
>> 
>> In order to move forward smoothly on this topic in Liberty, I hereby
>>request
>> input from all concerned developer parties. The decision to keep this
>>as a
>> separate library will remain in effect if we do not come to resolution
>>within 2
>> weeks from now. However, if there aren't any significant use cases we
>>may
>> consider a port back of the same.
>> 
>> Please find some corresponding discussion from the latest Glance weekly
>> meeting:
>> http://eavesdrop.openstack.org/meetings/glance/2015/glance.2015-08-06-
>> 14.03.log.html#l-21
>> 
>> --
>> 
>> Thanks,
>> Nikhil
>> 
>> 
>> __________________________________________________________
>> ________________
>> OpenStack Development Mailing List (not for usage questions)
>> Unsubscribe: OpenStack-dev-
>> request at lists.openstack.org?subject:unsubscribe
>> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
>
>__________________________________________________________________________
>OpenStack Development Mailing List (not for usage questions)
>Unsubscribe: OpenStack-dev-request at lists.openstack.org?subject:unsubscribe
>http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev




More information about the OpenStack-dev mailing list