Commit Graph

157 Commits

Author SHA1 Message Date
Sławek Kapłoński 4edf94041f Remove note about migration from lib/neutron-legacy to lib/neutron
In [1] we finally got rid of the unfinished lib/neutron module and kept
only lib/neutron-legacy. It's renamed to lib/neutron now and it's the
only neutron related module in Devstack.
So this patch removes left over todo comments about things to do when
migration to the new lib/neutron module will be finished.

[1] https://review.opendev.org/c/openstack/devstack/+/865014

Change-Id: Icd7030d36a2462263c9379e02c756d23f6ff6440
2022-12-20 11:05:05 +01:00
elajkat 7a7448ead4 Configure placement credentials for segments plugin
Call configure_placement_neutron to fill all the placement related
settings in neutron.conf if segments service plugin is enabled.

Change-Id: I9bfdd7f5eebcddbb5b39e089e6956742db866c63
2022-11-24 13:09:25 +00:00
Dr. Jens Harbott 639257c77b Make path for tcpdump release-specific
In Ubuntu 22.04, the tcpdump binary is in /usr/bin instead of /usr/sbin,
adapt the path selection accordingly.

Needed-By: https://review.opendev.org/857031
Change-Id: Ida08e0ea98fe1b3dc8b4416101897dabc096fbdf
2022-09-16 11:07:30 +02:00
Miguel Lavalle a181102db2 Remove not wanted section in local.conf sample
Commit [1] added by accident lines to an ovn local.conf sample file. In
this change, the file is restored to its previous state

TrivialFix

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

Change-Id: I9a43fa201291002fb1b1a9c76322581aa02f897b
2022-06-01 15:54:20 -05:00
LIU Yulong 76d0839db8 [Doc] packet rate limit user workflow and notes
Adds some notes and CLI examples for users to use the
packet rate limit to a port.

Change-Id: I7ad81d4a9028d88251c9dcfe07969dd2dd398592
2022-04-29 16:04:57 -05:00
Zuul f842544ae0 Merge "Add ndp_proxy to devstack plugin" 2022-03-12 04:07:14 +00:00
yangjianfeng 017a098455 Add ndp_proxy to devstack plugin
This commit adds possibility to configure L3 ndp_proxy service
plugin and l3 extension with devstack plugin.

Change-Id: I41713b1cfbf55b0b0e752904c4aea06fe0a00e10
Partial-Bug: #1877301
2022-02-27 11:10:03 +08:00
shanyunfan33 0b6a95560e change skydive source to skydive-project
change skydive source to skydive-project[1]

[1] http://skydive.network/documentation/getting-started#openstackdevstack

Change-Id: Icaa4ee7ff7df18e17e3e3da6ec1a8af006e6d44c
2022-02-23 06:42:07 +00:00
Zuul 842b38c87d Merge "Remove installation of the ovs from the source in Devstack plugin" 2022-01-19 19:30:16 +00:00
Slawek Kaplonski 61d23fbe98 Remove installation of the ovs from the source in Devstack plugin
It is now moved to the Devstack repository so we don't need to keep it
in Neutron's Devstack plugin.

Depends-On: https://review.opendev.org/c/openstack/devstack/+/799621
Change-Id: Ic0d223a1da05a981077f2ec647df05c894d12790
2022-01-19 08:10:39 +00:00
Oleg Bondarev 66d50cdbd7 Add devstack plugin support for Local IP
This adds ability to configure local_ip service plugin
and local_ip OVS agent extension.
Needed to enable corresponding API/CLI and scenario tests.

Related-Bug: #1930200
Change-Id: Ia9269b7a73aef116cf8c5bc6ca0a1cca9deaa056
2022-01-12 17:34:21 +03:00
Slawek Kaplonski cf8fa0d42d Remove functions which enable Neutron's QoS service
Those functions were part of the neutron devstack plugin but we
discussed it during last PTG [1] and decided to move to the Devstack
repo plugins which are used by e.g. CI jobs which are defined outside
of the neutron repository.
QoS service is used e.g. in the tempest-slow job which is
defined in tempest and used by many different OpenStack projects.

[1] https://etherpad.opendev.org/p/neutron-yoga-ptg#L142

Depends-On: https://review.opendev.org/c/openstack/devstack/+/815686
Depends-On: https://review.opendev.org/c/openstack/devstack/+/818355
Change-Id: I7b70d6281d551a88080c6e727e2485079ba5c061
2021-11-24 22:24:42 +01:00
yatinkarel 770b64b90e Fix tunnel_types in ml2 ovs sample config
Without this port binding fails with below error:-

