Hello:

You need to specify two config files: the neutron.conf and the ML2 plugin one; in this case /etc/neutron/plugins/ml2/ml2_conf.ini. Other installers create a ML2 plugin config file per backend but this is not necessary.

Regards.

On Wed, Dec 30, 2020 at 8:29 AM Slawek Kaplonski <skaplons@redhat.com> wrote:
Hi,

Dnia środa, 30 grudnia 2020 01:07:42 CET Gabriel Omar Gamero Montenegro pisze:
> Dear all,
>
> I'm following the OpenStack guide for
>  the implementation of SR-IOV mechanism driver.
> I'm planning to incorporate this driver to
>  my current OpenStack deployment (Queens).
>
> Config SR-IOV Guide:
> https://docs.openstack.org/neutron/queens/admin/config-sriov.html
>
> At point 2, section "Configure neutron-server (Controller)"
>  they said that I have to add the 'plugin.ini' file
>   as a parameter to the neutron-server service.
> To do this they require to
>  <<edit the appropriate initialization script to configure the
>   neutron-server service to load the plugin configuration file>>:
> --config-file /etc/neutron/neutron.conf
> --config-file /etc/neutron/plugin.ini
>
> I'd like to know a few things:
>
> (1) Which plugin.ini file are talking about?

That is IMO good question. I see this file for the first time now :)
Looking at the commit [1] and commits which this patch reference to I think
that this may be some old leftover which should be cleaned.
But maybe Rodolfo will know more as he s our SR-IOV expert in the team.

> (2) How to set up the neutron-server initialization script
>  to add the plugin.ini file?
>   I understand that this varies between OS distro
>    (I'm currently using Ubuntu 16.04 LTS server)
>
> Here are some things I tried...
>
> I got the following results executing this command:
>
> systemctl status neutron-server.service
> ● neutron-server.service - OpenStack Neutron Server
>    Loaded: loaded (/lib/systemd/system/neutron-server.service;
>     enabled; vendor preset: enabled)
>    Active: active (running) since Tue 2020-12-29 18:13:50 -05
>  Main PID: 38590 (neutron-server)
>     Tasks: 44
>    Memory: 738.8M
>       CPU: 29.322s
>    CGroup: /system.slice/neutron-server.service
>            ├─38590 /usr/bin/python2 /usr/bin/neutron-server
>             --config-file=/etc/neutron/neutron.conf
>              --config-file=/etc/neutron/plugins/ml2/ml2_conf.ini
>               --log-file=/var/log/neutron/neutron-server.log
> ...
>
> I see 2 things:
>
> (i) When neutron-server is exectured,
>  the following parameters are passed:
> --config-file=/etc/neutron/neutron.conf
> --config-file=/etc/neutron/plugins/ml2/ml2_conf.ini
> --log-file=/var/log/neutron/neutron-server.log
>
> (ii) The file '/lib/systemd/system/neutron-server.service'
>  is loaded and it has the following content:
> ...
> ExecStart=/etc/init.d/neutron-server systemd-start
> ...
>
> This indicates me that it's executing
>  '/etc/init.d/neutron-server' script.
> So I suppose this is the file indicated to add the parameters
>  of the SR-IOV OpenStack documentation,
>   but I have no idea where to put them.
>
> For Red-Hat distros I found this documentation
>  with the following configuration:
> https://access.redhat.com/documentation/en-us/
> red_hat_enterprise_linux_openstack_platform/7/html/networking_guide
> /sr-iov-support-for-virtual-networking
>
> vi /usr/lib/systemd/system/neutron-server.service
> ...
> ExecStart=/usr/bin/neutron-server
>  --config-file /usr/share/neutron/neutron-dist.conf
>   --config-file /etc/neutron/neutron.conf
>    --config-file /etc/neutron/plugin.ini
>     --config-file /etc/neutron/plugins/ml2/ml2_conf_sriov.ini
>      --log-file /var/log/neutron/server.log
>
> Thanks in advance,
> Gabriel Gamero

[1] https://github.com/openstack/neutron/commit/
c4e76908ae0d8c1e5bcb7f839df5e22094805299

--
Slawek Kaplonski
Principal Software Engineer
Red Hat