opendaylight integration with openstack neutron: a tutorial
DESCRIPTION
This slide deck walks you through a tutorial on using OpenDaylight to orchestrate virtual tenant networks with OpenStack Neutron.TRANSCRIPT
![Page 1: OpenDaylight Integration with OpenStack Neutron: A Tutorial](https://reader031.vdocuments.net/reader031/viewer/2022020921/555151e8b4c905c6268b5629/html5/thumbnails/1.jpg)
Using OpenStack With
OpenDaylightKyle Mestery, CiscoRyan Moats, IBM
Brent Salisbury, Red HatMadhu Venugopal, Red Hat
2-5-2014
![Page 2: OpenDaylight Integration with OpenStack Neutron: A Tutorial](https://reader031.vdocuments.net/reader031/viewer/2022020921/555151e8b4c905c6268b5629/html5/thumbnails/2.jpg)
What You Will Walk Away With
• Hands on experience bringing up OpenDaylight on Fedora
• Hands on experience bringing up a multi-node OpenStack environment
• Hands on experience using OpenDaylight with OpenStack Neutron for virtual tenant networks
![Page 3: OpenDaylight Integration with OpenStack Neutron: A Tutorial](https://reader031.vdocuments.net/reader031/viewer/2022020921/555151e8b4c905c6268b5629/html5/thumbnails/3.jpg)
OpenVSwitch
OVSDB Protocol Library
Bidirectional JSON-RPC Library
Netty.io
ConfigurationService
InventoryService
API Driven SAL (ADSAL)API Driven SAL (ADSAL)
OpenFlow 1.0 Plugin
OpenFlow 1.0 Library
ConnectionService
FlowProgrammer
java.nio.socket
Model Driven SAL (MDSAL)Model Driven SAL (MDSAL)
InventoryService
ConnectionService
FlowProgrammer
OpenFlow 1.3 Plugin
OpenFlow 1.3 Library
Netty io
OVSDB South-bound Plugin OpenFlow 1.0 SB Plugin OpenFlow 1.3 SB Plugin
ControllerNeutron
ML2 Plug-In
OpenDaylight NorthBound API Layer - REST APIsOpenDaylight NorthBound API Layer - REST APIs
OpenDaylight Neutron REST-APIOpenDaylight Neutron REST-API
OVSDB Neutron ApplicationOVSDB Neutron Application
OVSDB Protocol OpenFlow1.3OpenFlow 1.0
![Page 4: OpenDaylight Integration with OpenStack Neutron: A Tutorial](https://reader031.vdocuments.net/reader031/viewer/2022020921/555151e8b4c905c6268b5629/html5/thumbnails/4.jpg)
What You Will Need
• OpenDaylight Virtualization Edition with OVSDB• Can be in a VM or on your laptop directly
• Two or more OpenStack Nodes• One node running control software and optionally compute services• One or more compute nodes
![Page 5: OpenDaylight Integration with OpenStack Neutron: A Tutorial](https://reader031.vdocuments.net/reader031/viewer/2022020921/555151e8b4c905c6268b5629/html5/thumbnails/5.jpg)
Logistics
• The Fedora20 VM has the following information:• Users:
• root/password• odl/odl
• Setup for DHCP for the image itself.
![Page 6: OpenDaylight Integration with OpenStack Neutron: A Tutorial](https://reader031.vdocuments.net/reader031/viewer/2022020921/555151e8b4c905c6268b5629/html5/thumbnails/6.jpg)
Boot Your VM Images
• Boot the VM which you will run OpenDaylight inside of.• Optionally bring-up OpenDaylight on your laptop natively.• This will work in either scenario.
• Verify IP addresses on your VMs (may require reboots).• This should be done for all VMs.• This may change once you import the OVF file.
![Page 7: OpenDaylight Integration with OpenStack Neutron: A Tutorial](https://reader031.vdocuments.net/reader031/viewer/2022020921/555151e8b4c905c6268b5629/html5/thumbnails/7.jpg)
OpenDaylight Configuration and Startup• Edit your ODL configuration:
• opendaylight/configuration/config.ini (change of.address)• Optionally enable OpenFlow 1.3
• opendaylight/configuration/config.ini (uncomment this)• Bring OpenDaylight to life:
• Handy RUN.sh script• This contains options for both OpenFlow 1.0 (default) or OpenFlow 1.3 (optional)
• Post ODL fixup:• From OSGI console:
• lb | grep simple• stop <simple forwarding ID>
![Page 8: OpenDaylight Integration with OpenStack Neutron: A Tutorial](https://reader031.vdocuments.net/reader031/viewer/2022020921/555151e8b4c905c6268b5629/html5/thumbnails/8.jpg)
OpenStack VM Setup
• Copy the VM image twice:• Once for control and once for compute
• On both nodes:• cd /etc/sysconfig/networking-scripts• sudo cp ifcfg-eth0 ifcfg-eth1• Edit ifcfg-eth1 to change interface name
• On the control node:• Login as odl/odl• Copy local.conf.control to devstack/local.conf• Edit devstack/local.conf and change IP addresses
• On the compute node:• Login as odl/odl• Copy local.conf.compute to devstack/local.conf• Edit devstack/local.conf and change IP addresses
![Page 9: OpenDaylight Integration with OpenStack Neutron: A Tutorial](https://reader031.vdocuments.net/reader031/viewer/2022020921/555151e8b4c905c6268b5629/html5/thumbnails/9.jpg)
Example of stopping Simple Forwarding
![Page 10: OpenDaylight Integration with OpenStack Neutron: A Tutorial](https://reader031.vdocuments.net/reader031/viewer/2022020921/555151e8b4c905c6268b5629/html5/thumbnails/10.jpg)
Browse to your ODL Window over HTTP
![Page 11: OpenDaylight Integration with OpenStack Neutron: A Tutorial](https://reader031.vdocuments.net/reader031/viewer/2022020921/555151e8b4c905c6268b5629/html5/thumbnails/11.jpg)
Boot Up Your OpenStack Instances
• Control Node:• cd devstack• ./stack.sh
• Compute Node:• cd devstack• ./stack.sh
![Page 12: OpenDaylight Integration with OpenStack Neutron: A Tutorial](https://reader031.vdocuments.net/reader031/viewer/2022020921/555151e8b4c905c6268b5629/html5/thumbnails/12.jpg)
Your devstack will look like this
![Page 13: OpenDaylight Integration with OpenStack Neutron: A Tutorial](https://reader031.vdocuments.net/reader031/viewer/2022020921/555151e8b4c905c6268b5629/html5/thumbnails/13.jpg)
Login to Horizon (go to the IP of your control node)
![Page 14: OpenDaylight Integration with OpenStack Neutron: A Tutorial](https://reader031.vdocuments.net/reader031/viewer/2022020921/555151e8b4c905c6268b5629/html5/thumbnails/14.jpg)
Login as (admin/admin) to see the Horizon Dashboard
![Page 15: OpenDaylight Integration with OpenStack Neutron: A Tutorial](https://reader031.vdocuments.net/reader031/viewer/2022020921/555151e8b4c905c6268b5629/html5/thumbnails/15.jpg)
Spinup a VM
![Page 16: OpenDaylight Integration with OpenStack Neutron: A Tutorial](https://reader031.vdocuments.net/reader031/viewer/2022020921/555151e8b4c905c6268b5629/html5/thumbnails/16.jpg)
Spinup a VM(cont.)
![Page 17: OpenDaylight Integration with OpenStack Neutron: A Tutorial](https://reader031.vdocuments.net/reader031/viewer/2022020921/555151e8b4c905c6268b5629/html5/thumbnails/17.jpg)
Instance is now booted
![Page 18: OpenDaylight Integration with OpenStack Neutron: A Tutorial](https://reader031.vdocuments.net/reader031/viewer/2022020921/555151e8b4c905c6268b5629/html5/thumbnails/18.jpg)
Repeat process for a second VM
![Page 19: OpenDaylight Integration with OpenStack Neutron: A Tutorial](https://reader031.vdocuments.net/reader031/viewer/2022020921/555151e8b4c905c6268b5629/html5/thumbnails/19.jpg)
Checkout OpenDaylight Web GUI
![Page 20: OpenDaylight Integration with OpenStack Neutron: A Tutorial](https://reader031.vdocuments.net/reader031/viewer/2022020921/555151e8b4c905c6268b5629/html5/thumbnails/20.jpg)
Ping test between VMs
![Page 21: OpenDaylight Integration with OpenStack Neutron: A Tutorial](https://reader031.vdocuments.net/reader031/viewer/2022020921/555151e8b4c905c6268b5629/html5/thumbnails/21.jpg)
Thank You!