Network <nw> is type of vxlan but agent <host> or mechanism
driver only support ['gre', 'local', 'flat', 'vlan'].

Also fix permissions of /opt/stack/devstack in ml2 ovs testing
documentation and added these files to irrelevant-files to skip
running functional jobs as these files are not used in those jobs.

Related-Bug: #1934466
Change-Id: I3ca2ea19bf5e316e580669caab4c607447034a11
2021-11-23 20:52:01 +05:30
Slawek Kaplonski 6c9bf1efbd Remove functions to enable Neutron's placement integration
Those functions were part of the neutron devstack plugin but we
discussed it during last PTG [1] and decided to move to the Devstack
repo as plugins which are used by e.g. CI jobs which are defined outside
of the neutron repository.
Placement integration is used e.g. in the tempest-slow job which is
defined in tempest and used by many different OpenStack projects.

[1] https://etherpad.opendev.org/p/neutron-yoga-ptg#L142

Depends-On: https://review.opendev.org/c/openstack/devstack/+/815682
Change-Id: I72e2c4c55a3c40e2a3c491fe66c05b659b76e349
2021-11-17 08:41:33 +00:00
Slawek Kaplonski 98c269e5a6 Remove trunk related functions from neutron devstack plugin
As was discussed on the neutron team meeting [1] this will be now
part of the Devstack repo so it's not needed in the neutron devstack
plugin anymore.

[1] https://meetings.opendev.org/meetings/networking/2021/networking.2021-10-05-14.00.log.html#l-156

Depends-On: https://review.opendev.org/c/openstack/devstack/+/812657

Change-Id: I04dacb43f244d71e1c5b74deb63b234b803033c9
2021-10-07 08:51:37 +00:00
Slawek Kaplonski ca2885889f Add devstack plugin to enable ovs distributed dhcp service
Partially-Implements: bp/distributed-dhcp-for-ml2-ovs
Related-Bug: #1900934
Change-Id: I5617a72fcd4ec0de9aa7d1444d515e713029fa76
2021-08-04 16:51:08 +02:00
LIU Yulong ca15099cde Add devstack local.conf sample for ML2 OVS
Since devstack had set OVN as the default backend for Neutron.
Then the minimum local.conf [1] for ML2 ovs will not work at
all. For some local testing of ML2 OVS, it is not right deployment
for users to test the ML2 OVS related cases.

This patch adds a sample local.conf for ml2 ovs to install a small
all in one environment for Neutron testing.

Sample tested OS:
1. CentOS Stream 8
2. CentOS Linux 8

[1] https://docs.openstack.org/devstack/latest/#create-a-local-conf

Closes-Bug: #1934466
Change-Id: Ie7bac1d2819c332a94a0ff308a300638c17f1b1f
2021-07-07 08:53:34 +08:00
Zuul ba97a73783 Merge "Fix devstack path in plugin.sh" 2021-06-22 19:57:16 +00:00
Zuul e431c09438 Merge "Allow to parse keywords in dns labels" 2021-06-22 13:31:32 +00:00
Gregory Thiemonge 5b5bc483ae Fix devstack path in plugin.sh
devstack is not necessarily cloned to "$DEST/devstack"
("/opt/stack/devstack"), it can be run from any other directory.
$TOP_DIR [1] should be used when referring to the devstack working dir.

[1] https://opendev.org/openstack/devstack/src/commit/\
6af3cb9eb273c127c20bc07f65c9a5d7f8ba95cd/stack.sh#L73

Change-Id: Ibf4890985b6d07077d04f989eab833ae5b057200
2021-06-18 17:26:42 +02:00
Lucas Alvares Gomes 7f0ca67ed6 Remove the devstack/lib/ovs in favour of "ovs_source" from DevStack
This patch removes the devstack/lib/ovs module and update the scripts to
use the ovs_source module from DevStack instead.

Depends-On: https://review.opendev.org/c/openstack/devstack/+/791085
Change-Id: I65fe53ee753ac68340f7d4d928643d3d8e5c8694
Signed-off-by: Lucas Alvares Gomes <lucasagomes@gmail.com>
2021-05-31 09:41:57 +01:00
Gregoire Mahe 7727fc07e6 Allow to parse keywords in dns labels
Co-Authored-By: Slawek Kaplonski <skaplons@redhat.com>

