[nova] Updates about Detaching/Attaching root volumes

Matt Riedemann mriedemos at gmail.com
Thu Feb 28 23:29:20 UTC 2019


On 2/28/2019 12:08 PM, Matt Riedemann wrote:
> I've put this on the agenda for today's nova meeting. Here are the 
> options as I see them:
> 
> 1: lift the restriction in this same microversion so that you can attach 
> volumes to a shelved offloaded server and specify a tag (despite bug 
> 1817927 which we can fix later)
> 
> 2: reset the tag during root volume detach and don't allow specifying a 
> new tag - this is what we'd get today if we merged Kevin's code as-is
> 
> 3: don't reset the tag during root volume detach but don't allow 
> overwriting it on root volume attach - this could be poor UX if you need 
> to change the tag
> 
> 4: same as option 2 but eventually add a new microversion for option 1 
> thus punting the decision
> 
> My preferred option is 1 but time is short to be considering this and we 
> might screw something up. I don't think option 3 is viable given the 
> original tag might not make any sense with a new root volume. Options 2 
> and 4 get us the root volume detach/attach feature in stein as a 
> short-term win but is half-baked since we still have more changes to 
> make later (and another microversion).
> 
> I know another option is just defer to Train when we have more time to 
> think about this but we're nearly there on this feature so I'd like to 
> get it done if we can reach agreement on the design.

We talked about this in the nova meeting today:

http://eavesdrop.openstack.org/meetings/nova/2019/nova.2019-02-28-21.00.log.html#l-95

It sounds like we might be leaning to option 4 for a couple of reasons:

a) It's getting late in stein to be lifting the restriction on attaching 
a volume with a tag to a shelved offloaded server and munging that in 
with the root attach/detach volume API change.

b) As we got talking I noted that for the same reason as a tag, you 
currently cannot attach a multi-attach volume to a shelved offloaded 
server, because we don't make the "reserve_block_device_name" RPC call 
to the compute service to determine if the driver supports it.

c) Once we have code in the API to properly translate tags/multiattach 
requests to the scheduler (based on [1]) so that we know when we 
unshelve that we'll pick a host that supports device tags and 
multiattach volumes, we could lift the restriction in the API with a new 
microversion.

If we go this route, it means the API reference for the root volume 
detach/attach change needs to mention that the tag will be reset and 
cannot be set again on attach of the root volume (at least until we lift 
that restriction).

[1] https://review.openstack.org/#/c/538498/

-- 

Thanks,

Matt



More information about the openstack-discuss mailing list