Use nested allocation candidates

Registered by Balazs Gibizer on 2018-09-12

Placement added support for allocation candidates query against nested resource provider trees in microversion 1.29. Nova's scheduler report client needs to start using the new microversion to enable adding support for vGPUs, bandwidth and cyborg devices reported as nested RPs under the compute node RP.

Work items in dependency order:
* Add support for microverion 1.28 (consumer generation) in scheduler report client.
* Add support for microversion 1.29 (nested allocation candidates) in scheduler report client.
* Write functional tests that verifies that scheduling against a nested tree is possible. Fix the bugs.
* Write functional tests that verifies that various server moving operation handles nested allocation properly (migrate, resize, resize-same-host, evacuate, live-migrate, unshelve). Fix bugs.

Blueprint information

Status:
Started
Approver:
Matt Riedemann
Priority:
High
Drafter:
Balazs Gibizer
Direction:
Approved
Assignee:
Balazs Gibizer
Definition:
Approved
Series goal:
Accepted for stein
Implementation:
Needs Code Review
Milestone target:
None
Started by
Matt Riedemann on 2018-09-20

Related branches

Sprints

Whiteboard

Gerrit topic: https://review.openstack.org/#q,topic:consumer_gen,n,z

Addressed by: https://review.openstack.org/591597
    Consumer gen support for delete instance allocations

Addressed by: https://review.openstack.org/591647
    Consumer gen support for put allocations

Addressed by: https://review.openstack.org/591784
    Consumer gen: remove_provider_from_instance_allocation

Addressed by: https://review.openstack.org/591810
    consumer gen: move_allocations

Addressed by: https://review.openstack.org/591811
    consumer gen: more tests for delete allocation cases

Gerrit topic: https://review.openstack.org/#q,topic:use-nested-allocation-candidates,n,z

Addressed by: https://review.openstack.org/585672
    Enable nested allocation candidates in scheduler

Addressed by: https://review.openstack.org/583667
    consumer gen: support claim_resources

Gerrit topic: https://review.openstack.org/#q,topic:bp/use-nested-allocation-candidates,n,z

Addressed by: https://review.openstack.org/527728
    Functional test for booting with nested resources

Addressed by: https://review.openstack.org/587350
    Functional test for moving with nested resources

Addressed by: https://review.openstack.org/604083
    Use provider tree in virt FakeDriver

Addressed by: https://review.openstack.org/604084
    Run ServerMovingTests with nested resources

Approved for Stein as a specless blueprint. This is adding the nova client-side implementation/support for nested resource providers which are modeled in the Placement service. There is no spec since there are no anticipated API changes to Placement at this point. -- mriedem 20180920

Addressed by: https://review.openstack.org/604125
    Run negative server moving tests with nested RPs

(?)

Work Items

Dependency tree

* Blueprints in grey have been implemented.

This blueprint contains Public information 
Everyone can see this information.

Subscribers

No subscribers.