Related-Bug: #1843218
Change-Id: Ie8b6eb88e046c172d99212f966bdee327f42ed37
2021-03-10 17:03:12 +01:00
Flavio Fernandes f8f7c40295 [OVN] security group logging support (2 of 2)
This is patchset 2 of 2 for OVN driver handling of security-group-logging.
It includes the core changes and tests for this feature.

This feature requires OVN 20.12 [0] or newer. Functional test will be
skipped for non-supported versions.

Related-Bug: 1468366
Closes-Bug: 1914757

[0]: 880dca99ea

Change-Id: Ic86fa70eb34c9b178267b80de1f8883a3ef03e98
Signed-off-by: Flavio Fernandes <flaviof@redhat.com>
2021-03-02 10:48:23 -05:00
Flavio Fernandes b3b6cc06c3 [OVN] Update sample local.conf to mention OVN_BUILD_FROM_SOURCE
Using OVN from packages was introduced in devstack via
https://review.opendev.org/c/openstack/devstack/+/763402

This change updates the sample files to make users aware of it,
especially when specifying the OVN branch to be used.

Change-Id: Ibfbdd712e49d1fb8522bcc39357be0f311ce3f5c
2021-02-08 15:47:38 -05:00
Zuul c4846162b6 Merge "Update octavia plugin code" 2020-12-11 05:02:41 +00:00
Zuul c17e817c78 Merge "Add Loki testing for Neutron" 2020-11-15 04:46:17 +00:00
Brian Haley e10c0dedf4 ovn: Use new OVS commit hash
We have to pick OVS patches compatible with kernel 4.15.0-118
after switching to it.

Change-Id: I1ff47fc3398760d5b631bf89e6cfcc7ae339f0e3
Related-bug: #1883601
Closes-bug: #1896766
2020-09-23 16:14:32 +02:00
Brian Haley 2500ca0b22 Update octavia plugin code
When the Octavia plugin code was moved to the Neutron
repo it was put under an 'if is_plugin_enabled octavia'
check. Depending on the way a node is built, sometimes
the function doesn't seem to be defined, so remove it
since it's ok to always define it.

Change-Id: Ib8c7bac4d0111345f30b7d160fe9b4a8f2132106
2020-08-27 18:01:45 -04:00
Lucas Alvares Gomes 68ec29abf0 [OVN] Use the OVN DevStack module
The DevStack module for OVN has now been moved to the DevStack repository,
this patch is deletes it from the Neutron repository.

Depends-On: https://review.opendev.org/#/c/748140/
Change-Id: I2c30b8130525380234d767a7cb46f9bcca2a0d6b
Signed-off-by: Lucas Alvares Gomes <lucasagomes@gmail.com>
2020-08-26 10:09:28 +01:00
Flavio Fernandes 7f551db9be [OVN] Update sample local.conf to support segments
This change updates sample OVN local.conf file in order
to enable neutron-segments service.

Related-Bug: #1871608
Closes-Bug: #1891243
Change-Id: Iac6227093b0e851716a76e38145508d6724c650a
2020-08-12 13:08:41 +00:00
Flavio Fernandes d74f409c82 [ovn]: port forwarding -- core changes
This is a subset of the changes for implementing the floating IP
port forwarding feature in neutron, using OVN as the backend.

This changeset covers the core implementation for portforwarding/drivers/ovn,
mech_driver, ovn-router as well as a subset of tests.

Port forwarding support in ovn_db_sync is not included here to facilitate review.
That, as well as all other supporting changes, are under the ovn/port_forwarding topic:
https://review.opendev.org/#/q/topic:ovn/port_forwarding+(status:open+OR+status:merged)

Depends-On: https://review.opendev.org/#/c/726478/
Partially-implements: ovn/port_forwarding
Partial-Bug: #1877447

Change-Id: I019fe11ac1ddcf2304f3f144c62d52667fc11dce
2020-08-11 14:54:05 -04:00
Nate Johnston 5b48b7ceff Add Loki testing for Neutron
This commit adds a non-voting job, based on tempest, which enables the
transient DB failure injection module 'loki' [1].  This will test
neutron resilience to database errors.

[1] https://docs.openstack.org/neutron/latest//contributor/testing/db_transient_failure_injection.html

Co-Authored-By: Slawek Kaplonski <skaplons@redhat.com>

