Evacuate instance automatically

Registered by Hiroyuki Eguchi

If nova-compute service is down by hardware failure,an instance evacuate to a scheduled host automatically.

This feature should be configurable option in nova.conf.

And this feature based on Rebuild for HA
(https://blueprints.launchpad.net/nova/+spec/rebuild-for-ha)
and find-host-and-evacuate-instance
(https://blueprints.launchpad.net/nova/+spec/find-host-and-evacuate-instance).

I envision to add the periodic_task in nova-scheduler(nova/scheduler/manager.py) to realize this feature.
The periodic_task checks services status via service group API.
If nova-compute service which has instances is down, The periodic_task call rebuild_instance method in nova-scheduler(nova/scheduler/manager.py) to evacuate instances.
(rebuild_instance method added by https://review.openstack.org/#/c/25991/)

Blueprint information

Status:
Complete
Approver:
Russell Bryant
Priority:
Undefined
Drafter:
None
Direction:
Needs approval
Assignee:
Hiroyuki Eguchi
Definition:
Obsolete
Series goal:
None
Implementation:
Unknown
Milestone target:
None
Completed by
Russell Bryant

Related branches

Sprints

Whiteboard

[glikson] Please, elaborate where do you envision to add the code that receives the failure notification (via svcgroup API, perhaps?) and orchestrates the evacuation of the individual instances. Based on the discussion at the Havana design summit, seems that this should not reside within Nova (at least at the moment).

Agreed that the general consensus is that this should not be in nova. Feel free to discuss on the openstack-dev list. --russellb

Yes, i also logged a similar bp https://blueprints.launchpad.net/nova/+spec/resource-optimization-service and was not agreed to put to nova. I think that your HA service can be a plug-in of resource optimization service. We can discuss more how to do this. Thanks. --jay-lau-513

(?)

Work Items

Dependency tree

* Blueprints in grey have been implemented.