Resource optimization service for OpenStack.
Go to file
Matt Riedemann 3f76f9cfdb Optimize hypervisor API calls
The nova CDM builder code and notification handling
code had some inefficiencies when it came to looking
up a hypevisor to get details. The general pattern
used before was:

1. get the minimal hypervisor information by hypervisor_hostname
2. make another query to get the hypervisor details by id

In the notifications case, it was actually three calls because
the first is listing hyprvisors to filter client-side by service
host.

This change collapses 1 and 2 above into a single API call
to get the hypervisor by hypervisor_hostname with details
which will include the service (compute) host information
which is what get_compute_node_by_id() was being used for.
Now that nothing is using get_compute_node_by_id it is removed.

There is more work we could do in get_compute_node_by_hostname
if the compute API allowed filtering hypervisors by service
host so a TODO is left for that.

One final thing: the TODO in get_compute_node_by_hostname about
there being more than one hypervisor per compute service host
for vmware vcenter is not accurate - nova's vcenter driver
hasn't supported a host:node 1:M topology like that since the
Liberty release [1]. The only in-tree driver in nova that supports
1:M is the ironic baremetal driver, so the comment is updated.

[1] Ifc17c5049e3ed29c8dd130339207907b00433960

Depends-On: https://review.opendev.org/661785/
Change-Id: I5e0e88d7b2dd1a69117ab03e0e66851c687606da
2019-06-03 12:18:54 -04:00
api-ref/source Add force field to api-ref 2019-05-10 10:51:37 +08:00
devstack Use the common logging setup function in devstack runs 2019-05-07 13:26:37 -04:00
doc Require nova_client.api_version >= 2.56 2019-05-23 15:49:19 -04:00
etc Register default policies in code 2017-12-11 15:19:10 +03:00
playbooks/legacy/grenade-devstack-watcher OpenDev Migration Patch 2019-04-19 19:40:45 +00:00
rally-jobs Fix some dead link in docs 2018-02-14 16:45:13 +09:00
releasenotes Merge "Audit API supports new force option" 2019-05-29 10:01:04 +00:00
watcher Optimize hypervisor API calls 2019-06-03 12:18:54 -04:00
.coveragerc Loadable Cluster Data Model Collectors 2016-08-02 12:07:35 +02:00
.gitignore Update documentation regarding DataSource for strategies 2018-10-16 13:33:24 +03:00
.gitreview OpenDev Migration Patch 2019-04-19 19:40:45 +00:00
.mailmap initial version 2015-06-04 15:27:57 +02:00
.stestr.conf Switch to stestr 2018-07-10 15:38:50 +07:00
.zuul.yaml Add tempest voting 2019-04-30 16:02:32 +08:00
babel.cfg initial version 2015-06-04 15:27:57 +02:00
CONTRIBUTING.rst Optimize the link address 2017-04-07 10:55:59 +08:00
HACKING.rst Updated Hacking doc 2018-02-28 03:58:07 +00:00
LICENSE initial version 2015-06-04 15:27:57 +02:00
lower-constraints.txt Optimize hypervisor API calls 2019-06-03 12:18:54 -04:00
README.rst Drop use of git.openstack.org 2019-04-23 13:20:10 +02:00
requirements.txt Optimize hypervisor API calls 2019-06-03 12:18:54 -04:00
setup.cfg remove py35 2019-04-16 16:24:53 +08:00
setup.py Updated from global requirements 2017-03-07 02:08:03 +00:00
test-requirements.txt Fix bandit runs with 1.6.0 2019-05-09 11:14:40 -04:00
tox.ini Add doc/requirements.txt to venv tox target 2019-05-14 20:42:03 -04:00

Team and repository tags

image

Watcher

OpenStack Watcher provides a flexible and scalable resource optimization service for multi-tenant OpenStack-based clouds. Watcher provides a robust framework to realize a wide range of cloud optimization goals, including the reduction of data center operating costs, increased system performance via intelligent virtual machine migration, increased energy efficiency and more!