OpenStack: instance evacuation goes to host
With Grizzly came the instance evacuation but a quite recent addition to the code expended it to hosts.
With the help of the
nova evacuate command you can easily migrate a VM from a dead compute.
Now with the
nova host-evacuate all the instances from a dead compute can be moved to a new host:
- either specified from the command
- either chosen by the nova scheduler
$ nova host-evacuate [--target_host <target_host>] [--on-shared-storage] <host>
Evacuate all instances from failed host to specified one.
--target_host <target_host>: Name of target host.
--on-shared-storage: Specifies whether all instances files are on share storage
The implementation is a good idea but ideally I’d rather prefer to get a balanced relocation of all the VMs instead of having a new compute. Since all the computes might be evenly loaded, we could end up in a situation where no valid host can be found.