[nova][cinder] future of rebuild without reimaging

Bence Romsics bence.romsics at gmail.com
Wed Mar 15 12:39:22 UTC 2023


Hi All!

We have users who use 'rebuild' on volume booted servers before nova
microversion 2.93, relying on the behavior that it keeps the volume as
is. And they would like to keep doing this even after the openstack
distro moves to a(n at least) zed base (sometime in the future).

As a naive user, it seems to me both behaviors make sense. I can
easily imagine use cases for rebuild with and without reimaging.
However since the implementation of
https://specs.openstack.org/openstack/nova-specs/specs/zed/implemented/volume-backed-server-rebuild.html
rebuild without reimaging is only possible using an old microversion
(<2.93). With that change merged, rebuild without reimaging seems to
be a somewhat less than fully supported feature. A few examples of
what I mean by that:

First, there's this warning:
https://opendev.org/openstack/python-openstackclient/src/commit/5eb89e4ca1cebad9245c27d58a0dafd7f363ece0/openstackclient/compute/v2/server.py#L3452-L3453

In which it is unclear to me what exactly will become an error in a
future release. Rebuild with a different image? Or any rebuild with
microversion <2.93?

Then old nova microversions may get dropped. Though what I heard from
nova folks, this is unlikely to happen.

Then there are a few hypothetical situations like:
a) Rebuild gets a new api feature (in a new microversion) which can
never be combined with the do-not-reimage behavior.
b) Rebuild may have a bug, whose fix requires a microversion bump.
This again can never be combined with the old behavior.

What do you think, are these concerns purely theoretical or real?
If we would like to keep having rebuild without reimaging, can we rely
on the old microversion indefinitely?
Alternatively shall we propose and implement a nova spec to explicitly
expose the choice in the rebuild api (just to express the idea: osc
server rebuild --reimage|--no-reimage)?

If the topic is worth further discussion beyond the ML, I can also
bring it to the nova ptg.

Thanks in advance,
Bence Romsics (rubasov)

ps: I'll be afk for a few days, but I'll follow up next Tuesday.



More information about the openstack-discuss mailing list