Add support for SR-IOV enablement via neutron-api

The neutron-api charm will present an 'enable-sriov' flag to the
nova-cloud-controller charm when SR-IOV support has been enabled by the
end user; ensure that the PciPassthroughFilter is added to the filter
chain when SR-IOV is enabled, so that instances with SR-IOV device
assignments are scheduled to the correct compute hosts.

Change-Id: Iffa77abf22823ce37999ea08f943ce5eeb6af492
This commit is contained in:
Timothy Kuhlman 2016-05-24 16:51:25 -06:00
parent dee3e41231
commit 422c2797b3
4 changed files with 14 additions and 0 deletions
hooks
templates

@ -102,6 +102,8 @@ class NeutronAPIContext(context.OSContextGenerator):
rdata.get('neutron-security-groups'),
'network_manager': 'neutron',
}
if rdata.get('enable-sriov'):
ctxt['additional_neutron_filters'] = 'PciPassthroughFilter'
if context_complete(ctxt):
return ctxt
return {}

@ -30,7 +30,11 @@ ec2_listen = {{ bind_host }}
osapi_compute_workers = {{ workers }}
ec2_workers = {{ workers }}
{% if additional_neutron_filters is defined %}
scheduler_default_filters = {{ scheduler_default_filters }},{{ additional_neutron_filters }}
{% else %}
scheduler_default_filters = {{ scheduler_default_filters }}
{% endif %}
cpu_allocation_ratio = {{ cpu_allocation_ratio }}
ram_allocation_ratio = {{ ram_allocation_ratio }}

@ -30,7 +30,11 @@ ec2_listen = {{ bind_host }}
osapi_compute_workers = {{ workers }}
ec2_workers = {{ workers }}
{% if additional_neutron_filters is defined %}
scheduler_default_filters = {{ scheduler_default_filters }},{{ additional_neutron_filters }}
{% else %}
scheduler_default_filters = {{ scheduler_default_filters }}
{% endif %}
cpu_allocation_ratio = {{ cpu_allocation_ratio }}
ram_allocation_ratio = {{ ram_allocation_ratio }}

@ -27,7 +27,11 @@ s3_listen = {{ bind_host }}
osapi_compute_workers = {{ workers }}
{% if additional_neutron_filters is defined %}
scheduler_default_filters = {{ scheduler_default_filters }},{{ additional_neutron_filters }}
{% else %}
scheduler_default_filters = {{ scheduler_default_filters }}
{% endif %}
cpu_allocation_ratio = {{ cpu_allocation_ratio }}
ram_allocation_ratio = {{ ram_allocation_ratio }}