OpenStack Networking (Neutron)
Go to file
Assaf Muller 03999961ac Add fullstack cross-process port/ip address fixtures
We've had a series of bugs with resources that need
to be unique on the system across test runner
processes. Ports are used by neutron-server and the
OVS agent when run in native openflow mode. The function
that generates ports looks up random unused ports and
starts the service. However, it is raceful: By the time the
port is found to be unused and the service is started,
another test runner can pick the same random port.
With close to 65536 ports to choose from, the chance
for collision is low, but given enough test runs, it's
happened a non-trivial amount of times, and given that
a voting job needs a very low false-negative rate, we
need a more robust solution. The same applies to IP
addresses that are used by the OVS agent in tunneling
mode, and for the LB agent in all modes. With IP addresses,
we don't check if the IP address is used, we simply
pick a random address from a large pool, and again
we've seen a non-trivial amount of test failures.

The bugs referenced below had simple, short term solutions
applied but the bugs remain remain. This patch is a correct,
long term solution that doesn't rely on chance.

This patch adds a resource allocator that uses the disk
to persist allocations. Access to the disk is guarded
via a file lock. IP address, networks and ports fixtures
use an allocator internally.

Closes-Bug: #1551288
Closes-Bug: #1561248
Closes-Bug: #1560277
Change-Id: I46c0ca138b806759128462f8d44a5fab96a106d3
2016-03-28 10:16:39 -04:00
bin Close XenAPI sessions in neutron-rootwrap-xen-dom0 2016-03-18 13:05:09 -05:00
devstack BGP: remove unnecessary configuration setting 2016-03-01 03:15:15 -08:00
doc Merge "Removes redundant "and", "this" and "the"" 2016-03-25 22:56:00 +00:00
etc DSCP QoS rule implementation 2016-03-18 10:07:24 +01:00
neutron Add fullstack cross-process port/ip address fixtures 2016-03-28 10:16:39 -04:00
rally-jobs Changes in rally-jobs/README.rst 2015-06-04 10:34:15 -04:00
releasenotes Removing 'force_gateway_on_subnet' option 2016-03-23 12:14:26 +05:30
tools Update devstack plugin for dependent packages 2016-03-16 23:45:02 -07:00
.coveragerc Change ignore-errors to ignore_errors 2015-09-21 14:31:29 +00:00
.gitignore Automatically generate neutron core configuration files 2015-11-27 15:22:59 +00:00
.gitreview Fix .gitreview to not point at a branch 2015-08-17 13:51:51 -06:00
.mailmap Add mailmap entry 2014-05-16 13:40:04 -04:00
.pylintrc Start using neutron-lib for shared constants and exceptions 2016-02-10 16:41:18 -07:00
.testr.conf .testr.conf: revert workaround of testtools bug 2016-02-19 14:29:07 +01:00
CONTRIBUTING.rst Workflow documentation is now in infra-manual 2014-12-05 03:30:37 +00:00
HACKING.rst Using LOG.warning replace LOG.warn 2016-03-10 11:02:45 -08:00
LICENSE Adding Apache Version 2.0 license file. This is the official license agreement under which Quantum code is available to 2011-08-08 12:31:04 -07:00
MANIFEST.in Include alembic versions directory to the package 2015-10-21 07:26:24 +00:00
README.rst Update the URLs to the Cloud Admin Guide 2015-08-24 17:24:34 +02:00
TESTING.rst Note fullstack depends on released neutronclient 2016-03-24 11:10:19 -04:00
babel.cfg Use babel to generate translation file 2013-01-24 00:20:32 +08:00
openstack-common.conf remove openstack-common.conf 2016-01-08 12:58:59 +08:00
requirements.txt Merge "Ovs agent can't start on Windows because of validate_local_ip" 2016-03-21 13:19:37 +00:00
run_tests.sh Remove check for bash usage 2015-04-07 15:15:33 +00:00
setup.cfg register the config generator default hook with the right name 2016-03-11 15:15:29 -05:00
setup.py Updated from global requirements 2015-09-21 18:56:49 +00:00
test-requirements.txt Updated from global requirements 2016-03-17 21:21:18 +00:00
tox.ini fullstack: increase test timeout 2016-03-11 11:35:01 +09:00

README.rst

Welcome!

You have come across a cloud computing network fabric controller. It has identified itself as "Neutron." It aims to tame your (cloud) networking!

External Resources:

The homepage for Neutron is: http://launchpad.net/neutron. Use this site for asking for help, and filing bugs. Code is available on git.openstack.org at <http://git.openstack.org/cgit/openstack/neutron>.

The latest and most in-depth documentation on how to use Neutron is available at: <http://docs.openstack.org>. This includes:

Neutron Administrator Guide

http://docs.openstack.org/admin-guide-cloud/networking.html

Networking Guide

http://docs.openstack.org/networking-guide/

Neutron API Reference:

http://docs.openstack.org/api/openstack-network/2.0/content/

Current Neutron developer documentation is available at:

http://wiki.openstack.org/NeutronDevelopment

For help on usage and hacking of Neutron, please send mail to <mailto:openstack-dev@lists.openstack.org>.

For information on how to contribute to Neutron, please see the contents of the CONTRIBUTING.rst file.