bd67f7c383bb7006eb2763d0e6ae043579baccea
[docs.git] / manuals / getting-started-guide / src / main / asciidoc / ch-dlux.adoc
1 == Using the OpenDaylight User Interface (DLUX)
2
3 This section introduces you to the OpenDaylight User Experience (DLUX) application.
4
5 === Getting Started with DLUX
6
7 DLUX provides a number of different Karaf features, which you can enable and disable separately. In Beryllum they are:
8 . odl-dlux-core
9 . odl-dlux-node
10 . odl-dlux-yangui
11 . odl-dlux-yangvisualizer
12
13 === Logging In
14
15 To log in to DLUX, after installing the application:
16
17 . Open a browser and enter the login URL http://<your-karaf-ip>:8181/index.html in your browser (Chrome is recommended).
18 . Login to the application with your username and password credentials.
19
20 NOTE: OpenDaylight's default credentials are _admin_ for both the username and password.
21
22 === Working with DLUX
23
24 After you login to DLUX, if you enable only odl-dlux-core feature, you will see only topology application available in the left pane.
25
26 NOTE: To make sure topology displays all the details, enable the odl-l2switch-switch feature in Karaf.
27
28 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.
29
30 .DLUX Modules
31 image::dlux-login.png["DLUX Page",width=500]
32
33 NOTE: If you install your application in dlux, they will also show up on the left hand navigation after browser page refresh.
34
35 === Viewing Network Statistics
36
37 The *Nodes* module on the left pane enables you to view the network statistics and port information for the switches in the network.
38
39 To use the *Nodes* module:
40
41 '''
42
43 . Select *Nodes* on the left pane.
44         The right pane displays atable that lists all the nodes, node connectors and the statistics.
45 . Enter a node ID in the *Search Nodes* tab to search by node connectors.
46 . 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.
47 . 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.
48 . Click *Node Connectors* to view Node Connector Statistics for the particular node ID.
49
50 '''
51
52 === Viewing Network Topology
53
54 The Topology tab displays a graphical representation of network topology created.
55
56 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.
57
58 To view network topology:
59
60 . Select *Topology* on the left pane. You will view the graphical representation on the right pane.
61         In the diagram blue boxes represent the switches, the black represents the hosts available, and lines represents how the switches and hosts are connected.
62 . Hover your mouse on hosts, links, or switches to view source and destination ports.
63 . Zoom in and zoom out using mouse scroll to verify topology for larger topologies.
64
65 .Topology Module
66 image::dlux-topology.png["DLUX Topology Page",width=500]
67
68 === Interacting with the YANG-based MD-SAL datastore
69
70 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_.
71
72 .Yang UI
73 image::dlux-yang-ui-screen.png["DLUX Yang UI Page",width=500]
74
75 To use Yang UI:
76
77 . Select *Yang UI* on the left pane. The right pane is divided in two parts.
78 . The top part displays a tree of APIs, subAPIs, and buttons to call possible functions (GET, POST, PUT, and DELETE).
79 +
80 NOTE: Not every subAPI can call every function. For example, subAPIs in the _operational_ store have GET functionality only.
81 +
82 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.
83 +
84 Buttons under the API tree are variable. It depends on subAPI specifications. Common buttons are:
85 +
86 * GET to get data from OpenDaylight,
87 * PUT and POST for sending data to OpenDaylight for saving
88 * DELETE for sending data to OpenDaylight for deleting.
89 +
90 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.
91 +
92 .Yang API Specification
93 image::dlux-yang-api-specification.png["DLUX Yang UI API Specification Page",width=500]
94 . The bottom part of the right pane displays inputs according to the chosen subAPI.
95 +
96 * 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.
97 * 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.
98 +
99 .Yang UI API Specification
100 image::dlux-yang-sub-api-screen.png["DLUX Yang UI Sub API Specification Page",width=500]
101 +
102 . After filling in the relevant inputs, click the *Show Preview* button under the API tree to display request that will be sent to OpenDaylight.
103   A pane is displayed on the right side with text of request when some input is filled.
104
105 ==== Displaying Topology on the *Yang UI*
106
107 To display topology:
108
109 . Select subAPI network-topology <topology revision number> == > operational == > network-topology.
110 . Get data from OpenDaylight by clicking on the "GET" button.
111 . Click *Display Topology*.
112
113 .DLUX Yang Topology
114 image::dlux-yang-topology.png["DLUX Yang Topology Page",width=500]
115
116 ==== Configuring List Elements on the *Yang UI*
117
118 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:
119
120 . To add a new list element with empty inputs use the plus icon-button **+** that is provided after list name.
121 . To remove several list elements, use the *X* button that is provided after every list element.
122 +
123 .DLUX List Elements
124 image::dlux-yang-list-elements.png[DLUX list elements,width=500]
125 +
126 . 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.
127 +
128 .DLUX List Warnings
129 image::dlux-yang-list-warning.png[DLUX list warnings,width=500]
130 +
131 . 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.
132 +
133 .DLUX List Button1
134 image::dlux-yang-list-button1.png[DLUX list button1,width=500]