[eventlet-removal] Use non-eventlet metadata proxy in OVN metadata agent
The new metadata proxy server implementation, used in the OVN agent, is now used in the OVN metadata agent. The same limitation applies: it is only possible to create a server inside a thread, running in the same process (same as with metadata_workers=0). The configuration variable metadata_workers no longer applies. Closes-Bug: #2087941 Change-Id: If5d74d6e21a22e4f4dbed27ed9be828adad857e8
This commit is contained in:
@@ -64,6 +64,16 @@ This implementation does not rely on ``neutron.api.wsgi.Server`` nor
|
||||
implementations will enable again this configuration variable.
|
||||
|
||||
|
||||
OVN metadata agent
|
||||
------------------
|
||||
|
||||
Metadata proxy
|
||||
~~~~~~~~~~~~~~
|
||||
|
||||
The OVN metadata agent uses the same implementation as the OVN agent. The same
|
||||
limitations apply.
|
||||
|
||||
|
||||
Neutron API
|
||||
-----------
|
||||
|
||||
|
@@ -34,7 +34,7 @@ from neutron.agent.linux import iptables_manager
|
||||
from neutron.agent.ovn.agent import ovn_neutron_agent
|
||||
from neutron.agent.ovn.metadata import driver as metadata_driver
|
||||
from neutron.agent.ovn.metadata import ovsdb
|
||||
from neutron.agent.ovn.metadata import server as metadata_server
|
||||
from neutron.agent.ovn.metadata import server_socket as metadata_server
|
||||
from neutron.common.ovn import constants as ovn_const
|
||||
from neutron.common.ovn import utils as ovn_utils
|
||||
from neutron.common import utils
|
||||
|
@@ -27,7 +27,7 @@ import testtools
|
||||
from neutron.agent.linux import iptables_manager
|
||||
from neutron.agent.ovn.metadata import agent
|
||||
from neutron.agent.ovn.metadata import ovsdb
|
||||
from neutron.agent.ovn.metadata import server as metadata_server
|
||||
from neutron.agent.ovn.metadata import server_socket as metadata_server
|
||||
from neutron.common.ovn import constants as ovn_const
|
||||
from neutron.common import utils as n_utils
|
||||
from neutron.conf.agent.metadata import config as meta_config
|
||||
@@ -453,7 +453,7 @@ class TestMetadataAgent(base.TestOVNFunctionalBase):
|
||||
|
||||
def test_metadata_proxy_handler_idl(self):
|
||||
# This test relies on the configuration option metadata_workers=0
|
||||
proxy_sb_idl = self.agent._proxy.server._server._application.sb_idl
|
||||
proxy_sb_idl = metadata_server.MetadataProxyHandler._sb_idl
|
||||
agent_sb_idl = self.agent.sb_idl
|
||||
self.assertEqual(agent_sb_idl, proxy_sb_idl)
|
||||
|
||||
|
@@ -56,7 +56,7 @@ console_scripts =
|
||||
neutron-status = neutron.cmd.status:main
|
||||
neutron-ovn-agent = neutron.cmd.agents.ovn_neutron_agent:main
|
||||
neutron-ovn-maintenance-worker = neutron.cmd.eventlet.server:main_ovn_maintenance_eventlet
|
||||
neutron-ovn-metadata-agent = neutron.cmd.eventlet.agents.ovn_metadata:main
|
||||
neutron-ovn-metadata-agent = neutron.cmd.agents.ovn_metadata:main
|
||||
neutron-ovn-migration-mtu = neutron.cmd.ovn.migration_mtu:main
|
||||
neutron-ovn-db-sync-util = neutron.cmd.ovn.neutron_ovn_db_sync_util:main
|
||||
neutron-sanitize-port-binding-profile-allocation = neutron.cmd.sanitize_port_binding_profile_allocation:main
|
||||
|
@@ -247,3 +247,11 @@
|
||||
$NEUTRON_CONF:
|
||||
SECURITYGROUP:
|
||||
enable_ipset: false # Not compatible with nftables
|
||||
|
||||
- job:
|
||||
name: neutron-tempest-plugin-ovn-with-ovn-metadata-agent
|
||||
parent: neutron-tempest-plugin-ovn
|
||||
vars:
|
||||
devstack_services:
|
||||
q-ovn-metadata-agent: true
|
||||
q-ovn-agent: false
|
||||
|
@@ -129,6 +129,7 @@
|
||||
- neutron-functional-with-oslo-master
|
||||
- neutron-ovs-tempest-with-oslo-master
|
||||
- neutron-ovn-tempest-ovs-release-with-oslo-master
|
||||
- neutron-tempest-plugin-ovn-with-ovn-metadata-agent
|
||||
experimental:
|
||||
jobs: *neutron-periodic-jobs
|
||||
|
||||
|
Reference in New Issue
Block a user