255 Commits

Author SHA1 Message Date
Jenkins
2842ee8474 Merge "Add neutron-linuxbridge-cleanup util" 2015-10-06 11:27:27 +00:00
Jenkins
51b8b19ef2 Merge "Decomposition phase2 for MidoNet plugin" 2015-10-03 00:55:14 +00:00
YAMAMOTO Takashi
a3cb179ffa Decomposition phase2 for MidoNet plugin
Remove the rest of MidoNet plugin from Neutron tree.

Closes-Bug: #1490852

Change-Id: I260ec3e19c74928390c8e5e4e32629357c184361
2015-10-02 19:26:37 +00:00
Mathieu Gagné
27f60c314b Add neutron-linuxbridge-cleanup util
Removal of empty bridges have been disabled [1] to fix a race condition
between Nova and Neutron where a bridge would be removed if
the only instance using it is rebooted. This means empty bridges
will pile up over time.

This script can be used to periodically remove empty bridges by running it
on compute nodes.

Note: Usage of this script can still trigger the original race condition.
It should be used when you don't expect anyone do be doing operations
on their instances.

[1] Commit 8dd8a7d93564168b98fa2350eedf56acede42b0f

DocImpact: Add neutron-linuxbridge-cleanup util
Related-bug: #1328546
Closes-bug: #1497027
Co-Authored-By: Cedric Brandily <zzelle@gmail.com>
Change-Id: Ieb2796381579ad295abf361ce483d979a53d2bd6
2015-10-01 21:54:34 +02:00
armando-migliaccio
b8a3eec02e Remove OpenContrail plugin from the source tree
This plugin didn't decompose in the last two cycles, the CI has
stopped working for a while and it seems there is no pulse since
March 2015.

I think it is time to implement the eviction.

Change-Id: Ib2cb1e3f05330c7808177b0312506d0e56254aa8
Related-blueprint: core-vendor-decomposition
2015-09-30 18:17:57 -07:00
Thierry Carrez
09ed190de5 Open Mitaka development
Bump preversion to mark the start of the Mitaka development branch.
The liberty release branch will be cut from the previous commit.

Change-Id: Ib34bb19a8d1bee1988cedf91ea6e08d386a94ca8
2015-09-23 17:49:39 +02:00
Jenkins
50dac76b06 Merge "Introduce a separate RPC server" into feature/pecan 2015-09-18 16:58:54 +00:00
Salvatore Orlando
fb69960f1e Introduce a separate RPC server
As the Pecan server only server REST requests over HTTP, this
patch introduces a new server implementing the RPC over AMQP
endpoints for agent/server communication.

However, the REST server does not yet have the ability to send
notifications to the RPC server or directly to the agents.
This patch simply adapts the ML2 plugin to run the RPC notifiers
only when initialized in the pecan server, so that notification
to agents can still be sent.

This patch therefore is tantamount to a poor man's
implementation of REST/RPC separation which will be iteratively
improved.

Change-Id: Ie471869d9b2793acdc412f13507038433f6a72c6
2015-09-17 05:18:32 -07:00
Kevin Benton
40151be9b3 Revert "Revert "Pecan WSGI: prevent plugins from opening AMQP connections""
This reverts commit 4f1fb05959b211c0edc52021af8774a163aa518c.
Merge of master went in so this can be re-applied and have the
conflict resovled.

Conflicts:
	neutron/server/__init__.py

Change-Id: I917e89b2191b3d4646e66a7a313783a56cf0ace5
2015-09-16 03:33:47 -07:00
Ihar Hrachyshka
6ee4343c4c Install sriov-agent.ini on 'setup.py install'
The previous change [1] that split the configuration file into two pieces
missed the update of setup.cfg, so the file was not installed.

[1]: Ie1eda925e051f85d53ad9624d6617d095cf8c7be

Change-Id: Idcdc71b5614463fc0d81a8bc2d2833159be9e6c9
Related-Bug: #1489060
2015-09-11 16:34:22 +02:00
Jenkins
49fbdfaecc Merge "Final decomposition of Cisco plugin" 2015-09-06 20:02:34 +00:00
Jenkins
64c596a6c1 Merge "Remove Cisco Meta and N1KV monolithic plugins" 2015-09-05 18:50:51 +00:00
Shweta P
b61cd4eaed Final decomposition of Cisco plugin
This patch follows the previous patch(listed as dependent) and moves
the remaining cisco db models from neutron to networking-cisco.
The patch deletes l3_model and cisco_router_plugin and their associated
config and helper files from neutron

