<div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">Le mer. 15 mars 2023 à 13:45, Bence Romsics <<a href="mailto:bence.romsics@gmail.com">bence.romsics@gmail.com</a>> a écrit :<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hi All!<br>
<br>
We have users who use 'rebuild' on volume booted servers before nova<br>
microversion 2.93, relying on the behavior that it keeps the volume as<br>
is. And they would like to keep doing this even after the openstack<br>
distro moves to a(n at least) zed base (sometime in the future).<br>
<br>
As a naive user, it seems to me both behaviors make sense. I can<br>
easily imagine use cases for rebuild with and without reimaging.<br>
However since the implementation of<br>
<a href="https://specs.openstack.org/openstack/nova-specs/specs/zed/implemented/volume-backed-server-rebuild.html" rel="noreferrer" target="_blank">https://specs.openstack.org/openstack/nova-specs/specs/zed/implemented/volume-backed-server-rebuild.html</a><br>
rebuild without reimaging is only possible using an old microversion<br>
(<2.93). With that change merged, rebuild without reimaging seems to<br>
be a somewhat less than fully supported feature. A few examples of<br>
what I mean by that:<br>
<br></blockquote><div><br></div><div>That's not really true : the new microversion just means we change the default behaviour, but you can still opt into the previous behaviour by requesting an older microversion.</div><div>That being said, I do understand your concerns, further below.<br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
First, there's this warning:<br>
<a href="https://opendev.org/openstack/python-openstackclient/src/commit/5eb89e4ca1cebad9245c27d58a0dafd7f363ece0/openstackclient/compute/v2/server.py#L3452-L3453" rel="noreferrer" target="_blank">https://opendev.org/openstack/python-openstackclient/src/commit/5eb89e4ca1cebad9245c27d58a0dafd7f363ece0/openstackclient/compute/v2/server.py#L3452-L3453</a><br>
<br>
In which it is unclear to me what exactly will become an error in a<br>
future release. Rebuild with a different image? Or any rebuild with<br>
microversion <2.93?<br>
<br></blockquote><div><br></div><div>The latter (in theory) : if you opt into a microversion older or equal than 2.93, you shouldn't expect your volume to *not* be rebuilt.</div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
Then old nova microversions may get dropped. Though what I heard from<br>
nova folks, this is unlikely to happen.<br>
<br></blockquote><div><br></div><div>Correct, I never want to say never, but we don't have any plans in any subsequent futures to bump the minimum versions, for many many reasons, not only due to the tech debt but also and mainly because of the interoperatibility we must guarantee.</div><div> <br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
Then there are a few hypothetical situations like:<br>
a) Rebuild gets a new api feature (in a new microversion) which can<br>
never be combined with the do-not-reimage behavior.<br>
b) Rebuild may have a bug, whose fix requires a microversion bump.<br>
This again can never be combined with the old behavior.<br>
<br>
What do you think, are these concerns purely theoretical or real?<br>
If we would like to keep having rebuild without reimaging, can we rely<br>
on the old microversion indefinitely?<br>
Alternatively shall we propose and implement a nova spec to explicitly<br>
expose the choice in the rebuild api (just to express the idea: osc<br>
server rebuild --reimage|--no-reimage)?<br></blockquote><div><br></div><div>I'm not opposed to challenge the usecases in a spec, for sure. <br></div><div> <br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
If the topic is worth further discussion beyond the ML, I can also<br>
bring it to the nova ptg.<br></blockquote><div><br></div><div>That's already the case. Add yourself to the courtesy ping list of that topic.</div><div><a href="https://etherpad.opendev.org/p/nova-bobcat-ptg#L152">https://etherpad.opendev.org/p/nova-bobcat-ptg#L152</a></div><div><br></div><div>-Sylvain<br></div><div> <br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
Thanks in advance,<br>
Bence Romsics (rubasov)<br>
<br>
ps: I'll be afk for a few days, but I'll follow up next Tuesday.<br>
<br>
</blockquote></div></div>