Change-Id: Ie6293923a4a4744888bf3ee36007267ef0fddfd9
2020-08-05 20:38:52 +00:00
Lucas Alvares Gomes 164755264b [OVN] Bump OVN version to v20.06.1
This commit bumps the OVN version used in the gate from v20.03.0 to the
latest tagged version, v20.06.1.

Change-Id: Ie070f3c4d75272d12f295a2ea4f7fa6548a7b002
Signed-off-by: Lucas Alvares Gomes <lucasagomes@gmail.com>
2020-07-22 07:55:21 +00:00
Lucas Alvares Gomes e7df43395c [OVN] DevStack: Make the transition of DevStack module easier
This patch intends to make the transition of the OVN DevStack module
easier by allowing both copies of it to exist at the same time, the one
in Neutron repository and the one in the DevStack repository [0].

1) Make create_public_bridge idempotent

If we call this function more than once the second call and on will fail
with the following error:

2020-07-13 09:12:53.885633 | controller | ++
/opt/stack/neutron/devstack/lib/ovn_agent:create_public_bridge:263 :
sudo ip addr add 172.24.5.1/24 dev br-ex
2020-07-13 09:12:53.894247 | controller | RTNETLINK answers: File exists

During the transiton of moving the OVN DevStack from the Neutron
repository to the DevStack repository [0] this method is being invoked
twice in the ovn job in the DevStack gate because it will be cause as
part of the plugin being enabled and the normal code execution.

This patch makes the method idempotent by calling "addr replace" instead
of "addr add" to avoid the "RTNETLINK answers: File exists" error.

2) Move the setup of the tcpdump on br-ex to "extra" to it can start
after the create_public_bridge is called.

[0] https://review.opendev.org/#/c/734621/

Change-Id: I74b05ef245a343c7531fa45aeadb90060b2fd22e
Signed-off-by: Lucas Alvares Gomes <lucasagomes@gmail.com>
2020-07-16 09:45:36 +01:00
Zuul 4c9c4f7753 Merge "Update cirros image to cirros-0.5.1-x86_64 globally" 2020-07-09 13:30:07 +00:00
Zuul f96f3192e8 Merge "[OVN] Fix devstack module for OpenSuse" 2020-07-08 18:07:44 +00:00
Maciej Józefczyk db6ebd22e1 Update cirros image to cirros-0.5.1-x86_64 globally
New cirros with recent fixes for metadata service
has been released. Lets update the image version on gate.

Also stop using different images for OVN. Lets use default
settings from devstack.

First we need to merge [2].

[1] e40bcd2964
[2] https://review.opendev.org/#/c/711492/

Change-Id: Idc614f9f25188bd1a1e1d5424274acf04ba99328
2020-07-07 22:06:39 +00:00
Maciej Jozefczyk fb2806f808 [OVN] Unify OVN/OVS compilation
There were duplicated methods doing almost the same in terms
of OVS/OVN compilation.

This change:
 * move of OVS related compilation code to devstack/lib/ovs
 * delete of OVS related compilation code from devstack/lib/ovn_agent
 * source unified functions in devstack/lib/ovn_agent from
   devstack/lib/ovs
 * Unify NEUTRON_PATH variable to NEUTRON_DIR

Closes-Bug: #1877377

Change-Id: Ia012a8e116a276a6674f86366c803e0e2d8ff704
2020-07-07 22:05:59 +00:00
Lucas Alvares Gomes 528e0d382e [OVN] Fix devstack module for OpenSuse
The default path for the OVS tools is /usr/local/bin [0] but, by default
this location is not included in the $PATH for some distros (e.g
OpenSuse).

This patch includes the $OVS_BINDIR to the $PATH variable for deploying
DevStack.

[0]
0fc38297ba/python/ovs/dirs.py (L23)

Change-Id: If7d68212cadb8eb8a12fa3271023c9e86b2d411e
Signed-off-by: Lucas Alvares Gomes <lucasagomes@gmail.com>
2020-07-02 13:54:37 +01:00
Slawek Kaplonski 0f4db58773 Enable bridge debugging services on the tempest and grenade jobs
This patch moves functions to enable br-ex-tcpdump and br-int-flows
services from the ovn devstack plugin to the main neutron devstack
plugin and enables it on all tempest and grenade jobs which are using
neutron-openvswitch-agent as a L2 backend.

