[Octavia] Can not create LB on SRIOV network

Zhang, Jing C. (Nokia - CA/Ottawa) jing.c.zhang at nokia.com
Thu Oct 7 22:18:15 UTC 2021

Hi Michael,

Thank you so much for the information.

I tried the extra-flavor walk-around, I can not use it to create VM in Train release, I suspect this old extra-flavor is too old, but I did not dig further.

However, both Train and  latest nova spec still shows the above extra-flavor with the old whitelist format:

Here is the detail:

Env: NIC is intel 82599, creating VM with SRIOV direct port works well.





(1) Added the alias in nova.conf for nova-compute and nova-api, and restart the two nova components:

alias = { "vendor_id":"8086", "product_id":"10ed", "device_type":"type-VF", "name":"vf", "numa_policy": "required" }

(2) Used the extra-spec in nova flavor

openstack flavor set octavia-flavor --property "pci_passthrough:alias"="vf:1"

(3) Failed to create VM with this flavor, sriov agent log does not show port event, for sure also failed to create LB, PortBindingFailed

(4) Tried multiple formats to add whitelist for PF and VF in nova.conf for nova-compute, and retried, still failed

passthrough_whitelist={"vendor_id":"8086","product_id":"10f8","devname":"ens1f0","physical_network":"physnet5"} #PF
passthrough_whitelist={"vendor_id":"8086","product_id":"10ed","physical_network":"physnet5"} #VF

The sriov agent log does not show port event for any of them.

-----Original Message-----
From: Michael Johnson <johnsomor at gmail.com> 
Sent: Wednesday, October 6, 2021 4:48 PM
To: Zhang, Jing C. (Nokia - CA/Ottawa) <jing.c.zhang at nokia.com>
Cc: openstack-discuss at lists.openstack.org
Subject: Re: [Octavia] Can not create LB on SRIOV network

Hi Jing,

To my knowledge no one has done the work to support SRIOV network ports in Octavia load balancers. This is an open roadmap item[1].

It will require some development effort as we hot-plug the tenant traffic ports, which means we need to give nova some hints when booting the instances that the amphora instance will be using SRIOV.

You might be able to accomplish it on train using the flavors capability. You would create a special nova flavor with the required "extra_specs"[2] to schedule the instance on the proper SRIOV host with the SRIOV libvirt settings. Then you can create an Octavia flavor[3] that uses this special nova flavor. You could then create a load balancer by passing in the neutron SRIOV port as the VIP port.
This would not provide a solution for adding additional SRIOV ports to the load balancer for the member servers, but you can use the VIP port to access members.

I have not tried this and would be interested to hear if it works for you.

If you are interested in implementing SRIOV support for Octavia, please consider adding it to the PTG agenda[4] and joining us at the virtual PTG.


[1] https://wiki.openstack.org/wiki/Octavia/Roadmap
[2] https://docs.openstack.org/nova/xena/configuration/extra-specs.html
[3] https://docs.openstack.org/octavia/latest/admin/flavors.html
[4] https://etherpad.opendev.org/p/yoga-ptg-octavia

On Wed, Oct 6, 2021 at 10:24 AM Zhang, Jing C. (Nokia - CA/Ottawa) <jing.c.zhang at nokia.com> wrote:
> I can not create Octavia LB on SRIOV network in Train. I went to Octavia story board, did a search but was unable to figure out (the story for SRIOV…).
> I left a comment under this story, I re-post my questions there, hoping someone knows the answer.
> Thank you so much
> Jing
> https://storyboard.openstack.org/#!/story/2006886 Add VM SRIOV 
> Interface Config Guide (Openstack)
> Hi,
> In Openstack train release, creating Octavia LB on SRIOV network fails.
> I come here to search if there is already a plan to add this support, and see this story.
> This story gives the impression that the capability is already supported, it is a matter of adding user guide.
> So, my question is, in which Openstack release, creating LB on SRIOV network is supported?
> Thank you

More information about the openstack-discuss mailing list