13513e6232
IronicHostManager currently overrides the _init_instance_info()
method of the base class and unconditionally skips population of
instances information for all compute nodes, even if they are not
Ironic ones.
If there are compute nodes with the hypervisor_type different from
Ironic in the same cloud. the instances info will be missing in
nova-scheduler (if IronicHostManager is configured as a host manager
impl in nova.conf), which will effectively break instance affinity
filters like DifferentHostFilter or SameHostFilter, that check set
intersections of instances running on a particular host and the ones
passed as a hint for nova-scheduler in a boot request.
IronicHostManager should use the method implementation of the base
class for non-ironic compute nodes.
Ib1ddb44d71f7b085512c1f3fc0544f7b00c754fe fixed the problem with
scheduling, this change is needed to make sure we also populate the
instances info on start of nova-scheduler.
Closes-Bug: #1606496
Co-Authored-By: Timofei Durakov <tdurakov@mirantis.com>
(cherry-picked from
|
||
---|---|---|
.. | ||
client | ||
filters | ||
weights | ||
__init__.py | ||
caching_scheduler.py | ||
chance.py | ||
driver.py | ||
filter_scheduler.py | ||
host_manager.py | ||
ironic_host_manager.py | ||
manager.py | ||
rpcapi.py | ||
scheduler_options.py | ||
utils.py |