Change-Id: Idfea869c08811914124d076da18cec17a12eee49
2020-06-21 10:47:24 +00:00
Jakub Libosvar d086058895 ovn: Use newer OVS
OVS tag v2.13.0 is not compatible with current used kernel on upstream
Bionic Ubuntu kernel 4.15.0. This patch sticks to commit hash to unblock
the gate. We can either change to newer 2.13 tag once released or better
stop compiling OVS and use one packaged by Ubuntu.

Run functional/fullstack tests with selected OVN and OVS versions

Previously for functional tests OVS version was hardcoded - v2.12.0,
and OVN was installed from OVS repository.

After we merged OVN driver to Neutron tree we run both
Neutron/OVS and Neutron/OVN functional tests in one job.

This patch adds possibility to specify from which tag/branch OVS and OVN
should be checkout.

Change-Id: I83688031951b97bfe64f3aaa761ad7afc1d5ea55
Closes-Bug: #1883601
Closes-Bug: #1878160
2020-06-19 15:57:28 +02:00
Jakub Libosvar dcd2e79c00 ovn: Fix use_new_ovn_repository
Previously, the function decided if the repository is after the split
based on the OVN branch name. This didn't work when a commit hash or other
branch name was used.

This patch changes the function to look at the tree and decide if the given
commit that split the OVN from OVS is present in the given OVS branch.

Change-Id: I89e1f450e4db4c9554e368d75155bec137074ba6
2020-05-25 09:57:31 +02:00
Zuul 354dcccf2d Merge "Default OVN_BRANCH and OVS_BRANCH to latest stable" 2020-05-22 14:10:53 +00:00
Maciej Józefczyk 0ba08d7eb4 Skip OVS module compilation for kernels newer than 5.5
For now OVS doesn't support compilation of kernel module
for kernels newer than 5.5 [1].
Recently Fedora 31 upgraded the kernel to 5.6.8 and that is
why the periodic jobs started to fail [2].
By default we enabled OVS module compilation because Ubuntu
Bionic one doesn't have support for Openflow Meter actions.

In case flag OVN_BUILD_MODULES is set to True and kernel is
newer than 5.5 lets skip the module compilation with proper log.

Closes-Bug: #1877377

[1] https://zuul.openstack.org/builds?job_name=neutron-ovn-tempest-ovs-master-fedora
[2] 59e9944266

Change-Id: I63b2f198468c9e30af8284c8033fa31f2af2518a
2020-05-12 17:51:26 +00:00
Maciej Józefczyk e0e3086b46 Default OVN_BRANCH and OVS_BRANCH to latest stable
If other openstack project uses Neutron with OVN
(as enable_plugin ... neutron) and doesn't specify
OVN_BRANCH and OVS_BRANCH variables in configuration
it will use master branch of those two repositories.

Master branch servers for OVN testing and aligning OVN
Neutron driver with new features.

For now we don't have voting OVN master CI job, to ensure that
everything is fine with it, so we should default OVN for other
projects to the latest stable version that we know works properly.

Change-Id: I6e36ccb8cf4846a1eb11619e7c339a0fc193c4f6
2020-05-11 16:26:11 +02:00
Zuul 244f2764b3 Merge "port_forwarding: extend support for OVN usage" 2020-05-09 14:26:29 +00:00
Flavio Fernandes 102c442bcf port_forwarding: extend support for OVN usage
This commit adds possibility to configure fip port_forwarding
service plugin and l3 extension with devstack plugin for OVN.

Since OVN uses API workers, this change also introduces the
callbacks necessary in pf_plugin, so events related to port
forwarding are sent using neutron_lib callbacks registry.

Related-Bug: #1877447
Change-Id: I8124fac13bf4d802d232e8b3976e6a2cebc72106
2020-05-07 18:10:20 -04:00
Flavio Fernandes ba16d2fc74 [ovn] devstack needs to support openflow15
OVN has been changed to use Openflow15 [1].

Instead of creating br-int and setting the openflow version
via ovn_agent script, it is better to delegate the bridge
creation to the ovn-controller. Thus, having ovn-controller
creating br-int addresses the potential version mismatch.

[1]: 6ec0b82038

Change-Id: I62e4e98556c71312a7cf85b6246ddbecbc59a039
Related-Bug: #1871239
Closes-Bug: #1877195
2020-05-07 09:55:36 -04:00
Zuul e9fd3e158e Merge "[OVN] Enable test_multicast_between_vms_on_same_network" 2020-05-06 15:39:58 +00:00
Zuul dafe60ffdd Merge "[OVN] Update sample local.conf to support QoS for OVN" 2020-05-03 01:41:48 +00:00