neutron/neutron/plugins/ml2/drivers
Eugene Nikanorov 5dbb34b56f Refactor retry mechanism used in some DB operations
Use oslo_db helper that will allow to restart the whole
transaction in case it needs a certain operation to be repeated.
This is a workaround for the REPEATABLE READ problem where
retrying logic will not work because queries inside a transation
will not see updates made by other transactions.
So, run every attempt in a separate transaction.

Change-Id: I68f9ae8019879725df58f5da2c83bb699a548255
Closes-Bug: #1382064
2015-03-12 23:17:04 -04:00
..
arista Migrate to oslo.log 2015-03-12 11:22:56 +01:00
brocade Migrate to oslo.log 2015-03-12 11:22:56 +01:00
cisco Migrate to oslo.log 2015-03-12 11:22:56 +01:00
freescale Migrate to oslo.log 2015-03-12 11:22:56 +01:00
l2pop Migrate to oslo.log 2015-03-12 11:22:56 +01:00
mech_bigswitch Big Switch Networks code split 2015-03-06 09:43:30 +00:00
mech_nuage Migrate to oslo.log 2015-03-12 11:22:56 +01:00
mech_sriov Migrate to oslo.log 2015-03-12 11:22:56 +01:00
mlnx Migrate to oslo.log 2015-03-12 11:22:56 +01:00
ofagent ofagent: Update after networking-ofagent release 2015-03-12 13:13:53 +09:00
opendaylight Migrate to oslo.log 2015-03-12 11:22:56 +01:00
README.odl Mention networking_odl in README.odl 2015-01-26 10:44:43 +08:00
__init__.py Empty files should not contain copyright or license 2014-10-20 00:50:32 +00:00
helpers.py Refactor retry mechanism used in some DB operations 2015-03-12 23:17:04 -04:00
mech_agent.py Migrate to oslo.log 2015-03-12 11:22:56 +01:00
mech_hyperv.py Migrate to oslo.log 2015-03-12 11:22:56 +01:00
mech_linuxbridge.py Migrate to oslo.log 2015-03-12 11:22:56 +01:00
mech_openvswitch.py Migrate to oslo.log 2015-03-12 11:22:56 +01:00
type_flat.py Migrate to oslo.log 2015-03-12 11:22:56 +01:00
type_gre.py Migrate to oslo.log 2015-03-12 11:22:56 +01:00
type_local.py Migrate to oslo.log 2015-03-12 11:22:56 +01:00
type_tunnel.py Migrate to oslo.log 2015-03-12 11:22:56 +01:00
type_vlan.py Migrate to oslo.log 2015-03-12 11:22:56 +01:00
type_vxlan.py Migrate to oslo.log 2015-03-12 11:22:56 +01:00

README.odl

OpenDaylight ML2 MechanismDriver
================================
OpenDaylight is an Open Source SDN Controller developed by a plethora of
companies and hosted by the Linux Foundation. The OpenDaylight website
contains more information on the capabilities OpenDaylight provides:

    http://www.opendaylight.org

The networking-odl project provides a thin layer sitting between this
driver and OpenDaylight. The code can be downloaded from:

    https://git.openstack.org/cgit/stackforge/networking-odl

Theory of operation
===================
The OpenStack Neutron integration with OpenDaylight consists of the ML2
MechanismDriver which acts as a REST proxy and passes all Neutron API
calls into OpenDaylight. OpenDaylight contains a NB REST service (called
the NeutronAPIService) which caches data from these proxied API calls and
makes it available to other services inside of OpenDaylight. One current
user of the SB side of the NeutronAPIService is the OVSDB code in
OpenDaylight. OVSDB uses the neutron information to isolate tenant networks
using GRE or VXLAN tunnels.

How to use the OpenDaylight ML2 MechanismDriver
===============================================
To use the ML2 MechanismDriver, you need to ensure you have it configured
as one of the "mechanism_drivers" in ML2:

    mechanism_drivers=opendaylight

The next step is to setup the "[ml2_odl]" section in either the ml2_conf.ini
file or in a separate ml2_conf_odl.ini file. An example is shown below:

    [ml2_odl]
    password = admin
    username = admin
    url = http://192.168.100.1:8080/controller/nb/v2/neutron

When starting OpenDaylight, ensure you have the SimpleForwarding application
disabled or remove the .jar file from the plugins directory. Also ensure you
start OpenDaylight before you start OpenStack Neutron.

There is devstack support for this which will automatically pull down OpenDaylight
and start it as part of devstack as well. The patch for this will likely merge
around the same time as this patch merges.