Migrating DLUX, Clustering, Version and XSQL to reST
[docs.git] / docs / getting-started-guide / common-features / dlux.rst
1 OpenDaylight User Interface (DLUX)
2 ==================================
3
4 This section introduces you to the OpenDaylight User Experience (DLUX) application.
5
6 Getting Started with DLUX
7 -------------------------
8
9 DLUX provides a number of different Karaf features, which you can enable and disable separately. In Boron they are:
10
11 #. odl-dlux-core
12 #. odl-dlux-node
13 #. odl-dlux-yangui
14 #. odl-dlux-yangvisualizer
15
16 Logging In
17 ----------
18
19 To log in to DLUX, after installing the application:
20
21 #. Open a browser and enter the login URL http://<your-karaf-ip>:8181/index.html in your browser (Chrome is recommended).
22 #. Login to the application with your username and password credentials.
23
24 .. note:: OpenDaylight's default credentials are *admin* for both the username and password.
25
26 Working with DLUX
27 -----------------
28
29 After you login to DLUX, if you enable only odl-dlux-core feature, you will see only topology application available in the left pane.
30
31 .. note:: To make sure topology displays all the details, enable the odl-l2switch-switch feature in Karaf.
32
33 DLUX has other applications such as node, yang UI and those apps won't show up, until you enable their features odl-dlux-node and odl-dlux-yangui respectively in the Karaf distribution.
34
35 .. figure:: images/dlux/dlux-login.png
36    :width: 500
37
38    DLUX Modules
39
40 .. note:: If you install your application in dlux, they will also show up on the left hand navigation after browser page refresh.
41
42 Viewing Network Statistics
43 --------------------------
44
45 The *Nodes* module on the left pane enables you to view the network statistics and port information for the switches in the network.
46
47 To use the *Nodes* module:
48
49 #. Select *Nodes* on the left pane. The right pane displays atable that lists all the nodes, node connectors and the statistics.
50 #. Enter a node ID in the *Search Nodes* tab to search by node connectors.
51 #. 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.
52 #. 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.
53 #. Click *Node Connectors* to view Node Connector Statistics for the particular node ID.
54
55 Viewing Network Topology
56 ------------------------
57
58 The Topology tab displays a graphical representation of network topology created.
59
60 .. note:: DLUX does not allow for editing or adding topology information. The topology is generated and edited in other modules, e.g., the OpenFlow plugin. OpenDaylight stores this information in the MD-SAL datastore where DLUX can read and display it.
61
62 To view network topology:
63
64 #. Select *Topology* on the left pane. You will view the graphical representation on the right pane. In the diagram blue boxes represent the switches, the black represents the hosts available, and lines represents how the switches and hosts are connected.
65 #. Hover your mouse on hosts, links, or switches to view source and destination ports.
66 #. Zoom in and zoom out using mouse scroll to verify topology for larger topologies.
67
68 .. figure:: images/dlux/dlux-topology.png
69    :width: 500
70
71    Topology Module
72
73 Interacting with the YANG-based MD-SAL datastore
74 ------------------------------------------------
75
76 The *Yang UI* module enables you to interact with the YANG-based MD-SAL datastore. For more information about YANG and how it interacts with the MD-SAL datastore, see the *Controller* and *YANG Tools* section of the *OpenDaylight Developer Guide*.
77
78 .. figure:: images/dlux/dlux-yang-ui-screen.png
79    :width: 500
80
81    Yang UI
82
83 To use Yang UI:
84
85 #. Select *Yang UI* on the left pane. The right pane is divided in two parts.
86 #. The top part displays a tree of APIs, subAPIs, and buttons to call possible functions (GET, POST, PUT, and DELETE).
87
88    .. note:: Not every subAPI can call every function. For example, subAPIs in the *operational* store have GET functionality only.
89
90    Inputs can be filled from OpenDaylight when existing data from OpenDaylight is displayed or can be filled by user on the page and sent to OpenDaylight.
91
92    Buttons under the API tree are variable. It depends on subAPI specifications. Common buttons are:
93
94    * GET to get data from OpenDaylight,
95    * PUT and POST for sending data to OpenDaylight for saving
96    * DELETE for sending data to OpenDaylight for deleting.
97
98    You must specify the xpath for all these operations. This path is displayed in the same row before buttons and it may include text inputs for specific path element identifiers.
99
100    .. figure:: images/dlux/dlux-yang-api-specification.png
101       :width: 500
102
103       Yang API Specification
104
105 #. The bottom part of the right pane displays inputs according to the chosen subAPI.
106
107    * Lists are handled as a special case. For example, a device can store multiple flows. In this case "flow" is name of the list and every list element is identified by a unique key value. Elements of a list can, in turn, contain other lists.
108    * In Yang UI, each list element is rendered with the name of the list it belongs to, its key, its value, and a button for removing it from the list.
109
110      .. figure:: images/dlux/dlux-yang-sub-api-screen.png
111         :width: 500
112
113         Yang UI API Specification
114
115 #. After filling in the relevant inputs, click the *Show Preview* button under the API tree to display request that will be sent to OpenDaylight.
116    A pane is displayed on the right side with text of request when some input is filled.
117
118 Displaying Topology on the Yang UI
119 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
120
121 To display topology:
122
123 #. Select subAPI network-topology <topology revision number> == > operational == > network-topology.
124 #. Get data from OpenDaylight by clicking on the "GET" button.
125 #. Click *Display Topology*.
126
127 .. figure:: images/dlux/dlux-yang-topology.png
128    :width: 500
129
130    DLUX Yang Topology
131
132 Configuring List Elements on the Yang UI
133 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
134
135 Lists in Yang UI are displayed as trees. To expand or collapse a list, click the arrow before name of the list. To configure list elements in Yang UI:
136
137 #. To add a new list element with empty inputs use the plus icon-button **+** that is provided after list name.
138 #. To remove several list elements, use the *X* button that is provided after every list element.
139
140    .. figure:: images/dlux/dlux-yang-list-elements.png
141       :width: 500
142
143       DLUX List Elements
144
145 #. In the YANG-based data store all elements of a list must have a unique key. If you try to assign two or more elements the same key, a warning icon *!* is displayed near their name buttons.
146
147    .. figure:: images/dlux/dlux-yang-list-warning.png
148       :width: 500
149
150       DLUX List Warnings
151
152 #. When the list contains at least one list element, after the *+* icon, there are buttons to select each individual list element. You can choose one of them by clicking on it. In addition, to the right of the list name, there is a button which will display a vertically scrollable pane with all the list elements.
153
154    .. figure:: images/dlux/dlux-yang-list-button1.png
155       :width: 500
156
157       DLUX List Button