On 04/16/2015 12:45 AM, Ratnaker Katipally wrote: > Hi, > > In the API.py of /nova/compute/ > > We are checking for compute service status in evacuate(..) method. > > if/self/.servicegroup_api.service_is_up(service): > msg = (_(/'Instance compute service state on %s '/ > /'expected to be down, but it was up.'/) % inst_host) > LOG.error(msg) > raiseexception.ComputeServiceUnavailable(msg) > > But It is not necessarily required for the compute service to be down > but we can consider compute service is still up when host is > down/dead/powered-off.
You are correct. We ran into this issue when working on an automated evacuation solution for dead hosts [1]. evacuate should still work here, though. If you're using the default servicegroup API backend, the service will eventually be seen as down, but it will take some time (depending on a configured timeout). It's possible that some external monitoring system already knows that the host is down. If that system had a way to tell Nova that it knows the host is gone, this could be sped up. There is a spec for a proposed API that would allow this [2]. [1] http://blog.russellbryant.net/2015/04/08/implementation-of-pacemaker-managed-openstack-vm-recovery/ [2] https://review.openstack.org/#/c/169836/ -- Russell Bryant __________________________________________________________________________ OpenStack Development Mailing List (not for usage questions) Unsubscribe: openstack-dev-requ...@lists.openstack.org?subject:unsubscribe http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev