25324 Commits

Author SHA1 Message Date
Rodolfo Alonso Hernandez
5e32dddc11 Fix "_sync_metadata_ports" with no DHCP subnets
When a subnet does not have DHCP configured, the metadata port does
not have an IP address on this CIDR. The method
"OvnNbSynchronizer.sync_networks_ports_and_dhcp_opts", was always
setting an IP address for the metadata ports, regardless of the subnet
configuration (with or without DHCP).

The method "_sync_metadata_ports", in charge of synchronizing the
metadata ports, now filters the subnets by the parameter "enable_dhcp".

In case of having a subnet with DHCP enabled, if the metadata port is
missing the subnet IP addresses, the method adds them.

In case of having a subnet without DHCP enabled, if the metadata port
has an IP address on the subnet, the method removes it.

Closes-Bug: #1939726
Change-Id: I09cc14dff6933aae63cbd43a29f9221f405ecede
2021-10-01 08:44:29 +00:00
Zuul
bd7b40b4f8 Merge "ovs-agent: Report pkt processing info in heartbeat" 2021-09-30 11:55:43 +00:00
Zuul
79c2b5f05d Merge "Add API extension for QoS minimum pps rule" 2021-09-30 11:17:24 +00:00
Zuul
d3fa1ac3bf Merge "Replace "tenant_id" with "project_id" in Quota engine" 2021-09-29 17:27:10 +00:00
Zuul
106fa3e6d3 Merge "Replace "Inspector.from_engine()" with "sqlalchemy.inspect()"" 2021-09-29 14:14:29 +00:00
Przemyslaw Szczerbik
1ea26616b4 ovs-agent: Report pkt processing info in heartbeat
OVS agent configuration is extended to support new configuration
options:
  - 'resource_provider_packet_processing_without_direction'
  - 'resource_provider_packet_processing_with_direction'
  - 'resource_provider_packet_processing_inventory_defaults'

OVS agent RPC hearthbeat now reports this information to neutron
server in 'configuration' field .

Example config:

ml2_conf.ini:
[ovs]
resource_provider_packet_processing_with_direction = :1000:1000

Partial-Bug: #1922237
See-Also: https://review.opendev.org/785236
Change-Id: Ief554bc445dfd93ea6995bb42b4d010674c7a091
2021-09-29 12:27:45 +02:00
Przemyslaw Szczerbik
56044db26d Add API extension for QoS minimum pps rule
This patch implements support for CRUD operations for QoS minimum
packet rate, for example:

DELETE /qos/policies/$POLICY_ID/minimum_packet_rate_rules/$RULE_ID

Placement or dataplane enforcement is not implemented yet.

Partial-Bug: #1922237
See-Also: https://review.opendev.org/785236
Change-Id: Ie994bdab62bab33737f25287e568519c782dea9a
2021-09-29 12:27:30 +02:00
Zuul
7c87ecb679 Merge "Replace cirros 0.4.0 by 0.5.2 in ovn migration create-resources.sh.j2" 2021-09-28 13:42:17 +00:00
Eduardo Olivares
459f63439b Replace cirros 0.4.0 by 0.5.2 in ovn migration create-resources.sh.j2
Some VMs are created before the ovn mgiration process starts in order to
verify they are healthy after the migration
Sometimes these VMs are not accessible via ssh due to an issue in cirros
0.4.0 that was fixed in a later release [1]

Closes-Bug: #1945299
[1] https://github.com/cirros-dev/cirros/pull/11

Change-Id: Ib133b5e1bed19aeac8514e3c6690ca768991bbd4
2021-09-28 10:51:51 +02:00
elajkat
21d25617ab Change to publish for security-group db tests
Change-Id: I871654a15036db5fe7c8c0912b38acd7beb6402b
Closes-Bug: #1945285
2021-09-28 09:33:09 +02:00
Zuul
1d450dbddc Merge "Revert "update subport status when trunk/subport create/delete is triggerred"" 2021-09-26 07:34:11 +00:00
Zuul
4b62244daa Merge "ovn: use stateless NAT rules for FIPs" 2021-09-24 09:44:13 +00:00
Zuul
76751909ef Merge "Add retry when executing OF commands if "InvalidDatapath"" 2021-09-24 09:31:36 +00:00
Zuul
e2c9ac1902 Merge "[OVN][FT] Check UNIX socket file before using it" 2021-09-24 09:31:32 +00:00
Zuul
bd2933a258 Merge "Open Yoga DB branch" 2021-09-23 18:16:37 +00:00
Slawek Kaplonski
b0e01c7df3 Revert "update subport status when trunk/subport create/delete is triggerred"
This reverts commit 101ccbaeb3c48d9757c276716098ee6e17e12fb8.

Reason for revert: This commit is probably reason of some race condition
which causes random failures in the test_trunk_subport_lifecycle scenario
test.

