[openstack-dev] [nova][scheduler][placement] Allocating Complex Resources

Edward Leafe ed at leafe.com
Mon Jun 12 18:17:30 UTC 2017

On Jun 12, 2017, at 10:20 AM, Jay Pipes <jaypipes at gmail.com> wrote:

>> The RP uuid is part of the provider: the compute node's uuid, and (after https://review.openstack.org/#/c/469147/ merges) the PCI device's uuid. So in the code that passes the PCI device information to the scheduler, we could add that new uuid field, and then the scheduler would have the information to a) select the best fit and then b) claim it with the specific uuid. Same for all the other nested/shared devices.
> How would the scheduler know that a particular SRIOV PF resource provider UUID is on a particular compute node unless the placement API returns information indicating that SRIOV PF is a child of a particular compute node resource provider?

Because PCI devices are per compute node. The HostState object populates itself from the compute node here:

https://github.com/openstack/nova/blob/master/nova/scheduler/host_manager.py#L224-L225 <https://github.com/openstack/nova/blob/master/nova/scheduler/host_manager.py#L224-L225>

If we add the UUID information to the PCI device, as the above-mentioned patch proposes, when the scheduler selects a particular compute node that has the device, it uses the PCI device’s UUID. I thought that having that information in the scheduler was what that patch was all about.

-- Ed Leafe

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20170612/0c7e8652/attachment.html>

More information about the OpenStack-dev mailing list