[openstack-dev] [Nova][Glance]Glance v2 api support in Nova

John Garbutt john at johngarbutt.com
Fri Feb 19 17:01:47 UTC 2016

On 19 February 2016 at 11:45, Sean Dague <sean at dague.net> wrote:
> On 02/15/2016 06:00 PM, Flavio Percoco wrote:
>> On 12/02/16 18:24 +0300, Mikhail Fedosin wrote:
>>> Hello!
>>> In late December I wrote several messages about glance v2 support in
>>> Nova and
>>> Nova's xen plugin. Many things have been done after that and now I'm
>>> happy to
>>> announce that there we have a set of commits that makes Nova fully v2
>>> compatible (xen plugin works too)!
>>> Here's the link to the top commit
>>> https://review.openstack.org/#/c/259097/
>>> Here's the link to approved spec for Mitaka https://github.com/openstack/
>>> nova-specs/blob/master/specs/mitaka/approved/use-glance-v2-api.rst
>>> I think it'll be a big step for OpenStack, because api v2 is much more
>>> stable
>>> and RESTful than v1.  We would very much like to deprecate v1 at some
>>> point. v2
>>> is 'Current' since Juno, and after that there we've had a lot of
>>> attempts to
>>> adopt it in Nova, and every time it was postponed to next release cycle.
>>> Unfortunately, it may not happen this time - this work was marked as
>>> 'non-priority' when the related patches had been done. I think it's a big
>>> omission, because this work is essential for all OpenStack, and it
>>> will be a
>>> shame if we won't be able to land it in Mitaka.
>>> As far as I know, Feature Freeze will be announced on March, 3rd, and
>>> we still
>>> have enough time and people to test it before. All patches are split
>>> into small
>>> commits (100 LOC max), so they should be relatively easy to review.
>>> I wonder if Nova community members may change their decision and
>>> unblock this
>>> patches? Thanks in advance!
>> A couple of weeks ago, I had a chat with Sean Dague and John Garbutt and we
>> agreed that it was probably better to wait until Newton. After that
>> chat, we
>> held a Glance virtual mid-cycle where Mikhail mentioned that he would
>> rather
>> sprint on getting Nova on v2 than waiting for Newton. The terms and code
>> Mikhail
>> worked on aligns with what has been discussed throughout the cycle in
>> numerous
>> chats, patch sets, etc.
>> After all the effort that has been put on this (including getting a py24
>> environment ready to test the xenplugin) it'd be a real shame to have
>> this work
>> pushed to Newton. The Glance team *needs* to be able to deprecate v1 and
>> the
>> team has been working on this ever since Kilo, when this effort of
>> moving Nova
>> to v2 started.
>> I believe it has to be an OpenStack priority to make this happen or, at
>> the very
>> least, a cross-project effort that involves all services relying on
>> Glance. Nova
>> is the last service in the list, AFAICT, and the Glance team has been very
>> active on this front. This is not to imply the Nova team hasn't help, in
>> fact,
>> there's been lots of support/feedback from the nova team during Mitaka.
>> It is
>> because of that that I believe we should grant this patches an exception
>> and let
>> them in.
>> Part of the feedback the Nova team has provided is that some of that
>> code that
>> has been proposed should live in glanceclient. The Glance team is ready
>> to react
>> and merge that code, release glanceclient, and get Nova on v2.
> Right, I think this was the crux of the problem. It took a while to get
> consensus on that point, and now we're deep into the priority part of
> the Nova cycle, and the runway is gone. I'm happy to help review early
> during the Newton cycle.
> I also think as prep work for that we should probably get either glance
> folks or citrix folks to enhance the testing around the xenserver /
> glance paths in Nova. That will make reviews go faster in Newton because
> we can be a lot more sure that patches aren't breaking anything.

+1 Sean's points here.

We should totally make time to get the Nova and Glance team together
during the design summit. I keep thinking we understand each other,
and every time we did a little deeper on this topic we find more
difference in opinions.

I think we all agree with the long term view:
* Nova's image API calls maintain their existing contract (glance v1 like)
* Nova can talk to glance v2 for everything, zero dependency on glance v1
* Nova will need to support both v1 and v2 glance for at least one cycle

It's the how we get to that point that we we don't all agree on. It
feels like an in depth face to face discussion will be the best way to
resolve that.


More information about the OpenStack-dev mailing list