Change-Id: Ia042384e0ac333f30235b76e50fdc8748fc2b29a
Closes-Bug: #1943708
2021-09-23 14:28:53 +00:00
Rodolfo Alonso Hernandez
42fda206e9 Replace "Inspector.from_engine()" with "sqlalchemy.inspect()"
Since SQLAlchemy 1.4, the method "Inspector.from_engine()" is
deprecated.

Error message:
"The from_engine() method on Inspector is deprecated and will be removed
in a future release.  Please use the sqlalchemy.inspect() function on an
Engine or Connection in order to acquire an Inspector. (deprecated
since: 1.4)"

Minimum version of SQLAlchemy required is bumped to 1.4.23.

Change-Id: I6cf5944ccb3a0532cbf123ddc0d7df6b6de80af1
Closes-Bug: #1943155
2021-09-23 13:41:50 +00:00
Rodolfo Alonso Hernandez
57629dc051 Add retry when executing OF commands if "InvalidDatapath"
When using the OF API (currently Neutron only uses native
implementation via "os-ken" librarr), retry the command in case of
"InvalidDatapath" exception.

As commented in the related bug, some operations could restart the
OF controller (set the OF procols, set the bridge fail mode). During
the controller restart, a command can return a "InvalidDatapath"
exception.

Closes-Bug: #1944201
Change-Id: Ia8d202f8a38362272e9519c1cbd9d6ba9359e0a1
2021-09-23 12:46:59 +00:00
Ihar Hrachyshka
dc677682ca ovn: use stateless NAT rules for FIPs
Using stateless NAT in OVN should always be a better choice for FIPs
because it allows to avoid hitting conntrack, potentially improving
NAT performance, esp. where hardware offload for the openflow rules is
involved.

The only limitation for using stateless NAT in OVN is that it requires
1:1 IP mapping; which is always the case for FIPs. This is why this
patch unconditionally switches to stateless for all FIPs.

Before setting stateless key to NAT's options, check that 'options'
are supported. (Support was added in OVN 20.03 as part of stateless
NAT implementation.) If an older OVN version is used, nothing changes.

The patch also adds a runtime migration rule for neutron-server to
transform all existing stateful fips to stateless.

Change-Id: I312a950131d62d93fb4bc121bc5e60febb8d35ee
2021-09-23 04:15:39 +00:00
Zuul
d25cfaa702 Merge "Fix _create_dvr_floating_gw_port missing payload field" 2021-09-22 23:06:33 +00:00
Zuul
5ed665a921 Merge "[Docs] Ovn backend now supports FIP QoS bandwdith limiting" 2021-09-22 20:50:20 +00:00
Zuul
ad167fb3dd Merge "Drop install_venv" 2021-09-22 20:50:13 +00:00
Zuul
486b37df0d Merge "[ovn] metadata functional tests don't support Chassis_Private" 2021-09-22 20:49:48 +00:00
Rodolfo Alonso Hernandez
7dcddeb0bd Replace "tenant_id" with "project_id" in Quota engine
This is part of the remaining technical debt of the specs
https://specs.openstack.org/openstack/neutron-specs/specs/newton/moving-to-keystone-v3.html

Blueprint: https://blueprints.launchpad.net/neutron/+spec/keystone-v3

Change-Id: I1faf520d3cdafe2de873525c8ebe1fa2114bdcd7
2021-09-22 08:27:10 +00:00
Zuul
8791947a6b Merge "Rollback db session in case of error during releasing quota reservation" 2021-09-22 03:32:41 +00:00
wu.shiming
201fc1254c Drop install_venv
install_venv is a legacy and not used in our CI,so drop it completely

Change-Id: Ida673e03215c9d845a7fdeece637194f67f45d26
2021-09-22 02:35:49 +00:00
Zuul
1d68527982 Merge "Remove dhcp_extra_opt name after first newline character" 2021-09-21 21:46:59 +00:00
Terry Wilson
0a92e9de6c [ovn] metadata functional tests don't support Chassis_Private
This adds support to test_metadata_agent tests for OVN versions
that have the Chassis_Private table.

Closes-Bug: 1944460
Change-Id: If4e24dd933c0efbb793ed6082c59db0435833389
2021-09-21 20:33:49 +00:00
Zuul
ccb70a60de Merge "req: Bump some dependencies" 2021-09-21 12:27:32 +00:00
Rodolfo Alonso Hernandez
3d7929591c Open Yoga DB branch
Change-Id: If0fa70e8ebab3c704c2350e28953ebfcc3a79fa9
2021-09-20 15:08:07 +00:00
Slawek Kaplonski
5abd1fb610 Remove dhcp_extra_opt name after first newline character
Passing newline as extra dhcp option name to the DHCP agent causes
issues with configuration of the dnsmasq process for the network.
This patch removes everything what is after first newline character
in the dhcp_extra_opt's name before building dnsmasq's config.

