9fc316cb57f80db6f464d0c52c07f9ebc3db9243
[docs.git] / manuals / developer-guide / src / main / asciidoc / vtn / OpenStack_Support-dev.adoc
1 === OpenStack Support Developer Guide
2 The implementation  describes ODL controller with VTN manager  feature provides the  network service for OpenStack. VTN manager utilizes the OVSDB southbound service and the neutron for this implementation.The below diagram depicts the communication of ODL Controller and two virtual network connected by a OpenFlow switch using this implementation.
3
4 .OpenStack Architecture
5 image::vtn/OpenStackDeveloperGuide.png["OpenStack Architecture",width=500]
6
7 ==== Configuration
8 Please refer https://wiki.opendaylight.org/view/Release/Helium/VTN/User_Guide/OpenStack_Support for the use and configuration.
9
10 ===== OpenStack Configuration  Details
11 Follow the below steps to configure devstack with ODL controller:
12
13 .Control Node
14 * Disable nova network and enable neutron.
15 * Enable service odl-compute (Optionally you can enable odl-server also, which will download and deploy ODL in the particular node).
16 * Set ODL_MGR_IP with IP Address of ODL.
17 * Make all network types as local, as there is no support for vlan in Helium.
18 * Add the ODL neutron URL for devstack to post requests.
19
20 .Compute Node
21 * To configure Compute node follows the steps b,c and d of Control Node.
22 * Very few services are enabled like neutron,n-cpu and rabbit.
23 * The neutron URL is not needed to be set in compute node.
24 * The Controller node services are added as the service hosts for various services.
25
26 For more details: Please refer to https://wiki.openstack.org/wiki/NeutronDevstack
27
28 ==== Implementation details
29
30 ===== VTN Manager:
31 Install *odl-vtn-manager-neutron* feature which provides the integration with Neutron interface.
32
33   install odl-vtn-manager-neutron
34
35 It subscribes to the events from OVS and also implements the neutron requests received by ODL Controller.
36
37 ===== Functional Behavior
38
39 .StartUp:
40 * The ML2 implementation for ODL Controller will ensure that when OVS is started, the ODL_IP_ADDRESS configured will be set as manager.
41 * When ODL Controller receives the update of the OVS in the port:6640, (Manager port) VTN Manager handles the event and adds a bridge with required port mappings to the Open-V-Switch at openstack node.
42 * When neutron starts up, a New Network create is POSTED to ODL, for which VTN Manager creates a VTN.
43 * Network and Sub-Network Create:
44   Whenever a new sub network is created, VTN Manager will handle the same and create a vbridge under the VTN.
45 * VM Creation in openstack:
46  The interface mentioned as integration bridge in the configuration file, will be added with more interfaces on creation of  a new VM in OpenStack and network is provisioned for it by VTN neutron bundle. The addition of new PORT is captured by VTN Manager and it creates a vbridge interface with port mapping for the particular port.Now, when the VM starts to communicate with other VM's created, VTN Manger will install flows in the OVS and other openflow switches to facilitate communication between VM(s).
47
48 NOTE:
49   To use this feature, VTN feature should be installed
50
51 ==== Reference
52
53 https://wiki.opendaylight.org/images/5/5c/Integration_of_vtn_and_ovsdb_for_helium.pdf