VM state wont update on power failure
Hi, Currently I am running xena version of openstack. I am confused about one thing. Running a 3 node cluster. In case of a power failure my vm still shows as active (vm_state = active, power_state = running), even though in KVM they are in shutoff state. When I bring back the node and restart nova the state changes to 'shutoff'. What I am not understanding, is nova managing only local vms power states. Its a 3 node cluster, so nova compute running on other node should change the state in the database, isnt it? Am I missing any nova or linvirt configuration here? Thanks in advance for any kind of help here Thanks and regards, Shrey
On 08/16/23 13:03, Shrey Chauhan wrote:
Hi,
Currently I am running xena version of openstack. I am confused about one thing. Running a 3 node cluster. In case of a power failure my vm still shows as active (vm_state = active, power_state = running), even though in KVM they are in shutoff state. When I bring back the node and restart nova the state changes to 'shutoff'. What I am not understanding, is nova managing only local vms power states. Its a 3 node cluster, so nova compute running on other node should change the state in the database, isnt it? Am I missing any nova or linvirt configuration here?
That is correct, nova-compute manages power state only for the VMs on its own compute host. Each nova-compute isolated in this manner. When nova-compute starts up, it will sync power states (as you saw) and after that it will sync power states at the configured interval [1]. What you can do though is look at the host status in the server list with openstack client version >= 6.0.0 [2] (openstack server list --long). The host status for a VM whose host has not checked in within the configured service downtime will show as UNKNOWN. Note that by default policy the host status is only accessible by admin, so if you would like to expose that info, you must adjust the policy.yaml [3]. os_compute_api:servers:show:host_status includes all possible host statuses and os_compute_api:servers:show:host_status:unknown-only includes only the UNKNOWN state. The latter is provided as an option for operators who would like to allow non-admin users to see that the compute hosting their VM may be down or otherwise unreachable without revealing too much detail about the state of the compute host. HTH, -melwitt [1] https://docs.openstack.org/nova/latest/configuration/config.html#DEFAULT.syn... [2] https://docs.openstack.org/releasenotes/python-openstackclient/zed.html [3] https://docs.openstack.org/nova/latest/configuration/policy.html
participants (2)
-
melanie witt
-
Shrey Chauhan