[release-announce] neutron 21.1.0 (zed)

no-reply at openstack.org no-reply at openstack.org
Tue Mar 14 12:21:49 UTC 2023


We are glad to announce the release of:

neutron 21.1.0: OpenStack Networking

This release is part of the zed stable release series.

The source is available from:

    https://opendev.org/openstack/neutron

Download the package from:

    https://tarballs.openstack.org/neutron/

Please report issues through:

    https://bugs.launchpad.net/neutron/+bugs

For more details, please see below.

21.1.0
^^^^^^


New Features
************

* Address scope is now added to all OVN LSP port registers in the
  northbound. Northd then writes the address scope from the northbound
  to the southbound so it can be used there by the ovn-bgp-agent.


Known Issues
************

* Until the OVN bug
  (https://bugzilla.redhat.com/show_bug.cgi?id=2162756) is fixed,
  setting the "reside-on-redirect-chassis" to true for the logical
  router port associated to vlan provider network is needed. This
  workaround makes the traffic centrallized, but not tunneled, through
  the node with the gateway port, thus avoiding MTU issues.


Upgrade Notes
*************

* The default value for the "metadata_workers" configuration option
  has changed to 0 for the ML2/OVN driver. Since [OVN] Allow to
  execute "MetadataProxyHandler" in a local thread
  (https://review.opendev.org/c/openstack/neutron/+/861649), the OVN
  metadata proxy handler can be spawned in the same process of the OVN
  metadata agent, in a local thread. That reduces the number of OVN SB
  database connections to one.


Bug Fixes
*********

* [bug 2003455 (https://bugs.launchpad.net/neutron/+bug/2003455)] It
  is added an extra checking to ensure the "reside-on-redirect-
  chassis" is set to true for the logical router port associated to
  vlan provider network despite having the
  "ovn_distributed_floating_ip" enabled or not. This is needed as
  there is an OVN bug
  (https://bugzilla.redhat.com/show_bug.cgi?id=2162756) making it not
  work as expected. Until that is fixed, we need these workaround that
  makes the traffic centrallized, but not tunneled, through the node
  with the gateway port, thus avoiding MTU issues.

* Normalise OVN agent heartbeat timestamp format to match other
  agent types. This fixes parsing of "GET /v2.0/agents" for some
  clients, such as gophercloud.

* Neutron can record full connection using log-related feature
  introduced in OVN 21.12. For more info see *bug
  LP#<https://bugs.launchpad.net/neutron/+bug/2003706>*


Other Notes
***********

* Since OVN 20.06, the "Chassis" register configuration is stored in
  the "other_config" field and replicated into "external_ids". This
  replication is stopped in OVN 22.09. The ML2/OVN plugin tries to
  retrieve the "Chassis" configuration from the "other_config" field
  first; if this field does not exist (in OVN versions before 20.06),
  the plugin will use "external_ids" field instead. Neutron will be
  compatible with the different OVN versions (with and without
  "other_config" field).

Changes in neutron 21.0.0..21.1.0
---------------------------------

8e9f1bef72 Rename setup-mtu-t1 argument because it is misleading
e02beeddf5 Reintroduce agent bridge resync test
44cd883728 ovs: fix regression when vlan mapping is not already registered
7d78bcd5ba [OVN] Add ``get_gateway_chassis_az_hints`` method to OVN API
ee28d85db9 [Secure RBAC] Add shared_security_groups rule
9dd8ab4b6a Make retrieval of port mac column safe
7ab72ba646 neutron-dynamic-routing now works with OVN
390d617d3d [OVN] Ensure traffic for provider vlan networks is not tunneled
2913dae7a3 Prevent router_ha_interface port from being removed via API
f6d24ebb05 Apply Ironic's server-ip-address as TFTP next-server
aa8df53e7b Remove policy rule for get_network:router:external
f2ba02d90d [Secure RBAC] Allow network owner to delete ports plugged to the network
899c966945 [Secure RBAC] Fix policy to get flavors
ec8e43f824 [Secure RBAC] Add shared_qos_policy rule
177956506e Normalise format of OVN agent heartbeat timestamp
a5e03d2b69 Add missing osprofiler options
7e012aa071 Format correctly (dialect=mac_unix_expanded) the MAC addresses
924339ab11 [S-RBAC] Allow admin user to do all API requests by default
ff527a2017 Enable qos extension_driver in ovn_db_sync
0bbab95265 [UT] Mock the retry decorator when creating duplicated NDPProxy
e4a72796df [OVN] Bump the port revision number in trunk driver
7d8c28907a [OVN] Add missing LSP device_owner info in trunk driver
0920f17f47 Improve scheduling L3/DHCP agents, missing lower binding indexes
1b086f1c1f Do not ignore attributes in bulk port create
4d983d2fea Fullstack: Wait placement process fixtrue to really stop
b2e68dd178 Filter subnets by "enable_dhcp" flag using the correct type
d0d014c598 [OVN] Allow logging all traffic related to an ACL
931f0af2e3 Never raise an exception in notify()
2617f7b93c [Trunk] Update the trunk status with the parent status
544ae186ab Increase fullstack job's timeout
bbaca0c86b Improve agent provision performance for large networks
f88b61c832 [OVN][FT] Also update nb_cfg along with nb_cfg_timestamp
6226fa9fd6 Allow multiple IPv6 ports on router from same network ml2/ovs+dvr
57c7d836cb Set ip_nonlocal_bind to 1 for HA routers and DVR snat
c5532b6c6b [OVN] Fix availability zones changes check
90cd055fe1 [Fullstack] use common assert for ncat connection
74b6c1dd0b Move registration "ChassisBandwidthConfigEvent" to OvnSbIdl init
44ffbc97b7 Limit tox version to <4
8c4005763b [Fullstack] Wait 10 seconds to ensure that MAC address is configured
99b7acc505 Fix handling the restart of ovn-controllers
c09f7ec2ee Fix bulk create without mac
deebc7879a Check if port exists in ``update_port_virtual_type`` method
d753b2ab44 [OVN] Allow only one physical network per bridge
2c9ee24286 Add address scope to the OVN LSP port registers
6927dfbb3e Dont raise RouterInterfaceNotFound on overlap check router ports
89c97e8a49 Fix behaviour of enable/disable in OVN network log
9e02a10bed Fix duplicated routes exceptions
fcaff8c80d ovn: first tear down old metadata namespaces, then deploy new
c6778f80f4 OVN: Add support for DHCP option "domain-search" for IPv4
55c8173f64 Always create a "router_extra_attributes" register per router
41eaaeb291 [stable-only] Add "tempest-integrated-networking" job to experimental
97745f9be0 Update documentation link for openSUSE index.
af8a3a7f08 Since OVN 20.06, config is stored in "Chassis.other_config"
71801fba91 Check subnet overlapping after add router interface
8dd2dea65d [OVN] Set the default OVN metadata worker number to 0
014c661924 Load the required configuration options in the UT classes
b304dfaca7 Disable in-band management for bridges before setting up controllers
3f8b96ec64 [OVN] Avoid deadlock when cleaning hash ring nodes
5deea002aa ovn: Use ovsdb-client to create neutron_pg_drop
5623dc7631 Remove unnecessary bullet points, unify formatting.
3406f67c92 Execute "IpMonitorTestCase" tests always inside a namespace
89d85271c3 Split Hash Ring probing from the maintenance task
c220bd4d14 Remove OVN gap minimum bandwidth support
753e7ceb2d [OVN] Allow to execute ``MetadataProxyHandler`` in a local thread
d612cbca04 Allow to pass EUI64 IP address as fixed ip for the port
01113c64f1 Fix ipam_pluggable_backend unit tests module
402cfed400 Port provisioning should retry only for VM ports
4df578bded Accept a port deletion with missing port binding information
add538d7ff fix: Fix url of Floodlight


Diffstat (except docs and test files)
-------------------------------------

etc/oslo-config-generator/neutron.conf             |   1 +
neutron/agent/common/async_process.py              |   4 +
neutron/agent/common/ovs_lib.py                    |  19 +-
neutron/agent/l3/dvr_snat_ns.py                    |   6 +-
neutron/agent/l3/ha_router.py                      |  14 +-
neutron/agent/linux/keepalived.py                  |   5 +
neutron/agent/ovn/metadata/agent.py                | 231 +++++++++-----
neutron/agent/ovn/metadata/server.py               |  14 +-
neutron/cmd/ovn/neutron_ovn_db_sync_util.py        |   3 +
neutron/common/_constants.py                       |   3 +
neutron/common/ovn/constants.py                    |   8 +-
neutron/common/ovn/extensions.py                   |   6 +
neutron/common/ovn/utils.py                        | 135 +++++++-
neutron/conf/policies/address_group.py             |   2 +-
neutron/conf/policies/address_scope.py             |  12 +-
neutron/conf/policies/auto_allocated_topology.py   |   4 +-
neutron/conf/policies/base.py                      |   6 +-
neutron/conf/policies/flavor.py                    |   6 +-
neutron/conf/policies/floatingip.py                |  16 +-
neutron/conf/policies/floatingip_pools.py          |   2 +-
.../conf/policies/floatingip_port_forwarding.py    |   8 +-
neutron/conf/policies/l3_conntrack_helper.py       |   8 +-
neutron/conf/policies/local_ip.py                  |   8 +-
neutron/conf/policies/local_ip_association.py      |   6 +-
neutron/conf/policies/metering.py                  |   8 +-
neutron/conf/policies/ndp_proxy.py                 |   8 +-
neutron/conf/policies/network.py                   |  37 +--
neutron/conf/policies/port.py                      |  11 +-
neutron/conf/policies/qos.py                       |  41 +--
neutron/conf/policies/rbac.py                      |  16 +-
neutron/conf/policies/router.py                    |  48 +--
neutron/conf/policies/security_group.py            |  22 +-
neutron/conf/policies/subnet.py                    |  12 +-
neutron/conf/policies/subnetpool.py                |  27 +-
neutron/conf/policies/trunk.py                     |  14 +-
neutron/db/availability_zone/router.py             |   3 +-
neutron/db/ipam_pluggable_backend.py               |  14 +-
neutron/db/l3_agentschedulers_db.py                |   4 +-
neutron/db/l3_attrs_db.py                          |  18 +-
neutron/db/l3_db.py                                | 128 ++++++--
neutron/db/l3_dvr_db.py                            |   7 +-
neutron/db/l3_dvrscheduler_db.py                   |   5 +-
neutron/db/l3_hamode_db.py                         |  10 +-
neutron/db/models/l3agent.py                       |   8 +-
neutron/db/network_dhcp_agent_binding/models.py    |   9 +-
neutron/objects/l3agent.py                         |   3 +-
neutron/objects/router.py                          |  11 +
.../agent/openflow/native/ovs_bridge.py            |  34 +-
.../drivers/openvswitch/agent/ovs_neutron_agent.py |   3 +
.../plugins/ml2/drivers/ovn/agent/neutron_agent.py |  22 +-
.../ml2/drivers/ovn/mech_driver/mech_driver.py     | 140 +++------
.../ml2/drivers/ovn/mech_driver/ovsdb/api.py       |  22 +-
.../ml2/drivers/ovn/mech_driver/ovsdb/commands.py  |   9 +-
.../ovn/mech_driver/ovsdb/extensions/placement.py  |  47 +--
.../drivers/ovn/mech_driver/ovsdb/impl_idl_ovn.py  |  13 +-
.../drivers/ovn/mech_driver/ovsdb/maintenance.py   |  79 ++++-
.../drivers/ovn/mech_driver/ovsdb/ovn_client.py    | 113 ++++---
.../drivers/ovn/mech_driver/ovsdb/ovn_db_sync.py   |   2 +-
.../drivers/ovn/mech_driver/ovsdb/ovsdb_monitor.py | 174 ++++-------
neutron/plugins/ml2/plugin.py                      | 148 +++++----
neutron/scheduler/base_scheduler.py                |  46 ++-
neutron/scheduler/dhcp_agent_scheduler.py          |   6 +-
neutron/scheduler/l3_agent_scheduler.py            |   5 +-
neutron/services/logapi/drivers/ovn/driver.py      |  90 +++++-
neutron/services/trunk/drivers/ovn/trunk_driver.py |  41 ++-
neutron/services/trunk/plugin.py                   |  10 +-
.../agent/ovn/metadata/test_metadata_agent.py      |  52 ++--
.../mech_driver/ovsdb/extensions/test_placement.py |  51 ++-
.../drivers/ovn/mech_driver/ovsdb/test_impl_idl.py |  10 +-
.../ovn/mech_driver/ovsdb/test_ovn_db_sync.py      |  16 +-
.../ovn/mech_driver/ovsdb/test_ovsdb_monitor.py    |  75 ++++-
.../drivers/ovn/mech_driver/test_mech_driver.py    |  94 +++---
.../services/logapi/drivers/ovn/test_driver.py     |  66 ++++
.../functional/services/ovn_l3/test_plugin.py      |  19 +-
.../trunk/drivers/ovn/test_trunk_driver.py         |  21 +-
.../conf/policies/test_auto_allocated_topology.py  |  26 +-
.../unit/conf/policies/test_floatingip_pools.py    |  20 +-
.../policies/test_floatingip_port_forwarding.py    |  54 +++-
.../unit/conf/policies/test_l3_conntrack_helper.py |  46 ++-
.../conf/policies/test_local_ip_association.py     |  44 ++-
.../unit/conf/policies/test_security_group.py      |  80 ++++-
.../agent/openflow/native/ovs_bridge_test_base.py  |   7 +-
.../openvswitch/agent/test_ovs_neutron_agent.py    |   9 +
.../ml2/drivers/ovn/agent/test_neutron_agent.py    |  19 +-
.../drivers/ovn/mech_driver/ovsdb/test_commands.py |  13 +-
.../ovn/mech_driver/ovsdb/test_impl_idl_ovn.py     |   2 +-
.../ovn/mech_driver/ovsdb/test_maintenance.py      |  84 ++++-
.../ovn/mech_driver/ovsdb/test_ovsdb_monitor.py    |  73 ++---
.../drivers/ovn/mech_driver/test_mech_driver.py    | 114 ++++---
.../services/logapi/drivers/ovn/test_driver.py     |   5 +-
.../trunk/drivers/ovn/test_trunk_driver.py         |  12 +-
playbooks/configure_functional_job.yaml            |   4 +-
playbooks/run_functional_job.yaml                  |   4 +-
...he-OVN-LSP-port-registers-1f45e34815c3896d.yaml |   6 +
.../notes/bug-2003455-b502cc637427560e.yaml        |  19 ++
...eartbeat-timestamp-format-dcf80badbe267c68.yaml |   6 +
.../ovn-chassis-other-config-7db15b9d10bf7f04.yaml |  10 +
.../ovn-metadata-workers-fa8a2019f34bd572.yaml     |   9 +
...l-log-related-traffic-ovn-96b304ab744de13e.yaml |   6 +
.../infrared/tripleo-ovn-migration/main.yml        |   4 +-
.../tripleo_environment/ovn_migration.sh           |  14 +-
tox.ini                                            |  44 +--
zuul.d/base.yaml                                   |   1 +
zuul.d/job-templates.yaml                          |  36 +++
146 files changed, 3378 insertions(+), 1424 deletions(-)







More information about the Release-announce mailing list