Hi!


I have deployed Openstack Xena using kolla-ansible (v13.0.1) on a multi-node setup (1 controller+network, multiple computes).

 

On this cluster I would like to have support for normal, as well as direct (SR-IOV) vNIC types.

 

I have done all the pre-requirement like configure VF on SR-IOV network interface.

 

In the current deployment, I have created two physnets, one for flat network (called physnet1 on br-ex), and one for SR-IOV (called sriovnet1 on Intel 10G 2P X520 card). I am creating one network of VXLAN type for normal vNIC, and one of VLAN type on sriovnet1 (called sriov_network) for direct vNIC.

 

Mapping of PF with provider in sriov-agent.ini:

 

# cat /etc/kolla/neutron-sriov-agent/sriov_agent.ini

[sriov_nic]

physical_device_mappings = sriovnet1:enp8s0f1

exclude_devices =

 

[securitygroup]

firewall_driver = neutron.agent.firewall.NoopFirewallDriver

 

----------------------------------------------

ml2_conf.ini on controller node:

 

# cat /etc/kolla/neutron-server/ml2_conf.ini

[ml2]

type_drivers = flat,vlan,vxlan

tenant_network_types = vxlan,vlan,flat

mechanism_drivers = openvswitch,l2population,sriovnicswitch

extension_drivers = port_security

 

[ml2_type_vlan]

network_vlan_ranges = physnet1,sriovnet1:1000:1009

 

[ml2_type_flat]

flat_networks = physnet1,sriovnet1

 

[ml2_sriov]

agent_required = False

supported_pci_vendor_devs = 8086:10ed

 

[ml2_type_vxlan]

vni_ranges = 1:1000

 

----------------------------------------------

 

# grep -nr enabled_filters /etc/kolla/nova-scheduler/

/etc/kolla/nova-scheduler/nova.conf:13:enabled_filters = ComputeFilter,AvailabilityZoneFilter,ComputeCapabilitiesFilter,ImagePropertiesFilter,ServerGroupAntiAffinityFilter,ServerGroupAffinityFilter,SameHostFilter,DifferentHostFilter,AggregateInstanceExtraSpecsFilter,PciPassthroughFilter

 

----------------------------------------------

 

# grep passthrough /etc/kolla/nova-compute/nova.conf

passthrough_whitelist = [{"physical_network": "sriovnet1", "devname": "enp8s0f1"}]

 

 

The interfaces on VMs from normal vNICs are able to communicate inter-compute. The same is not working for the direct vNICs belonging to the sriov_network. I have tried multiple config changes, but none seem to work.

 

Please help in solving this issue, or suggest a different way of achieving this if this is wrong or not optimal.

 

Thanks!


Regards,
Harshit Mishra