Change-Id: I5b71e1dfb683e633e1cd11386dfb7c2ed7cc7d62
Partial-Bug: #1489609
2015-09-05 04:59:08 +00:00
Abhishek Raut
d12017ad51 Remove Cisco Meta and N1KV monolithic plugins
This patch removes the Cisco meta plugin and the Cisco
Nexus1000V monolithic plugin as they were deprecated in the
previous cycle.

Closes-bug: #1473217

Change-Id: Id170b9512b2f52a971264336d83b083d487359ee
2015-09-05 00:53:36 -04:00
armando-migliaccio
9022fb1ae8 Remove implicit registration of *-aas service providers
Implicit registration can be dropped when explicit registration
for load balancer and vpn is implemented. Firewall does not
use service providers and the ServiceTypeManager, so the
precautionary step can be dropped altogether.

Support for configuring providers via the service_providers section
in neutron.conf, is no longer available, hence clear the stale
entry points.

DocImpact

Closes-bug: #1473110

Change-Id: I5e1d254b9a3a24121d9e9d3cb82f877d44079296
2015-09-02 16:13:59 +00:00
Doug Wiegley
2c5f44e1b3 Merge remote-tracking branch 'origin/master' into merge-branch
Change-Id: I9c29ad9564671ae5a2db35835bc4a30e75482cb2
2015-08-30 21:23:59 -06:00
Jenkins
a574640ab7 Merge "PLUMgrid plugin decomposition part II" 2015-08-30 05:07:49 +00:00
Jenkins
61ab2ea304 Merge "Removing the SDN-VE monolithic plugin" 2015-08-29 23:56:31 +00:00
Aaron Rosen
7b7c15ba4e Add Geneve type driver support to ML2
More information about Geneve protocol can be found here:
  https://tools.ietf.org/pdf/draft-gross-geneve-02.pdf

Following configuration variables were added:
[ml2_type_geneve]
  vni_ranges - Comma-separated list of <vni_min>:<vni_max> tuples
               enumerating ranges of Geneve VNI IDs that are
               available for tenant network allocation
  max_header_size - Geneve encapsulation header size is dynamic, this
                    value is used to calculate the maximum MTU for the driver
                    this is the sum of the sizes of the outer
                    ETH + IP + UDP + GENEVE header sizes

DocImpact

Change-Id: I8c29a1c1a7c79e02c26ac9e2ad2645d30dfbeefc
Closes-Bug: #1461069
2015-08-27 20:04:35 +03:00
Mohammad Banikazemi
bdfe8dcf42 Removing the SDN-VE monolithic plugin
As the SDN-VE monolithic plugin is no longer in use by
anyone, this is to remove the code from the Neutron source
tree.

DocImpact

Change-Id: I8def7fc2e92f967785b9ab05f8496de641e8f866
2015-08-27 09:18:22 -04:00
Jenkins
79ee9ad7e9 Merge "L3 agent changes and reference implementation for IPv6 PD" 2015-08-25 20:41:16 +00:00
Fawad Khaliq
97452d1e30 PLUMgrid plugin decomposition part II
As part of the phase II plugin decomposition [1],
this change moves PLUMgrid plugin to its new
home: networking-plumgrid [2]

[1] http://docs.openstack.org/developer/neutron/devref/contribute.html
[2] https://github.com/openstack/networking-plumgrid

Partial-Implements: blueprint core-vendor-decomposition
Change-Id: Ifc6bbb4fe45ee9b8d298ff171ee43c0da37d075c
Signed-off-by: Fawad Khaliq <fawad@plumgrid.com>
2015-08-25 05:27:05 -07:00
John Davidge
4b329c345c L3 agent changes and reference implementation for IPv6 PD
This patch adds the common framework to be used by specific
implementations of the DHCPv6 protocol for Prefix Delegation.

It also includes a reference implementation based on the Dibbler
DHCPv6 client. Dibbler version 1.0.1 or greater is required.
Sanity tests are included to verify the installed version.

