Merge pull request #1 from javacruft/external-networking-redux
External networking redux
This commit is contained in:
commit
3121e5fb50
|
@ -0,0 +1,148 @@
|
|||
..
|
||||
Copyright 2016 Canonical
|
||||
|
||||
This work is licensed under a Creative Commons Attribution 3.0
|
||||
Unported License.
|
||||
http://creativecommons.org/licenses/by/3.0/legalcode
|
||||
|
||||
..
|
||||
This template should be in ReSTructured text. Please do not delete
|
||||
any of the sections in this template. If you have nothing to say
|
||||
for a whole section, just write: "None". For help with syntax, see
|
||||
http://sphinx-doc.org/rest.html To test out your formatting, see
|
||||
http://www.tele3.cz/jbar/rest/rest.html
|
||||
|
||||
=========================
|
||||
External Networking REDUX
|
||||
=========================
|
||||
|
||||
Refactor neutron-gateway and neutron-openvswitch charms to support more
|
||||
flexible configuration of 'external' north/south traffic routing to
|
||||
tenant networks.
|
||||
|
||||
Problem Description
|
||||
===================
|
||||
|
||||
The neutron-gateway and neutron-openvswitch charms currently support the
|
||||
'ext-port' configuration option to plumb the Open vSwitch br-ex bridge
|
||||
into the external/public network.
|
||||
|
||||
OpenStack switched to a more flexible way of doing this a few cycles back,
|
||||
and the use of the default 'br-ex' == external network approach is
|
||||
officially deprecated.
|
||||
|
||||
We need to refactor the charms to support the reference way of configuring
|
||||
external networking, which provides more flexibility than the current
|
||||
approach but does require more knowledge of Neutron.
|
||||
|
||||
Use Cases
|
||||
---------
|
||||
|
||||
Using the reference approach to external networking, its possible to have
|
||||
multiple external networks served from the same set of neutron gateway
|
||||
units, potentially on the same physical network with VLAN segmentation:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
neutron net-create --provider:network_type vlan \
|
||||
--provider:segmentation_id 400 \
|
||||
--provider:physical_network physnet1 --shared external
|
||||
|
||||
neutron net-create --provider:network_type vlan \
|
||||
--provider:segmentation_id 401 \
|
||||
--provider:physical_network physnet1 --shared \
|
||||
--router:external=true floating
|
||||
|
||||
neutron router-gateway-set provider floating
|
||||
|
||||
|
||||
with the associated neutron-gateway configuration:
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
neutron-gateway:
|
||||
bridge-mappings: physnet1:br-data
|
||||
data-port: br-data:eth1
|
||||
|
||||
Proposed Change
|
||||
===============
|
||||
|
||||
Both the neutron-gateway and neutron-openvswitch charms will need to be
|
||||
updated to support this change; for now the 'ext-port' configuration will
|
||||
be deprecated for backwards compatibility with existing installations
|
||||
preserving current behaviour.
|
||||
|
||||
The existing 'data-port' configuration option will be used instead to
|
||||
configure bridge-mappings and connectivity to physical network ports
|
||||
on the units deployed.
|
||||
|
||||
Alternatives
|
||||
------------
|
||||
|
||||
No alternatives.
|
||||
|
||||
Implementation
|
||||
==============
|
||||
|
||||
Assignee(s)
|
||||
-----------
|
||||
|
||||
Primary assignee:
|
||||
james-page
|
||||
|
||||
Additional contributors:
|
||||
lathiat (Trent Lloyd)
|
||||
|
||||
Gerrit Topic
|
||||
------------
|
||||
|
||||
Use Gerrit topic "ext-net-redux" for all patches related to this spec.
|
||||
|
||||
.. code-block:: bash
|
||||
|
||||
git-review -t ext-net-redux
|
||||
|
||||
Work Items
|
||||
----------
|
||||
|
||||
- Updates for neutron-gateway charm
|
||||
- Updates for neutron-openvswitch charm
|
||||
- Updates for openstack-charm-testing to configure external networking
|
||||
in the new style.
|
||||
- Updates to Mojo specifications for new style configuration.
|
||||
- Updates to official bundles with details on new configuration for
|
||||
external networking.
|
||||
|
||||
Repositories
|
||||
------------
|
||||
|
||||
None required.
|
||||
|
||||
Documentation
|
||||
-------------
|
||||
|
||||
README's in impacted charms will be updated with details on how to
|
||||
configure external networking.
|
||||
|
||||
Security
|
||||
--------
|
||||
|
||||
No additional security requirements.
|
||||
|
||||
Testing
|
||||
-------
|
||||
|
||||
Unit tests will be used to validate the code; Mojo specifications will
|
||||
be updated to use the new style of external networking configuration
|
||||
along with openstack-charm-testing.
|
||||
|
||||
Dependencies
|
||||
============
|
||||
|
||||
- No additional dependencies for this specification.
|
||||
|
||||
References
|
||||
----------
|
||||
|
||||
- https://bugs.launchpad.net/neutron/+bug/1491668
|
||||
- http://docs.openstack.org/mitaka/networking-guide/scenario-classic-ovs.html
|
Loading…
Reference in New Issue