[openstack-dev] [nova] why is evacuate marked as missing for libvirt?

Russell Bryant rbryant at redhat.com
Tue Apr 14 17:44:45 UTC 2015

On 04/14/2015 12:22 PM, Matt Riedemann wrote:
> This came up in IRC this morning, but the hypervisor support matrix is
> listing evacuate as 'missing' for the libvirt driver:
> http://docs.openstack.org/developer/nova/support-matrix.html#operation_evacuate
> Does anyone know why that is?  The rebuild method in the compute manager
> just re-uses other virt driver operations so by default it's implemented
> by all drivers.  The only one that overrides rebuild for evacuate is the
> ironic driver.

I think it's a case where there are a couple of different things
referred to with 'evacuate'.  I believe this was originally added to
track something that was effectively XenServer specific and the
description of the feature seems to reflect that.  We've since added the
more generic 'evacuate' API, so it's pretty confusing.  It should
probably be reworked to track which drivers work with the 'evacuate' API
call, and perhaps have a different entry for whatever this different
XenServer thing is (or was).

> This is allows a host to be placed into maintenance mode,

This can be done with 'nova service-disable' for libvirt, but IIRC was
directly a part of the XenServer feature.

> automatically triggering migration of any running instances to an
> alternative host and preventing new instances from being launched

and this isn't a part of the 'evacuate' API call at all.  The API call
expects that the hypervisor is gone/dead.  There's no automatic moving
of stuff running.

Russell Bryant

More information about the OpenStack-dev mailing list