Discussion:
[openstack-dev] [nova] reboot a rescued instance?
Matt Riedemann
2018-05-04 13:46:57 UTC
Permalink
For full details on this, see the IRC conversation [1].

tl;dr: the nova compute manager and xen virt driver assume that you can
reboot a rescued instance [2] but the API does not allow that [3] and as
far as I can tell, it never has.

I can only assume that Rackspace had an out of tree change to the API to
allow rebooting a rescued instance. I don't know why that wouldn't have
been upstreamed, but the upstream API doesn't allow it. I'm also not
aware of anything internal to nova that reboots an instance in a rescued
state.

So the question now is, should we add rescue to the possible states to
reboot an instance in the API? Or just rollback this essentially dead
code in the compute manager and xen virt driver? I don't know if any
other virt drivers will support rebooting a rescued instance.

[1]
http://eavesdrop.openstack.org/irclogs/%23openstack-nova/%23openstack-nova.2018-05-03.log.html#t2018-05-03T18:49:58
[2]
https://review.openstack.org/#/q/topic:bug/1170237+(status:open+OR+status:merged
[3]
https://github.com/openstack/nova/blob/4b0d0ea9f18139d58103a520a6a4e9119e19a4de/nova/compute/vm_states.py#L69-L72
--
Thanks,

Matt
Matt Riedemann
2018-05-04 13:50:08 UTC
Permalink
For full details on this, see the IRC conversation [1].

tl;dr: the nova compute manager and xen virt driver assume that you can
reboot a rescued instance [2] but the API does not allow that [3] and as
far as I can tell, it never has.

I can only assume that Rackspace had an out of tree change to the API to
allow rebooting a rescued instance. I don't know why that wouldn't have
been upstreamed, but the upstream API doesn't allow it. I'm also not
aware of anything internal to nova that reboots an instance in a rescued
state.

So the question now is, should we add rescue to the possible states to
reboot an instance in the API? Or just rollback this essentially dead
code in the compute manager and xen virt driver? I don't know if any
other virt drivers will support rebooting a rescued instance.

[1]
http://eavesdrop.openstack.org/irclogs/%23openstack-nova/%23openstack-nova.2018-05-03.log.html#t2018-05-03T18:49:58
[2]
https://review.openstack.org/#/q/topic:bug/1170237+(status:open+OR+status:merged
[3]
https://github.com/openstack/nova/blob/4b0d0ea9f18139d58103a520a6a4e9119e19a4de/nova/compute/vm_states.py#L69-L72
--
Thanks,

Matt
Chris Friesen
2018-05-04 15:42:47 UTC
Permalink
Post by Matt Riedemann
For full details on this, see the IRC conversation [1].
tl;dr: the nova compute manager and xen virt driver assume that you can reboot a
rescued instance [2] but the API does not allow that [3] and as far as I can
tell, it never has.
I can only assume that Rackspace had an out of tree change to the API to allow
rebooting a rescued instance. I don't know why that wouldn't have been
upstreamed, but the upstream API doesn't allow it. I'm also not aware of
anything internal to nova that reboots an instance in a rescued state.
So the question now is, should we add rescue to the possible states to reboot an
instance in the API? Or just rollback this essentially dead code in the compute
manager and xen virt driver? I don't know if any other virt drivers will support
rebooting a rescued instance.
Not sure where the more recent equivalent is, but the mitaka user guide[1] has this:

"Pause, suspend, and stop operations are not allowed when an instance is running
in rescue mode, as triggering these actions causes the loss of the original
instance state, and makes it impossible to unrescue the instance."

Would the same logic apply to reboot since it's basically stop/start?

Chris



[1] https://docs.openstack.org/mitaka/user-guide/cli_reboot_an_instance.html

__________________________________________________________________________
OpenStack Development Mailing List (not for usage questions)
Unsubscribe: OpenStack-dev-***@lists.openstack.org?subject:unsubscribe
http://lists.openstack.org/cgi-bin/ma

Loading...