A patch for admin/user documentation is up for review here:

https://review.openstack.org/#/c/178739

Video guides for configuring and using this feature are available on
YouTube:

https://www.youtube.com/watch?v=wI830s881HQ
https://www.youtube.com/watch?v=zfsFyS01Fn0

Co-Authored-By: Baodong (Robert) Li <baoli@cisco.com>
Co-Authored-By: Sam Betts <sam@code-smash.net>

Change-Id: Id94acbbe96c717f68f318b2d715dd9cb9cc7fe4f
Implements: blueprint ipv6-prefix-delegation
2015-08-25 08:44:13 +01:00
Akihiro Motoki
cfa8f53771 Decomposition phase2 of NEC plugin
As part of plugin decomposition effort, NEC plugin is removed
from the main neutron repo and moved to networking-nec repo.

Related blueprint core-vendor-decomposition
Closes-Bug: #1487929
Change-Id: I2ef7ec241f061516b72c4df9f959af027c4c366c
2015-08-25 04:19:29 +00:00
Vlad Gridin
6334cac7c8 Remove the ML2 Nuage driver code
This changeset removes ML2 Nuage driver vendor code,
currently present in neutron core to vendor repo.

Closes-bug: #1486662
Related-Blueprint: core-vendor-decomposition

Change-Id: I6388e91ba56aa6b8f16c723f7d07234d262b6c16
2015-08-21 15:06:32 +00:00
Sandhya Dasu
d91cd8dc1a Final decomposition of ML2 Cisco UCSM driver
The ML2 Cisco UCSM driver's entry point is being switched to the
networking-cisco vendor repo. The definition of the driver's db
file and all references to it in the neutron branch are removed.

Change-Id: I75eb165f3bb78d31bece26762ca0ff47cab2b79b
Implements: blueprint: core-vendor-decomposition
Closes-bug: #1484165
2015-08-19 11:32:03 -04:00
Carol Bouchard
14e6708782 Final decomposition of ML2 Nexus Driver
This changeset removes the remaining ML2 Nexus Driver Vendor
code from the neutron repo.  It has been moved to  the
networking-cisco repo.

Change-Id: I95540f35f80ad8eba4bc3f6fa37095842e42c037
Closes-bug:  #1482366
Implements:  blueprint: core-vendor-decomposition
2015-08-18 15:41:22 +00:00
Abhishek Raut
9d0088d0fb NSX: Move DB models as part of core vendor decomposition
This patch removes the database models from neutron repo.
Also removes README, common modules and plugin module.

Change-Id: I5d5b0acf34417889c2a449f22b92fd105697d90d
Related-Blueprint: core-vendor-decomposition
Partial-bug: #1483453
2015-08-17 19:19:53 +00:00
Ihar Hrachyshka
70727ba781 Merge remote-tracking branch 'origin/feature/qos' into merge-branch
Note to reviewers: gerrit diff for merge patches is very limited, and
leaving comments in global section won't scale, so please comment here:

https://etherpad.openstack.org/p/qos-merge-back-review

This merge commit introduces QoS feature into Liberty release of
Neutron.

The feature is documented in: doc/source/devref/quality_of_service.rst
included with the merge patch.

It includes:

- QoS API service plugin with QoS policy and QoS bandwidth limit
  (egress) rule support;
- core plugin mechanism to determine supported rule types, with its ML2
  implementation;
- new agent extension manager;
- QoS agent extension with pluggable backend QoS drivers (Open vSwitch
  and SR-IOV support is included).

To extend network and port core resources with qos_policy_id attribute,
a new ML2 extension driver (qos) was introduced that relies on the QoS
core resource extension (the idea is that eventually we'll get a core
resource extension manager that can be directly reused by core plugins).

Agent-server interaction is based on:

- get_device_details() method that is extended with qos_policy_id;
- a new push/pull mechanism that allows agents and servers to
  communicate using oslo.versionedobjects based objects sent on the
  wire.

The merge includes the following types of test coverage:

- unit tests;
- functional tests for OVS agent, QoS agent extension, and low level
  ovs_lib changes;
- API tests to cover port/network qos_policy_id attribute and new QoS
  resources.

The client changes can be found at:

