[openstack-dev] [nova] how is resource tracking supposed to work for live migration and evacuation?

Chris Friesen chris.friesen at windriver.com
Thu Jan 16 21:12:32 UTC 2014


I'm trying to figure out how resource tracking is intended to work for 
live migration and evacuation.

For a while I thought that maybe we were relying on the call to 
ComputeManager._instance_update() in 
ComputeManager.post_live_migration_at_destination().  However, in
ResourceTracker.update_usage() we see that on a live migration the 
instance that has just migrated over isn't listed in 
self.tracked_instances and so we don't actually update its usage.

As far as I can see, the current code will just wait for the audit to 
run at some unknown time in the future and call 
update_available_resource(), which will add the newly-migrated instance 
to self.tracked_instances and update the resource usage.

 From my poking around so far the same thing holds true for evacuation 
as well.

In either case, just waiting for the audit seems somewhat haphazard.

Would it make sense to do something like 
ResourceTracker.instance_claim() during the migration/evacuate and 
properly track the resources rather than wait for the audit?


More information about the OpenStack-dev mailing list