[openstack-dev] [nova] Resource tracker
Daniel P. Berrange
berrange at redhat.com
Mon Oct 6 13:15:22 UTC 2014
On Mon, Oct 06, 2014 at 01:03:01PM +0000, Gary Kotton wrote:
> Hi,
> At the moment the resource tracker in Nova ignores that statistics that
> are returned by the hypervisor and it calculates the values on its own.
> Not only is this highly error prone but it is also very costly - all of
> the resources on the host are read from the database. Not only the fact
> that we are doing something very costly is troubling, the fact that we
> are over calculating resources used by the hypervisor is also an issue.
> In my opinion this leads us to not fully utilize hosts at our disposal.
> I have a number of concerns with this approach and would like to know
> why we are not using the actual resource reported by the hypervisor.
> The reason for asking this is that I have added a patch which uses the
> actual hypervisor resources returned and it lead to a discussion on the
> particular review (https://review.openstack.org/126237).
If i'm interpreting git history correctly, this behaviour was (re-)introduced
in this commit:
commit 8e851409f3a8a345ec954a880c81232fbf9e27b4
Author: Brian Elliott <brian.elliott at rackspace.com>
Date: Fri Sep 14 15:17:07 2012 +0000
Fix bugs in resource tracker and cleanup
Fixes bugs in resource tracker:
* Handle disk oversubscription
* Handle suspended/powered off instances
The usage model is changed to the old style that is
based on actual instance usage on a compute host.
(Not the current point in time of the hypervisor's
reported host stats)
There is now a 'limits' filter property that can be passed from
the scheduler to the compute node to indicate that
oversubscription of resources is desired:
The 'limits' filter property is a dict with the following possible
keys:
* memory_mb - Specifies the memory ceiling for the compute node.
* disk_gb - Specifies the disk space ceiling for the compute node.
* vcpu - Specifies the max number of vcpus for the compute node.
There is also some general cleanup and additional unit tests in
an attempt to simplify down this function.
bug 1048842
bug 1052157
Change-Id: I6ee851b8c03234a78a64d9f5c494dfc7059cdda4
Unfortunately that commit message isn't very informative as to why this
change was made, and the bugs don't seem to have any real detail either.
Perhaps Brian remembers himself ?
Regards,
Daniel
--
|: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org -o- http://virt-manager.org :|
|: http://autobuild.org -o- http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :|
More information about the OpenStack-dev
mailing list