Closes-bug: #1943930
Change-Id: Iab2832e750ff5ef09c5dcacae4dbff4f9e62bc2d
2021-09-20 09:12:09 +00:00
Zuul
79445f12be Merge "[Docs] Add info about how to use shared SG with VMs" 2021-09-17 16:35:06 +00:00
elajkat
781edc8f64 req: Bump some dependencies
Neutron's lower-constraint job started to fail and
bump of the following packages seems to solve the issue:
* decorator to 4.1.0
* Mako to 1.0.7

Change-Id: I31d20cc0dc1fc0e745e16718e6c7c8dc896da855
2021-09-17 15:48:59 +00:00
Slawek Kaplonski
056251be77 [Docs] Ovn backend now supports FIP QoS bandwdith limiting
It was implemented with [1] so this patch updates gaps document.

[1] https://review.opendev.org/c/openstack/neutron/+/722415

Change-Id: I82fea4189a5ec0fa8473c1c7ce57f0659519d5e0
2021-09-17 15:57:13 +02:00
Slawek Kaplonski
a383afa10f [Docs] Add info about how to use shared SG with VMs
This patch adds info about workaround how to spawn VM using Security
Groups shared through RBAC mechanism in Neutron.
Proper fix for that issue will require changes in the Neutron API and in
Nova so will not be possible to backport.

Related-bug: #1942615
Change-Id: Iadb3fe0ca8fa9c14ec2912016bd3912e5dcee5ff
2021-09-17 15:33:23 +02:00
Szymon Wroblewski
0234aa6157 Fix _create_dvr_floating_gw_port missing payload field
Change Ia462ca4b340cd3d9a27341632b24926c3290a4b2 modified some
notification payload field names.
Because of that _create_dvr_floating_gw_port fails with missing
'fixed_port_id' field since it's now 'port_id'.

Closes-Bug: #1943846
Change-Id: I37d8722c74dfc122030175f54404703780c4d8b2
2021-09-17 11:20:31 +02:00
Zuul
b52e5ecae2 Merge "Update master for stable/xena" 2021-09-16 21:35:19 +00:00
Zuul
a76e1d642c Merge "[OVS][FW] Initialize ConjIdMap._max_id depending on the current OFs" 2021-09-15 17:53:20 +00:00
347fd599ae Update master for stable/xena
Add file to the reno documentation build to show release notes for
stable/xena.

Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/xena.

Sem-Ver: feature
Change-Id: I307fdfc8957028671706265f0575789afa5e60af
2021-09-15 17:39:14 +00:00
Zuul
f1d0558626 Merge "Use neutron-lib standard_attr" 2021-09-15 14:11:58 +00:00
Slawek Kaplonski
f8f50397ca Rollback db session in case of error during releasing quota reservation
Patch [1] changed to not fail if DBError will happend when releasing
quota reservation. That may lead to the errors while commiting db
transaction in the neutron/api/v2/base.py module when in same
transaction Neutron commits reservation (which removes reservation from
db) and then set resources dirty. In case if DB error happens in the
commit_reservation() and we will simply pass this error and move on,
transaction can't be commited without rollback.

This patch adds handle of such DBErrors in the remove_reservation
function so transaction can be rolled back in case of DB error happens.

[1] https://review.opendev.org/c/openstack/neutron/+/805031

Closes-Bug: #1943714
Change-Id: I295a4f0eb1eaf0286f0e34b96db29c8f08340b84
2021-09-15 15:47:35 +02:00
Zuul
6db2619628 Merge "[DVR] Set arp entries only for single IPs given as allowed addr pair" 2021-09-15 09:59:24 +00:00
Zuul
ed3374746d Merge "Revert "[L3][HA] Retry when setting HA router GW status."" 2021-09-15 09:49:32 +00:00
Nurmatov Mamatisa
ce3b86eef3 Use neutron-lib standard_attr
Now only neutron uses neutron/db/standard_attr.py
Shim can be removed

Change-Id: I980265335c5f3f6b5ee2e5fbcad9491aad91defe
2021-09-15 09:19:26 +00:00
Zuul
c23dd997a0 Merge "[L2] no provisioning block for internal service port" 2021-09-14 18:39:18 +00:00
Zuul
1a106870be Merge "Delete SG log entries when SG is deleted" 2021-09-14 12:01:46 +00:00
Zuul
0fa97ecceb Merge "Redefine "neutron-ovn-tempest-ovs-master-fedora" CI job" 2021-09-13 10:34:25 +00:00
Zuul
7cdc4de11b Merge "[Functional] Wait for the initial state of ha router before test" 2021-09-12 19:35:46 +00:00
Zuul
90cee3c27b Merge "Rename notify to publish" 2021-09-11 22:50:45 +00:00
Zuul
0a7186a8ff Merge "update subport status when trunk/subport create/delete is triggerred" 2021-09-11 08:39:25 +00:00