[Neutron] sriov network setup for victoria - clarification needed
Hello, I have two victoria environments: 1) a working one, standard setup with separate dedicated interface for sriov (pt0 and pt1) 2) a broken one, where I'm trying to reuse one of already used interfaces (ens2f0 or ens2f1) for sriov. ens2f0 is used for several VLANs (mgmt and storage) and ens2f1 is a neutron external interface which I bridged for VLAN tenant networks. On both I have enabled 63 VFs, it's a standard intetl 10Gb x540 adapter.
On broken environment, when I'm trying to boot a VM with sriov port that I created before, I see this error shown on below gist: https://gist.github.com/moss2k13/8e6272cbe7748b2c5210fab291360e0b
I'm investigating this for couple days now but I'm out of ideas so I'd like to ask for your support. Is this possible to achieve what I'm trying to do on 2nd environment? To use PF as normal interface and use its VFs for sriov-agent at the same time?
Regards, Piotr Mossakowski
Hello Piotr:
Maybe you should update the pyroute2 library, but this is a blind shot.
What I recommend you do is to find the error you have when retrieving the interface VFs. In the same compute node, use this method [1] but remove the decorator [2]. Then, in a root shell, run python again:
from neutron.privileged.agent.linux import ip_lib ip_lib.get_link_vfs('ens2f0', '')
That will execute the pyroute2 code without the privsep decorator. You'll see what error is returning the method.
Regards.
[1] https://github.com/openstack/neutron/blob/5d4f5d42d0a8c7ee157912cb29cae0e4de... [2] https://github.com/openstack/neutron/blob/5d4f5d42d0a8c7ee157912cb29cae0e4de...
On Mon, May 31, 2021 at 5:50 PM forums@mossakowski.ch wrote:
Hello, I have two victoria environments:
- a working one, standard setup with separate dedicated interface for
sriov (pt0 and pt1) 2) a broken one, where I'm trying to reuse one of already used interfaces (ens2f0 or ens2f1) for sriov. ens2f0 is used for several VLANs (mgmt and storage) and ens2f1 is a neutron external interface which I bridged for VLAN tenant networks. On both I have enabled 63 VFs, it's a standard intetl 10Gb x540 adapter.
On broken environment, when I'm trying to boot a VM with sriov port that I created before, I see this error shown on below gist: https://gist.github.com/moss2k13/8e6272cbe7748b2c5210fab291360e0b
I'm investigating this for couple days now but I'm out of ideas so I'd like to ask for your support. Is this possible to achieve what I'm trying to do on 2nd environment? To use PF as normal interface and use its VFs for sriov-agent at the same time?
Regards, Piotr Mossakowski
Muchas gracias Alonso para tu ayuda!
I've commented out the decorator line, new exception popped out, I've updated my gist:
https://gist.github.com/8e6272cbe7748b2c5210fab291360e0b
BR,
Piotr Mossakowski
Sent from ProtonMail mobile
-------- Original Message -------- On 31 May 2021, 18:08, Rodolfo Alonso Hernandez < ralonsoh@redhat.com> wrote:
Hello Piotr:
Maybe you should update the pyroute2 library, but this is a blind shot.
What I recommend you do is to find the error you have when retrieving the interface VFs. In the same compute node, use this method [1] but remove the decorator [2]. Then, in a root shell, run python again:
from neutron.privileged.agent.linux import ip_lib ip_lib.get_link_vfs('ens2f0', '')
That will execute the pyroute2 code without the privsep decorator. You'll see what error is returning the method.
Regards.
[1][https://github.com/openstack/neutron/blob/5d4f5d42d0a8c7ee157912cb29cae0e4de...]
[2][https://github.com/openstack/neutron/blob/5d4f5d42d0a8c7ee157912cb29cae0e4de...]
On Mon, May 31, 2021 at 5:50 PM <[forums@mossakowski.ch][forums_mossakowski.ch]> wrote:
Hello,
I have two victoria environments:
a working one, standard setup with separate dedicated interface for sriov (pt0 and pt1)
a broken one, where I'm trying to reuse one of already used interfaces (ens2f0 or ens2f1) for sriov. ens2f0 is used for several VLANs (mgmt and storage) and ens2f1 is a neutron external interface which I bridged for VLAN tenant networks. On both I have enabled 63 VFs, it's a standard intetl 10Gb x540 adapter.
On broken environment, when I'm trying to boot a VM with sriov port that I created before, I see this error shown on below gist:
https://gist.github.com/moss2k13/8e6272cbe7748b2c5210fab291360e0b
I'm investigating this for couple days now but I'm out of ideas so I'd like to ask for your support. Is this possible to achieve what I'm trying to do on 2nd environment? To use PF as normal interface and use its VFs for sriov-agent at the same time?
Regards,
Piotr Mossakowski
[https_github.com_openstack_neutron_blob_5d4f5d42d0a8c7ee157912cb29cae0e4deff984b_neutron_privileged_agent_linux_ip_lib.py_L396-L410]: https://github.com/openstack/neutron/blob/5d4f5d42d0a8c7ee157912cb29cae0e4de... [https_github.com_openstack_neutron_blob_5d4f5d42d0a8c7ee157912cb29cae0e4deff984b_neutron_privileged_agent_linux_ip_lib.py_L395]: https://github.com/openstack/neutron/blob/5d4f5d42d0a8c7ee157912cb29cae0e4de... [forums_mossakowski.ch]: mailto:forums@mossakowski.ch
Hi Piotr:
I think you are hitting [1]. As you said, each PF has 63 VFs configured. Your error looks very similar to this one reported.
Try updating pyroute2 to version 0.6.2. That should contain the fix for this error.
Regards.
[1]https://github.com/svinota/pyroute2/issues/751
On Thu, Jun 3, 2021 at 12:06 AM forums@mossakowski.ch wrote:
Muchas gracias Alonso para tu ayuda!
I've commented out the decorator line, new exception popped out, I've updated my gist:
https://gist.github.com/8e6272cbe7748b2c5210fab291360e0b
BR,
Piotr Mossakowski
Sent from ProtonMail mobile
-------- Original Message -------- On 31 May 2021, 18:08, Rodolfo Alonso Hernandez < ralonsoh@redhat.com> wrote:
Hello Piotr:
Maybe you should update the pyroute2 library, but this is a blind shot.
What I recommend you do is to find the error you have when retrieving the interface VFs. In the same compute node, use this method [1] but remove the decorator [2]. Then, in a root shell, run python again:
from neutron.privileged.agent.linux import ip_lib ip_lib.get_link_vfs('ens2f0', '')
That will execute the pyroute2 code without the privsep decorator. You'll see what error is returning the method.
Regards.
[1] https://github.com/openstack/neutron/blob/5d4f5d42d0a8c7ee157912cb29cae0e4de... [2] https://github.com/openstack/neutron/blob/5d4f5d42d0a8c7ee157912cb29cae0e4de...
On Mon, May 31, 2021 at 5:50 PM forums@mossakowski.ch wrote:
Hello, I have two victoria environments:
- a working one, standard setup with separate dedicated interface for
sriov (pt0 and pt1) 2) a broken one, where I'm trying to reuse one of already used interfaces (ens2f0 or ens2f1) for sriov. ens2f0 is used for several VLANs (mgmt and storage) and ens2f1 is a neutron external interface which I bridged for VLAN tenant networks. On both I have enabled 63 VFs, it's a standard intetl 10Gb x540 adapter.
On broken environment, when I'm trying to boot a VM with sriov port that I created before, I see this error shown on below gist: https://gist.github.com/moss2k13/8e6272cbe7748b2c5210fab291360e0b
I'm investigating this for couple days now but I'm out of ideas so I'd like to ask for your support. Is this possible to achieve what I'm trying to do on 2nd environment? To use PF as normal interface and use its VFs for sriov-agent at the same time?
Regards, Piotr Mossakowski
Hi, 0.6.3 has another increase for the DEFAULT_RCVBUF: https://github.com/svinota/pyroute2/issues/813
Regards Lajos Katona (lajoskatona)
Rodolfo Alonso Hernandez ralonsoh@redhat.com ezt írta (időpont: 2021. jún. 3., Cs, 9:16):
Hi Piotr:
I think you are hitting [1]. As you said, each PF has 63 VFs configured. Your error looks very similar to this one reported.
Try updating pyroute2 to version 0.6.2. That should contain the fix for this error.
Regards.
[1]https://github.com/svinota/pyroute2/issues/751
On Thu, Jun 3, 2021 at 12:06 AM forums@mossakowski.ch wrote:
Muchas gracias Alonso para tu ayuda!
I've commented out the decorator line, new exception popped out, I've updated my gist:
https://gist.github.com/8e6272cbe7748b2c5210fab291360e0b
BR,
Piotr Mossakowski
Sent from ProtonMail mobile
-------- Original Message -------- On 31 May 2021, 18:08, Rodolfo Alonso Hernandez < ralonsoh@redhat.com> wrote:
Hello Piotr:
Maybe you should update the pyroute2 library, but this is a blind shot.
What I recommend you do is to find the error you have when retrieving the interface VFs. In the same compute node, use this method [1] but remove the decorator [2]. Then, in a root shell, run python again:
from neutron.privileged.agent.linux import ip_lib ip_lib.get_link_vfs('ens2f0', '')
That will execute the pyroute2 code without the privsep decorator. You'll see what error is returning the method.
Regards.
[1] https://github.com/openstack/neutron/blob/5d4f5d42d0a8c7ee157912cb29cae0e4de... [2] https://github.com/openstack/neutron/blob/5d4f5d42d0a8c7ee157912cb29cae0e4de...
On Mon, May 31, 2021 at 5:50 PM forums@mossakowski.ch wrote:
Hello, I have two victoria environments:
- a working one, standard setup with separate dedicated interface for
sriov (pt0 and pt1) 2) a broken one, where I'm trying to reuse one of already used interfaces (ens2f0 or ens2f1) for sriov. ens2f0 is used for several VLANs (mgmt and storage) and ens2f1 is a neutron external interface which I bridged for VLAN tenant networks. On both I have enabled 63 VFs, it's a standard intetl 10Gb x540 adapter.
On broken environment, when I'm trying to boot a VM with sriov port that I created before, I see this error shown on below gist: https://gist.github.com/moss2k13/8e6272cbe7748b2c5210fab291360e0b
I'm investigating this for couple days now but I'm out of ideas so I'd like to ask for your support. Is this possible to achieve what I'm trying to do on 2nd environment? To use PF as normal interface and use its VFs for sriov-agent at the same time?
Regards, Piotr Mossakowski
Thanks for the support!
I've patched pyroute and now I'm able to attach sriov ports to a running VMs.
Cheers!
Piotr Mossakowski
Sent from ProtonMail mobile
-------- Original Message -------- On 3 Jun 2021, 15:05, Lajos Katona < katonalala@gmail.com> wrote:
Hi,
0.6.3 has another increase for the DEFAULT_RCVBUF:
https://github.com/svinota/pyroute2/issues/813
Regards
Lajos Katona (lajoskatona)
Rodolfo Alonso Hernandez <[ralonsoh@redhat.com][ralonsoh_redhat.com]> ezt írta (időpont: 2021. jún. 3., Cs, 9:16):
Hi Piotr:
I think you are hitting [1]. As you said, each PF has 63 VFs configured. Your error looks very similar to this one reported.
Try updating pyroute2 to version 0.6.2. That should contain the fix for this error.
Regards.
[1]https://github.com/svinota/pyroute2/issues/751
On Thu, Jun 3, 2021 at 12:06 AM <[forums@mossakowski.ch][forums_mossakowski.ch]> wrote:
Muchas gracias Alonso para tu ayuda!
I've commented out the decorator line, new exception popped out, I've updated my gist:
https://gist.github.com/8e6272cbe7748b2c5210fab291360e0b
BR,
Piotr Mossakowski
Sent from ProtonMail mobile
-------- Original Message -------- On 31 May 2021, 18:08, Rodolfo Alonso Hernandez < [ralonsoh@redhat.com][ralonsoh_redhat.com]> wrote:
Hello Piotr:
Maybe you should update the pyroute2 library, but this is a blind shot.
What I recommend you do is to find the error you have when retrieving the interface VFs. In the same compute node, use this method [1] but remove the decorator [2]. Then, in a root shell, run python again:
> from neutron.privileged.agent.linux import ip_lib > ip_lib.get_link_vfs('ens2f0', '')
That will execute the pyroute2 code without the privsep decorator. You'll see what error is returning the method.
Regards.
[1][https://github.com/openstack/neutron/blob/5d4f5d42d0a8c7ee157912cb29cae0e4de...]
[2][https://github.com/openstack/neutron/blob/5d4f5d42d0a8c7ee157912cb29cae0e4de...]
On Mon, May 31, 2021 at 5:50 PM <[forums@mossakowski.ch][forums_mossakowski.ch]> wrote:
Hello,
I have two victoria environments:
a working one, standard setup with separate dedicated interface for sriov (pt0 and pt1)
a broken one, where I'm trying to reuse one of already used interfaces (ens2f0 or ens2f1) for sriov. ens2f0 is used for several VLANs (mgmt and storage) and ens2f1 is a neutron external interface which I bridged for VLAN tenant networks. On both I have enabled 63 VFs, it's a standard intetl 10Gb x540 adapter.
On broken environment, when I'm trying to boot a VM with sriov port that I created before, I see this error shown on below gist:
https://gist.github.com/moss2k13/8e6272cbe7748b2c5210fab291360e0b
I'm investigating this for couple days now but I'm out of ideas so I'd like to ask for your support. Is this possible to achieve what I'm trying to do on 2nd environment? To use PF as normal interface and use its VFs for sriov-agent at the same time?
Regards,
Piotr Mossakowski
[ralonsoh_redhat.com]: mailto:ralonsoh@redhat.com [forums_mossakowski.ch]: mailto:forums@mossakowski.ch [https_github.com_openstack_neutron_blob_5d4f5d42d0a8c7ee157912cb29cae0e4deff984b_neutron_privileged_agent_linux_ip_lib.py_L396-L410]: https://github.com/openstack/neutron/blob/5d4f5d42d0a8c7ee157912cb29cae0e4de... [https_github.com_openstack_neutron_blob_5d4f5d42d0a8c7ee157912cb29cae0e4deff984b_neutron_privileged_agent_linux_ip_lib.py_L395]: https://github.com/openstack/neutron/blob/5d4f5d42d0a8c7ee157912cb29cae0e4de...
participants (3)
-
forums@mossakowski.ch
-
Lajos Katona
-
Rodolfo Alonso Hernandez