* https://review.openstack.org/189655
* https://review.openstack.org/198277

The team also prepared fullstack test but it needs to wait for client
merge before it can pass in the gate:

* https://review.openstack.org/202492

Gerrit does not show diff for merge changes that did not result in any
conflict, so to facilitate review, rely on the following steps:

- fetch the patch locally
- git fetch origin
- git diff origin/master...

This merge also disables qos extension API tests until the service is
enabled in master gate.

Local changes apart from conflicts:
- updated down_revision for qos migration to reflect master expand head;
- disabled qos API tests with gate_hook.sh until we have it enabled in
  master gate;
- bumped oslo.versionedobjects requirement to reflect what is in
  openstack/requirements' global-requirements.txt

DocImpact
APIImpact
Partially-Implements: blueprint quantum-qos-api
Partially-Implements: blueprint ml2-qos
Partially-Implements: blueprint ml2-qos-ovs-bwlimiting
Partially-Implements: blueprint ml2-sriov-qos-with-bwlimiting
Change-Id: I92916d0e391791187e9a25ff172fb4b3504857b1
2015-08-17 15:16:55 +02:00
Jenkins
bd7e6d267c Merge "Remove vmware plugin from neutron (etc part)" 2015-08-15 18:03:52 +00:00
Jenkins
5c477abcb9 Merge "Final decomposition of the ML2 NCS driver" 2015-08-15 10:58:52 +00:00
Salvatore Orlando
2ba2456f9d Pecan WSGI: prevent plugins from opening AMQP connections
The Pecan WSGI server is supposed to server REST requests only.
As several plugins initialize their RPC interfaces upon initialization,
this results in establishing undesired connections to the AMQP server.

This patch does not alter plugin behavior or initialization process,
but ensures that the setup_rpc operation performed by a plugin has no
effect when executed in the Pecan WSGI server.

This patch also performs some refactoring for server launchers.

Change-Id: I56384f5f964ea90d72babf911aa5639989e9c3d8
2015-08-13 15:10:48 -07:00
Shih-Hao Li
0b19a1ef55 Remove vmware plugin from neutron (etc part)
Remove neutron:/etc/neutron/plugins/vmware/ because
it has been moved to vmware-nsx:/vmware_nsx/etc/
in commit# b27bc1942195ff551cd22ddaf6853a25302cbb7e.

This is the first part of vmware plugin decomposition
(etc, extensions, and database).

Partial-bug: #1483453
Change-Id: Ic6fe5e256369a1b6aabdaadf019989f0e6a6e444
2015-08-13 13:22:33 -07:00
Jenkins
18e40db717 Merge "Support for independent alembic branches in sub-projects" 2015-08-13 15:32:55 +00:00
Jenkins
012df59144 Merge "Treat sphinx warnings as errors" 2015-08-13 14:46:30 +00:00
Henry Gessau
603c0d03ae Support for independent alembic branches in sub-projects
Sub-projects shall now register their independent alembic migrations
via entrypoints in setup.cfg, and neutron-db-manage will discover them
and run them automatically.

If a service or sub-project is specified explicitly, then
neutron-db-manage will run on only that service or sub-project.

The advanced services project are just special cases of sub-projects.
For example, specifying the CLI option '--service lbaas' is the same
as specifying '--subproject neutron-lbaas'.

Specifying no service or sub-project will cause neutron-db-manage to
run the command on neutron and all installed sub-projects.

Added and consolidated documentation into devref for alembic migrations.

Partial-Bug: #1471333
Partial-Bug: #1470625

Change-Id: I9a06de64ce35675af28adf819de6f22dc832390d
2015-08-12 23:50:58 -04:00
Kanzhe Jiang
74a5e91667 Remove bigswitch mech_driver entry point definition
After vendor driver split, the entry point for bigswitch ml2
mechanism_driver is no longer valid. The new entry point is defined in
the networking-bigswitch stackforge repo.

Change-Id: Ie6e19a13e49d9d3e95f8ea2f10181592e9f156e5
Closes-Bug: #1484341
2015-08-12 20:39:17 -07:00
James E. Blair
ca497aa1fb Treat sphinx warnings as errors
Change-Id: I65fcca7eb3397c8f5a777bab1c9c20161263ed26
2015-08-12 15:19:28 -04:00
Henry Gessau
26b226f43e Final decomposition of the ML2 NCS driver
Closes-Bug: #1484160
Related-Blueprint: core-vendor-decomposition

