← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1970216] [NEW] not sending Nova notification when using neutron API on mod_wsgi

 

Public bug reported:

When using Neutron API server with Apache mod_wsgi then
notification to Nova are not always send and lost.

How to reproduce: Ubuntu 20.04; upstream devstack master configured
with Apache mod_wsgi [1]

stack@devstack11:~$ openstack server create --availability-zone nova:devstack11 --net public --key-name test --flavor ds512M --image ubuntu t1
stack@devstack11:~$ openstack port create --net private test_port; openstack server add port t1 test_port

VM get it's port properly:

stack@devstack11:~/devstack$ openstack port show test_port -c id -c device_id
+-----------+--------------------------------------+
| Field     | Value                                |
+-----------+--------------------------------------+
| device_id | 59d7e21b-7d43-4ee6-a82b-e43d12c6e9ae |
| id        | 4ed67e46-535e-4a51-af95-f46497ecfdb4 |
+-----------+--------------------------------------+

stack@devstack11:/usr/lib/cgi-bin/neutron$ sudo virsh domiflist instance-00000015
 Interface        Type       Source   Model    MAC
------------------------------------------------------------------
 tapbef7c488-e4   ethernet   -        virtio   fa:16:3e:d1:23:72
 tap4ed67e46-53   ethernet   -        virtio   fa:16:3e:60:3f:1a

but when deleting port from neutron API:

stack@devstack11:~/neutron$ openstack port delete test_port

on libvirt:

stack@devstack11:/usr/lib/cgi-bin/neutron$ sudo virsh domiflist instance-00000015
 Interface        Type       Source   Model    MAC
------------------------------------------------------------------
 tapbef7c488-e4   ethernet   -        virtio   fa:16:3e:d1:23:72
 tap4ed67e46-53   ethernet   -        virtio   fa:16:3e:60:3f:1a

and on neutron side:
stack@devstack11:~/devstack$ openstack port show test_port -c id -c device_id
No Port found for test_port

after few tries you can end up with:

stack@devstack11:~/neutron$ openstack port show test_port -c id
No Port found for test_port

and

stack@devstack11:/usr/lib/cgi-bin/neutron$ sudo virsh domiflist instance-00000015
 Interface        Type       Source   Model    MAC
------------------------------------------------------------------
 tapbef7c488-e4   ethernet   -        virtio   fa:16:3e:d1:23:72
 tap4ed67e46-53   ethernet   -        virtio   fa:16:3e:60:3f:1a
 tap2b20446c-3d   ethernet   -        virtio   fa:16:3e:22:6c:19
 tapea396111-d3   ethernet   -        virtio   fa:16:3e:c3:38:4a

[1] https://docs.openstack.org/neutron/yoga/admin/config-
wsgi.html#neutron-api-behind-mod-wsgi

** Affects: neutron
     Importance: Undecided
         Status: New

** Description changed:

  When using Neutron API server with Apache mod_wsgi then
  notification to Nova are not always send and lost.
  
  How to reproduce: Ubuntu 20.04; upstream devstack master configured
  with Apache mod_wsgi [1]
  
- stack@devstack11:~$ openstack server create --availability-zone nova:devstack11 --net public --key-name test --flavor ds512M --image ubuntu test1
+ stack@devstack11:~$ openstack server create --availability-zone nova:devstack11 --net public --key-name test --flavor ds512M --image ubuntu t1
  stack@devstack11:~$ openstack port create --net private test_port; openstack server add port t1 test_port
  
  VM get it's port properly:
  
  stack@devstack11:~/devstack$ openstack port show test_port -c id -c device_id
  +-----------+--------------------------------------+
  | Field     | Value                                |
  +-----------+--------------------------------------+
  | device_id | 59d7e21b-7d43-4ee6-a82b-e43d12c6e9ae |
  | id        | 4ed67e46-535e-4a51-af95-f46497ecfdb4 |
  +-----------+--------------------------------------+
  
  stack@devstack11:/usr/lib/cgi-bin/neutron$ sudo virsh domiflist instance-00000015
-  Interface        Type       Source   Model    MAC
+  Interface        Type       Source   Model    MAC
  ------------------------------------------------------------------
-  tapbef7c488-e4   ethernet   -        virtio   fa:16:3e:d1:23:72
-  tap4ed67e46-53   ethernet   -        virtio   fa:16:3e:60:3f:1a
+  tapbef7c488-e4   ethernet   -        virtio   fa:16:3e:d1:23:72
+  tap4ed67e46-53   ethernet   -        virtio   fa:16:3e:60:3f:1a
  
  but when deleting port from neutron API:
  
  stack@devstack11:~/neutron$ openstack port delete test_port
  
  on libvirt:
  
  stack@devstack11:/usr/lib/cgi-bin/neutron$ sudo virsh domiflist instance-00000015
-  Interface        Type       Source   Model    MAC
+  Interface        Type       Source   Model    MAC
  ------------------------------------------------------------------
