Re: [controller-dev] How to use the OpenStack Neutron ML2 MechanismDriver with OpenDaylight


Kyle Mestery (kmestery) <kmestery@...>
 

FYI:

For all those who tried this, I should have mentioned this is currently
work in progress. The intent below is to show all the Neutron APIs
being handled by the ODL NeutronAPIService. There is still work to
do around port_binding, and hooking up something like OVSDB
northbound into the NeutronAPIService in ODL before this becomes
useable.

I'll give a larger update in the TWS call Monday.

Thanks,
Kyle

On Nov 13, 2013, at 9:19 PM, Kyle Mestery (kmestery) <kmestery@...> wrote:

All:

After returning from the OpenStack Summit in Hong Kong last week, I've spent some time working on the Neutron ML2 MechanismDriver for ODL. The good news is that after plenty of help from Ryan Moats, I've got it working now! Instructions on how to use it are below. The next steps are to integrate this with something which plugs into the NeutronAPIService APIs I'm using in ODL now. For the OVSDB integration efforts there, we will also require some possible API calls to alert ODL about hosts as the come online.

To test out the plugin (including devstack support), try the following instructions:

Here are some very brief instructions on using the (fresh off the presses) OpenStack Neutron ML2 MechanismDriver with ODL:

• Setup a fresh VM running either Fedora (preferably 19) or Ubuntu (12.04 or newer).
• Checkout a devstack tree from here:
• git clone https://github.com/CiscoSystems/devstack.git
• git checkout opendaylight
• Now, setup your local.conf [1] files. This file should go into the root of your devstack directory. You can copy/paste the example below and modify the sections as the next section indicates:
• Make the following changes per the example below:
• SERVICE_HOST should be the IP of the host you're running devstack on.
• In the ml2_odl section, the "url" should have the IP of the host running ODL.
• Once modified, now stack:
• ./stack.sh
• Once this is complete, you should now have a setup which is sending Neutron API requests to ODL.

NOTE: This assumes you have a working ODL running somewhere.

The code to look at the OpenDaylight ML2 MechanismDriver is located here:

https://github.com/CiscoSystems/neutron/tree/odl_ml2

If you have any questions, please let me know and reach out to me.

Thanks!
Kyle

[1] local.conf file:
[[local|localrc]]
LOGFILE=stack.sh.log
#OFFLINE=True
RECLONE=yes

disable_service n-net
enable_service q-svc
#enable_service q-agt
enable_service q-dhcp
enable_service q-l3
enable_service q-meta
enable_service neutron

# ODL WITH ML2
#enable_service odl
Q_PLUGIN=ml2
#Q_AGENT=
Q_ML2_PLUGIN_MECHANISM_DRIVERS=opendaylight,logger
NEUTRON_REPO=https://github.com/CiscoSystems/neutron.git
NEUTRON_BRANCH=odl_ml2
Q_HOST=$SERVICE_HOST

disable_service rabbit
enable_service qpid

HOST_NAME=$(hostname)
SERVICE_HOST_NAME=${HOST_NAME}
SERVICE_HOST=192.168.56.101

FLOATING_RANGE=192.168.100.0/24
MYSQL_HOST=$SERVICE_HOST
RABBIT_HOST=$SERVICE_HOST
GLANCE_HOSTPORT=$SERVICE_HOST:9292
KEYSTONE_AUTH_HOST=$SERVICE_HOST
KEYSTONE_SERVICE_HOST=$SERVICE_HOST

MYSQL_PASSWORD=mysql
RABBIT_PASSWORD=rabbit
SERVICE_TOKEN=service
SERVICE_PASSWORD=admin
ADMIN_PASSWORD=admin

[[post-config|/etc/neutron/plugins/ml2/ml2_conf.ini]]
[ml2_odl]
url=http://192.168.56.1:8080/controller/nb/v2/neutron
username=admin
password=admin

_______________________________________________
controller-dev mailing list
controller-dev@...
https://lists.opendaylight.org/mailman/listinfo/controller-dev

Join z.archive.ovsdb-dev@lists.opendaylight.org to automatically receive all group messages.