Depends-On: I713f2378050f514a427fb9937b2a1fc5cc48bd6f

Change-Id: I0a447fd5b176faf96fc0f5e164fa7a3b098ae74f
2015-08-12 11:50:11 -04:00
Moshe Levi
995c35221b SR-IOV: Add Agent QoS driver to support bandwidth limit
This patch adds SR-IOV agent driver which uses eswitch manager to set VF
rate limit. It also updates the agent to call port_delete api of the
extension manager to cleanup when port is deleted.

Partially-Implements: blueprint ml2-sriov-qos-with-bwlimiting
Change-Id: I364fc8158e502d4dcc3510d6157f12969961a11d
2015-08-12 09:37:02 +00:00
Kyle Mestery
a7b91632fc Merge remote-tracking branch 'origin/master' into merge-branch
Change-Id: Ic237c09131f6579f3df1a3a10ba1e5f7a3d42bde
2015-08-11 10:39:40 +00:00
Ihar Hrachyshka
4dd9841186 Moved extensions/qos_agent.py into extensions/qos.py
This file does not contain any separate QoS agent but just an extension
for existing l2 agents to reuse.

Change-Id: I0587d89b0e841e5fd19b91157602efb5aa97513e
Partially-Implements: blueprint quantum-qos-api
2015-08-07 19:38:13 +00:00
Ihar Hrachyshka
cc0ae6dd49 Merge remote-tracking branch 'origin/feature/qos' into merge-branch
Change-Id: I683102e617202e0ffc953a0d3cc179879f8faf82
2015-08-05 17:15:40 +02:00
Ihar Hrachyshka
f80aa722a6 Added missing [qos] section into neutron.conf
Also renamed service_notification_drivers into notification_drivers
since it's clear where it belongs anyway (it's in neutron.conf meaning
it's a server side configuration value).

Change-Id: I64610e4b60112daec982a8cacded9b9b936c10bd
Partially-Implements: blueprint quantum-qos-api
2015-08-01 22:19:07 +02:00
Jenkins
b894c74add Merge "Initial pecan structure" into feature/pecan 2015-08-01 10:29:09 +00:00
Kevin Benton
dfd4c801d2 Initial pecan structure
This patch is the initial work for the pecan refactor.

* Adds pecan as a requirement
* Adds a simple API server named 'neutron-dev-server' for use
  when neutron server is not deployed in a web server
* Wraps the app with the openstack request ID middleware
* Adds a basic V2 controller that breaks out requests by method
* Adds functional tests to ensure request ID is set and requests
  are properly sent to the V2 controller.

Partially-Implements: blueprint wsgi-pecan-switch
Co-Authored-By: Brandon Logan <brandon.logan@rackspace.com>
Co-Authored-By: Mark McClain <mark@mcclain.xyz>
Change-Id: Ic9697ff30ab8359b62ce01eb73dc927065a8e3e6
2015-08-01 01:19:39 -07:00
Jenkins
7b3abffc2c Merge "Arista Drivers decomposition part II" 2015-08-01 00:48:44 +00:00
Sukhdev Kapur
50eb8041bd Arista Drivers decomposition part II
As a part of vendor driver decomposition,
this patch moves the remaining Arista specific
code to openstack/networking-arista

Change-Id: Ie16b5ed936b116043dea36ec967bb5ae9cdacbdf
Partial-Implements: blueprint core-vendor-decomposition
2015-07-31 12:38:40 -07:00
Saksham Varma
5b3bacedf6 Moved out cisco n1kv mech driver and db models
Moving out Cisco N1Kv database models and the mech driver
to the openstack/networking-cisco repo as part of the second
phase vendor-core decomposition

Partial-Bug: #1479123
Partial-implements: blueprint core-vendor-decomposition

Change-Id: I65a704b238d8cbe2951a6912fa4f1e8518c6f412
2015-07-30 00:12:26 +00:00
Jenkins
de2dd7aafe Merge "Moving out cisco n1kv extensions" 2015-07-29 17:44:42 +00:00