-  tapbef7c488-e4   ethernet   -        virtio   fa:16:3e:d1:23:72
-  tap4ed67e46-53   ethernet   -        virtio   fa:16:3e:60:3f:1a
- 
+  tapbef7c488-e4   ethernet   -        virtio   fa:16:3e:d1:23:72
+  tap4ed67e46-53   ethernet   -        virtio   fa:16:3e:60:3f:1a
  
  and on neutron side:
  stack@devstack11:~/devstack$ openstack port show test_port -c id -c device_id
  No Port found for test_port
- 
  
  after few tries you can end up with:
  
  stack@devstack11:~/neutron$ openstack port show test_port -c id
  No Port found for test_port
  
  and
  
  stack@devstack11:/usr/lib/cgi-bin/neutron$ sudo virsh domiflist instance-00000015
-  Interface        Type       Source   Model    MAC
+  Interface        Type       Source   Model    MAC
  ------------------------------------------------------------------
-  tapbef7c488-e4   ethernet   -        virtio   fa:16:3e:d1:23:72
-  tap4ed67e46-53   ethernet   -        virtio   fa:16:3e:60:3f:1a
-  tap2b20446c-3d   ethernet   -        virtio   fa:16:3e:22:6c:19
-  tapea396111-d3   ethernet   -        virtio   fa:16:3e:c3:38:4a
+  tapbef7c488-e4   ethernet   -        virtio   fa:16:3e:d1:23:72
+  tap4ed67e46-53   ethernet   -        virtio   fa:16:3e:60:3f:1a
+  tap2b20446c-3d   ethernet   -        virtio   fa:16:3e:22:6c:19
+  tapea396111-d3   ethernet   -        virtio   fa:16:3e:c3:38:4a
  
- 
- [1] https://docs.openstack.org/neutron/yoga/admin/config-wsgi.html#neutron-api-behind-mod-wsgi
+ [1] https://docs.openstack.org/neutron/yoga/admin/config-
+ wsgi.html#neutron-api-behind-mod-wsgi

** Summary changed:

- not sending Nova notification when using neutron API on WSGI
+ not sending Nova notification when using neutron API on mod_wsgi

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to neutron.
https://bugs.launchpad.net/bugs/1970216

Title:
  not sending Nova notification when using neutron API on mod_wsgi

Status in neutron:
  New

Bug description:
  When using Neutron API server with Apache mod_wsgi then
  notification to Nova are not always send and lost.

  How to reproduce: Ubuntu 20.04; upstream devstack master configured
  with Apache mod_wsgi [1]

  stack@devstack11:~$ openstack server create --availability-zone nova:devstack11 --net public --key-name test --flavor ds512M --image ubuntu t1
  stack@devstack11:~$ openstack port create --net private test_port; openstack server add port t1 test_port

  VM get it's port properly:

  stack@devstack11:~/devstack$ openstack port show test_port -c id -c device_id
  +-----------+--------------------------------------+
  | Field     | Value                                |
  +-----------+--------------------------------------+
  | device_id | 59d7e21b-7d43-4ee6-a82b-e43d12c6e9ae |
  | id        | 4ed67e46-535e-4a51-af95-f46497ecfdb4 |
  +-----------+--------------------------------------+

  stack@devstack11:/usr/lib/cgi-bin/neutron$ sudo virsh domiflist instance-00000015
   Interface        Type       Source   Model    MAC
  ------------------------------------------------------------------
   tapbef7c488-e4   ethernet   -        virtio   fa:16:3e:d1:23:72
   tap4ed67e46-53   ethernet   -        virtio   fa:16:3e:60:3f:1a

  but when deleting port from neutron API:

  stack@devstack11:~/neutron$ openstack port delete test_port

  on libvirt:

  stack@devstack11:/usr/lib/cgi-bin/neutron$ sudo virsh domiflist instance-00000015
   Interface        Type       Source   Model    MAC
  ------------------------------------------------------------------
   tapbef7c488-e4   ethernet   -        virtio   fa:16:3e:d1:23:72
   tap4ed67e46-53   ethernet   -        virtio   fa:16:3e:60:3f:1a

  and on neutron side:
  stack@devstack11:~/devstack$ openstack port show test_port -c id -c device_id
  No Port found for test_port

  after few tries you can end up with:

  stack@devstack11:~/neutron$ openstack port show test_port -c id
  No Port found for test_port

  and

  stack@devstack11:/usr/lib/cgi-bin/neutron$ sudo virsh domiflist instance-00000015
   Interface        Type       Source   Model    MAC
  ------------------------------------------------------------------
   tapbef7c488-e4   ethernet   -        virtio   fa:16:3e:d1:23:72
   tap4ed67e46-53   ethernet   -        virtio   fa:16:3e:60:3f:1a
   tap2b20446c-3d   ethernet   -        virtio   fa:16:3e:22:6c:19
   tapea396111-d3   ethernet   -        virtio   fa:16:3e:c3:38:4a

  [1] https://docs.openstack.org/neutron/yoga/admin/config-
  wsgi.html#neutron-api-behind-mod-wsgi

To manage notifications about this bug go to:
https://bugs.launchpad.net/neutron/+bug/1970216/+subscriptions



Follow ups