This guide is geared towards installing OpenDaylight to use the OVSDB project to provide Neutron support for OpenStack.
Open vSwitch (OVS) is generally accepted as the unofficial standard for Virtual Switching in the Open hypervisor based solutions. For information on OVS, see Open vSwitch.
With OpenStack within the SDN context, controllers and applications interact using two channels: OpenFlow and OVSDB. OpenFlow addresses the forwarding-side of the OVS functionality. OVSDB, on the other hand, addresses the management-plane. A simple and concise overview of Open Virtual Switch Database (OVSDB) is available at: http://networkstatic.net/getting-started-ovsdb/
Follow the instructions in Installing OpenDaylight.
Note
By default the ODL OVSDB L3 forwarding is disabled. Enable the functionality by editing the ovsdb.l3.fwd.enabled setting and setting it to yes:
vi etc/custom.properties
ovsdb.l3.fwd.enabled=yes
Install the required features with the following command:
feature:install odl-ovsdb-openstack
Recognize that for the feature to fully install requires installing other required features and may take 30–60 seconds as those other features are automatically installed. The Karaf prompt will return before the feature is fully installed.
To verify that the installation was successful, use the following commands in Karaf and verify that the required features have been installed:
opendaylight-user@root>feature:list -i | grep ovsdb
odl-ovsdb-openstack | 1.2.1-Beryllium | x | ovsdb-1.2.1-Beryllium | OpenDaylight :: OVSDB :: OpenStack Network Virtual
odl-ovsdb-library | 1.2.1-Beryllium | x | odl-ovsdb-library-1.2.1-Beryllium | OpenDaylight :: library
odl-ovsdb-southbound-api | 1.2.1-Beryllium | x | odl-ovsdb-southbound-1.2.1-Beryllium | OpenDaylight :: southbound :: api
odl-ovsdb-southbound-impl | 1.2.1-Beryllium | x | odl-ovsdb-southbound-1.2.1-Beryllium | OpenDaylight :: southbound :: impl
odl-ovsdb-southbound-impl-rest | 1.2.1-Beryllium | x | odl-ovsdb-southbound-1.2.1-Beryllium | OpenDaylight :: southbound :: impl :: REST
odl-ovsdb-southbound-impl-ui | 1.2.1-Beryllium | x | odl-ovsdb-southbound-1.2.1-Beryllium | OpenDaylight :: southbound :: impl :: UI
opendaylight-user@root>feature:list -i | grep neutron
odl-neutron-service | 0.6.0-Beryllium | x | odl-neutron-0.6.0-Beryllium | OpenDaylight :: Neutron :: API
odl-neutron-northbound-api | 0.6.0-Beryllium | x | odl-neutron-0.6.0-Beryllium | OpenDaylight :: Neutron :: Northbound
odl-neutron-spi | 0.6.0-Beryllium | x | odl-neutron-0.6.0-Beryllium | OpenDaylight :: Neutron :: API
odl-neutron-transcriber | 0.6.0-Beryllium | x | odl-neutron-0.6.0-Beryllium | OpenDaylight :: Neutron :: Implementation
opendaylight-user@root>feature:list -i | grep openflowplugin
odl-openflowplugin-southbound | 0.2.0-Beryllium | x | openflowplugin-0.2.0-Beryllium | OpenDaylight :: Openflow Plugin :: SouthBound
odl-openflowplugin-nsf-services | 0.2.0-Beryllium | x | openflowplugin-0.2.0-Beryllium | OpenDaylight :: OpenflowPlugin :: NSF :: Services
odl-openflowplugin-nsf-model | 0.2.0-Beryllium | x | openflowplugin-0.2.0-Beryllium | OpenDaylight :: OpenflowPlugin :: NSF :: Model
odl-openflowplugin-nxm-extensions | 0.2.0-Beryllium | x | openflowplugin-extension-0.2.0-Beryllium | OpenDaylight :: Openflow Plugin :: Nicira Extension
Use the following command in karaf to view the logs. Verify that there are no errors logs relating to odl-ovsdb-openstack:
log:display
Look for the following log to indicate that the odl-ovsdb-openstack feature has been fully installed:
Successfully pushed configuration snapshot netvirt-providers-impl-default-config.xml(odl-ovsdb-openstack,odl-ovsdb-openstack)
Reference the following link to the OVSDB NetVirt project wiki. The link has very helpful information for understanding the OVSDB Network Virtualization project:
Uninstall the odl-ovsdb-openstack feature by using the following command:
feature:uninstall odl-ovsdb-openstack
The shut down OpenDaylight with the following command:
system:shutdown
Use the following command to clean and reset the working state before starting OpenDaylight again:
rm -rf data/* journal/* snapshots/*