Merge "Revived Helium controller guide"
[docs.git] / manuals / user-guide / src / main / asciidoc / ch-dlux-userguide.adoc
1 == Using the OpenDaylight User Interface (DLUX)
2
3 This section introduces you to the OpenDaylight User Experience (DLUX) application. DLUX is an openflow network management application for Opendaylight controller. For detailed information about Opendaylight overview and architecture, see https://wiki.opendaylight.org/view/OpenDaylight_Controller:Overview[Opendaylight Overview], https://wiki.opendaylight.org/view/OpenDaylight_Controller:Architectural_Framework[Opendaylight Architecture]. +
4
5 OpendaylightController has two interfaces namely: +
6
7 * AD-SAL
8 * MD-SAL
9
10 Controller receives information from the various https://wiki.opendaylight.org/view/File:ODL-Helium-dependency.png[interdependent modules] through the SAL services. For more information about the SAL services available, see https://wiki.opendaylight.org/view/OpenDaylight_Controller:SAL[SAL Services].
11 DLUX also uses the SAL services to obtain network related information and use it to provide network management capabilities.
12
13 === Getting Started with DLUX
14
15 You can either use DLUX as a stand-alone plug-in or integrate with the Opendaylight controller. +
16
17 To install DLUX as a standalone application see https://wiki.opendaylight.org/view/OpenDaylight_DLUX:Setup_and_Run[OpenDaylight DLUX:Setup and Run]. +
18
19 To integrate with Opendaylight Controller you must enable DLUX Karaf feature. You can enable adsal, md sal and various other bundles within Karaf depending on the features you would like to access using DLUX.
20 Each feature can be enabled or disabled separately.
21
22 IMPORTANT: Ensure that you have created a topology and enabled MD-SAL feature in the Karaf distribution before you use DLUX for network management.
23
24 For more information about enabling the Karaf features for DLUX, see https://wiki.opendaylight.org/view/OpenDaylight_DLUX:DLUX_Karaf_Feature[OpenDaylight DLUX:DLUX Karaf Feature].
25
26 === Logging In
27
28 To log in to DLUX, after installing the application:
29
30 '''
31
32
33 . Open a browser and enter the login URL. If you have installed DLUX as a stand-alone, then the login URL is http://localhost:9000/DLUX/index.html. However if you have deployed  DLUX with Karaf, then the login URL is  http://\<your IP\>:8181/dlux/index.html.
34 NOTE: Ensure that you use the port applicable for the DLUX installation type. *local host* is the IP address of the machine where the application us installed. +
35
36 . Login to the application with user ID and password credentials as *admin*.
37 NOTE: admin is the only user type available for DLUX in this release.
38
39 '''
40
41 === Working with DLUX
42
43 After you login to DLUX, you will see all the modules that are available for DLUX in the left pane. However the modules disappear if the features are not enabled in the Karaf distribution.
44
45 To get a complete DLUX feature list, install restconf, odl l2 switch, and switch while you start the DLUX distribution. For more information about enabling features on DLUX, see https://wiki.opendaylight.org/view/OpenDaylight_DLUX:DLUX_Karaf_Feature[OpenDaylight DLUX:DLUX Karaf Feature].
46
47 .DLUX Modules
48 image::dlux-login.png["DLUX Page",width=500]
49
50
51 Modules that use the MD SAL based apis are : +
52
53 *       Nodes
54 *       Yang UI
55 *       Topology
56
57 Modules that use the AD SAL based apis are: +
58
59 *       Connection manager
60 *       Container
61 *       Network
62 *   Flows
63
64 NOTE: DLUX enables only those modules, whose APIs are responding. If you enable just the MD-SAL in beginning and then start dlux, only MD-SAL related tabs will be visible. While using the GUI if you enable AD-SAL karaf features, those tabs will appear automatically.
65
66 To view features that are enabled:
67
68 '''
69
70 . Right click on the DLUX page.
71 . Select *Inspect Element* and then click *Network*. +
72         A table that contains the list of features and if they are available in the DLUX distribution. The features that are not enabled is highlighted with red font and has status *404 Not Found*.
73
74 '''
75
76 === Viewing Network Statistics
77
78 The *Nodes* module on the left pane enables you to view the network statistics and port information for the switches in the network. +
79
80 To use the *Nodes* module:
81
82 '''
83
84 . Select *Nodes* on the left pane.
85         The right pane displays atable that lists all the nodes, node connectors and the statistics.
86 . Enter a node ID in the *Search Nodes* tab to search by node connectors.
87 . Click on the *Node Connector* number to view details such as port ID, port name, number of ports per switch, MAC Address, and so on.
88 . Click *Flows* in the Statistics column to view Flow Table Statistics for the particular node like table ID, packet match, active flows and so on.
89 . Click *Node Connectors* to view Node Connector Statistics for the particular node ID.
90
91 '''
92
93 === Viewing Network Topology
94
95 The Topology tab displays a graphical representation of network topology created.
96
97 NOTE: DLUX UI does not provide ability to add topology information. The Topology should be created using an open flow plugin. Controller stores this information in the database and displays on the DLUX page, when the you connect to the controller using openflow.
98
99 To view network topology:
100
101 '''
102
103 . Select *Topology* on the left pane. You will view the graphical representation on the right pane.
104         In the diagram blue boxes represent the switches, the black represents the hosts available, and lines represents how switches are connected.
105 . Hover your mouse on hosts,links, or switches to view source and destination ports.
106 . Zoom in and zoom out using mouse scroll to verify topology for huge topologies.
107
108 '''
109
110 .Topology Module
111 image::dlux-topology.png["DLUX Topology Page",width=500]
112
113 === Interacting with the Open Daylight Controller (ODL)
114
115 The *Yang UI* module enables you to interact with the ODL. For more information about Yang Tools, see https://wiki.opendaylight.org/view/YANG_Tools:Main [YANG_Tools].
116
117 .Yang UI
118 image::dlux-yang-ui-screen.png["DLUX Yang UI Page",width=500]
119
120 To use Yang UI:
121
122 '''
123
124 . Select *Yang UI* on the left pane. The right pane is divided in two parts.
125
126 . The top part displays a tree of APIs and subAPIs and buttons to call possible functions (GET, POST, PUT, DELETE, …). Not every subAPIs can call every function.
127    For example, subAPIs “operational” have GET functionality only.
128         Inputs can be filled from ODL when existing data from ODL is displayed or can be filled by user on the page and sent to ODL. +
129         +
130         Buttons under the API tree are variable. It depends on subAPI specifications. Common buttons are: +
131          * GET to get data from ODL,
132          * PUT and POST for sending data to ODL for saving
133          * DELETE for sending data to ODL for deleting. +
134          You must specify the xpath for all these operations. This path is displayed in the same row before buttons and it can include text inputs for specific path elements identifiers. +
135 +
136
137 .Yang API Specification
138 image::dlux-yang-api-specification.png["DLUX Yang UI API Specification Page",width=500]
139
140 . The bottom part of the right pane displays inputs according to the chosen subAPI. Every subAPI is represented by list elements of list statement. It is possible to have a many list elements of one list. +
141     +
142         For example, a device can store multiple flows. In this case “flow” is name of the list and every list element is different by a key value. List element of list can obtain other lists.
143         Every list element has a list name, a key name and its value, and a button for removing this list element. Usually the key of the list statement obtains an ID.
144         Inputs can be filled from ODL using GET button from xpath part, or can be filled by user on the page and sent to ODL. +
145 +
146
147 .Yang UI API Specification
148 image::dlux-yang-sub-api-screen.png["DLUX Yang UI Sub API Specification Page",width=500]
149
150 . Click *Show Preview* button under API tree to display request that will be sent to ODL.
151    A pane is displayed on the right side with text of request when some input is filled.
152
153 '''
154
155 ==== Displaying Topology on the *Yang UI*
156
157 To display topology:
158
159 '''
160
161 . Select subAPI network-topology <topology revision number> -> operational -> network-topology.
162 . Get data from ODL by clicking on the “GET” button.
163 . Click *Display Topology*.
164
165 .DLUX Yang Topology
166 image::dlux-yang-topology.png["DLUX Yang Topology Page",width=500]
167
168 '''
169
170 ==== Configuring List Elements on the *Yang UI*
171
172 The list is displayed like tree structure with possibility to expand or collapse by the arrow before name of the list. To configure list elements on the Yang UI:
173
174 '''
175
176 . To add a new list element with empty inputs use the plus icon-button **+** that is provided after list name. When some list element is added, button with his name and key value is displayed. +
177 . To remove several list elements, use the *X* button that is provided after every list element.
178 +
179
180 .DLUX List Elements
181 image::dlux-yang-list elements.png[DLUX list elements,width=500]
182 . Key of list is one or more inputs, which are used like identifier of list element. All list elements in one list must have different key values. If some elements has the same key values, the new warning icon *!* is displayed near their name buttons.
183 +
184
185 .DLUX List Warnings
186 image::dlux-yang-list-warning.png[DLUX list warnings,width=500]
187 . When the list obtains at least one list element, after *+* icon is icon for selecting the list element displayed. You can choose one of them by clicking the icon. The name button of the list element and name buttons of its neighbours will be displayed in the row list. You can can forward or backward row list of list elements name buttons by clicking on the arrow button on the end of row.
188 +
189
190 .DLUX List Button1
191 image::dlux-yang-list-button1.png[DLUX list button1,width=500]
192
193 '''