Skip to content

Commit 6ef24d3

Browse files
nilokGerrit Code Review
authored andcommitted
Merge "general installation chapter for the GSG"
2 parents 39c5c55 + 3e7af1d commit 6ef24d3

File tree

2 files changed

+179
-83
lines changed

2 files changed

+179
-83
lines changed
Lines changed: 178 additions & 82 deletions
Original file line numberDiff line numberDiff line change
@@ -1,145 +1,241 @@
11
== Getting and Installing OpenDaylight Helium
22

3-
=== Downloading the Karaf Distribution
3+
// Commenting out this section until we can actually provide some content.
4+
//
5+
// === System requirements and prerequisites
6+
// * *Hardware Requirements*: <To be added>
7+
//
8+
// * *Software Requirements*:
9+
// If you are using Oracle, JDK version 1.7.0_45 or later is required.
10+
//
11+
// ==== For Execution
12+
// The OpenDaylight controller source files are portable and require a Java 7-compliant JVM to run.
13+
//
14+
// ==== For Development
15+
// TBD
416

5-
// ==== Getting the Default Distribution
17+
=== Downloading and installing OpenDaylight Lithium
18+
The default distribution can be found on the OpenDaylight software download page:
19+
http://www.opendaylight.org/software/downloads
620

7-
The default distribution can be found on the OpenDaylight Software Download page here: http://www.opendaylight.org/software/downloads
21+
The Karaf distribution has no features enabled by default. However, you can install all the features.
822

9-
This distribution comes with no features enabled by default, but all
10-
features are able to be installed and run.
23+
NOTE: You cannot enable all the features at the same time.
1124

12-
CAUTION: Not all features can be run at the same time without negative
13-
consequences.
1425

15-
// ==== Using the Custom Distribution Download Tool
26+
==== Running the karaf distribution
27+
To run the Karaf distribution:
1628

17-
// Fill in info once this exists.
29+
. Unzip the zip file.
30+
. Navigate to the directory.
31+
. run `./bin/karaf`.
1832

19-
=== Running the Karaf distribution
20-
21-
. Unzip the zip file
22-
. cd into the directory
23-
. run ./bin/karaf
24-
25-
For example:
33+
For Example:
2634

2735
[frame="none"]
2836
|===
2937
a|
3038
----
31-
$ ls distribution-karaf-0.2.0-Helium.zip
32-
distribution-karaf-0.2.0-Helium.zip
33-
$ unzip distribution-karaf-0.2.0-Helium.zip
34-
Archive: distribution-karaf-0.2.0-Helium.zip
35-
creating: distribution-karaf-0.2.0-Helium/
36-
creating: distribution-karaf-0.2.0-Helium/configuration/
37-
creating: distribution-karaf-0.2.0-Helium/data/
38-
creating: distribution-karaf-0.2.0-Helium/data/tmp/
39-
creating: distribution-karaf-0.2.0-Helium/deploy/
40-
creating: distribution-karaf-0.2.0-Helium/etc/
41-
creating: distribution-karaf-0.2.0-Helium/externalapps/
39+
$ ls distribution-karaf-0.3.0-Lithium.zip
40+
distribution-karaf-0.3.0-Lithium.zip
41+
$ unzip distribution-karaf-0.3.0-Lithium.zip
42+
Archive: distribution-karaf-0.3.0-Lithium.zip
43+
creating: distribution-karaf-0.3.0-Lithium/
44+
creating: distribution-karaf-0.3.0-Lithium/configuration/
45+
creating: distribution-karaf-0.3.0-Lithium/data/
46+
creating: distribution-karaf-0.3.0-Lithium/data/tmp/
47+
creating: distribution-karaf-0.3.0-Lithium/deploy/
48+
creating: distribution-karaf-0.3.0-Lithium/etc/
49+
creating: distribution-karaf-0.3.0-Lithium/externalapps/
4250
...
43-
inflating: distribution-karaf-0.2.0-Helium/bin/start.bat
44-
inflating: distribution-karaf-0.2.0-Helium/bin/status.bat
45-
inflating: distribution-karaf-0.2.0-Helium/bin/stop.bat
46-
$ cd distribution-karaf-0.2.0-Helium
47-
$ ./bin/karaf
48-
49-
________ ________ .__ .__ .__ __
50-
\_____ \ ______ ____ ____ \______ \ _____ ___.__.\| \| \|__\| ____ \| \|___/ \|_
51-
/ \| \\____ \_/ __ \ / \ \| \| \\__ \< \| \|\| \| \| \|/ ___\\| \| \ __\
52-
/ \| \ \|_> > ___/\| \| \\| ` \/ __ \\___ \|\| \|_\| / /_/ > Y \ \|
53-
\_______ / __/ \___ >___\| /_______ (____ / ____\|\|____/__\___ /\|___\| /__\|
54-
\/\|__\| \/ \/ \/ \/\/ /_____/ \/
51+
inflating: distribution-karaf-0.3.0-Lithium/bin/start.bat
52+
inflating: distribution-karaf-0.3.0-Lithium/bin/status.bat
53+
inflating: distribution-karaf-0.3.0-Lithium/bin/stop.bat
54+
$ cd distribution-karaf-0.3.0-Lithium
55+
$ ./bin/karaf
5556
57+
________ ________ .__ .__ .__ __
58+
\_____ \ ______ ____ ____ \______ \ _____ ___.__.\| \| \|__\| ____ \| \|___/ \|_
59+
/ \| \\____ \_/ __ \ / \ \| \| \\__ \< \| \|\| \| \| \|/ ___\\| \| \ __\
60+
/ \| \ \|_> > ___/\| \| \\| ` \/ __ \\___ \|\| \|_\| / /_/ > Y \ \|
61+
\_______ / __/ \___ >___\| /_______ (____ / ____\|\|____/__\___ /\|___\| /__\|
62+
\/\|__\| \/ \/ \/ \/\/ /_____/ \/
5663
57-
Hit '<tab>' for a list of available commands
58-
and '[cmd] --help' for help on a specific command.
59-
Hit '<ctrl-d>' or type 'system:shutdown' or 'logout' to shutdown OpenDaylight.
6064
61-
opendaylight-user@root>
6265
----
66+
Press *tab* for a list of available commands and *[cmd] --help* for help on a specific command.
67+
Press *ctrl-d* or type *system:shutdown* or *logout* to shutdown OpenDaylight.
6368
|===
69+
=== Installing the components
6470

65-
=== Installing Components
71+
The section describes a list of components in OpenDaylight Lithium and the relevant Karaf feature to install in order to enable that component.
6672

67-
The following table describes a list of components in OpenDaylight Helium and the relevant Karaf feature to install in order to enable that component. To install a feature use the +feature:install+ Karaf command, for example:
73+
To install a feature use the following command:
74+
-----
75+
feature:install
76+
-----
77+
For Example:
6878

6979
-----
7080
feature:install <feature-name>
7181
-----
7282

73-
Multiple features can be installed in the same command:
83+
Multiple features can be installed using the following command:
7484

7585
-----
7686
feature:install <feature1-name> <feature2-name> ... <featureN-name>
7787
-----
7888

79-
.Helium Components
89+
.Lithium Components
8090
[options="header",cols="18%,50%,18%,14%"]
81-
|=======================
82-
| Component Name | Component Description | Karaf feature name | Compatibility
83-
| BGPCEP | Enables support for BGP LS PCEP | odl-bgpcep-all | all
91+
|====
92+
| Component Name | Component Description | Karaf feature name | Compatibility
93+
| BGPCEP | Enables support for BGP LS PCEP | odl-bgpcep-all | all
8494
| Defense4All | Enable DDoS detection and protection | n/a | all
85-
| Group Based Policy | Enable Endpoint Registry and Policy Repository REST APIs and associated functionality for the Group Based Policy Proof of Concept demonstration | odl-groupbasedpolicy-ofoverlay | self+all
95+
| Group Based Policy | Enable Endpoint Registry and Policy Repository REST APIs and associated functionality for the Group Based Policy Proof of Concept demonstration | odl-groupbasedpolicy-ofoverlay | self+all
8696
| L2 Switch | Provides L2 (Ethernet) forwarding across connected OppenFlow switches and support for host tracking | odl-l2switch-switch-ui | self+all
8797
| LISP Flow Mapping | Enable LISP control plane services including the mapping system services REST API and LISP protocol SB plugin | odl-lispflowmapping-all | all
8898
| MD-SAL Clustering | Provides support for operating a cluster of OpenDaylight instances | odl-mdsal-clustering | special
89-
| Netconf over SSH | Provide support to manage Netconf-enabled devices over SSH | odl-netconf-connector-ssh | all
99+
| Netconf over SSH | Provides support to manage Netconf-enabled devices over SSH | odl-netconf-connector-ssh | all
90100
| OpenFlow Flow Programming | Enables discovery and control of OpenFlow switches and the topology between them | odl-openflowplugin-flow-services-ui | all
91101
| OpenFlow Table Type Patterns | Allows OpenFlow Table Type Patterns to be manually associated with network elements | odl-ttp-all |all
92-
| OVS Management | Enable OVS management using OVSDB plugin and its associated OVSDB northbound APIs | odl-ovsdb-all | all
102+
| OVS Management | Enables OVS management using OVSDB plugin and its associated OVSDB northbound APIs | odl-ovsdb-all | all
93103
| OVSDB OpenStack Neutron | OpenStack Network Virtualization using OpenDaylight's OVSDB support | odl-ovsdb-openstack | all
94-
| Packetcable PCMM | Enable flow-based dynamic QoS management of CMTS using in the DOCSIS infrastructure | odl-packetcable-all | all
104+
| Packetcable PCMM | Enables flow-based dynamic QoS management of CMTS using in the DOCSIS infrastructure | odl-packetcable-all | all
95105
| Plugin to OpenContrail | Provides OpenStack Neutron support via OpenContrail | odl-plugin2oc | self+all
96106
| RESTCONF API Support | Enables REST API access to the MD-SAL including the data store | odl-restconf | all
97107
| SDN Interface | Provides support for interaction and sharing of state between (non-clustered) OpenDaylight instances | odl-sdninterfaceapp-all | all
98-
| Secure Networking Bootstrap | Define a SNBI domain and associated white lists of devices to be accommodated to the domain | odl-snbi-all | all
108+
| Secure Networking Bootstrap | Defines a SNBI domain and associated white lists of devices to be accommodated to the domain | odl-snbi-all | all
99109
| Service Flow Chaining (SFC) | Enables support for applying chains of network services to certain traffic | odl-sfc-all | all
100110
| SFC over LISP | Supports implementing SFC using LISP | odl-sfclisp | all
101111
| SFC over L2 | Supports implementing SFC using Layer 2 forwarding | odl-sfcofl2 | all
102112
| SFC over VXLAN | Supports implementing SFC using VXLAN via OVSDB | odl-ovsdb-ovssfc | self+all
103113
| SNMP4SDN | Enables monitoring and control of network elements via SNMP | odl-snmp4sdn-all | all
104114
| VTN Manager | Enables Virtual Tenant Network support including support for OpenStack Neutron | odl-vtn-manager-all | self+all
105-
|=======================
106-
107-
In the table a compatibility value of "all" means that it can be run with any other features. A value of "self+all" indicates that the feature can be installed with anything with a value of "all", but not any other features with a value of "self+all".
108-
109-
==== Installing the DLUX Web Interface
110-
111-
The OpenDaylight Web Interface, DLUX, draws information from the OpenFlow Flow Programming and L2 Switch components to display information about the topology of the network, flow statistics, host locations and the like. It will automatically be installed when you install either of these components.
112-
113-
==== Installing support for REST APIs
114-
115-
Most components that offer REST APIs will automatically load the RESTCONF API Support component, but if for whatever reason they seem to be missing, you can activate this support by installing the +odl-restconf+ feature.
115+
|====
116116

117-
==== Installing MD-SAL Clustering
117+
In the table a compatibility value of *all* means that it can be run with other features. A value of *self+all* indicates that the feature can be installed with other features with a value of *all*, but not other features with a value of *self+all*.
118118

119-
The MD-SAL clustering feature is noted to have "special" compatibility. It *must* be installed first, before any other features. That is, the first command run at the Karaf CLI should be:
120-
121-
----
122-
feature:install odl-mdsal-clustering
123-
----
124-
125-
==== Listing Available and Installed Karaf Features
126-
127-
Note, that this is not an exhaustive list of Karaf features, however you can find a full list by running the following command at the Karaf CLI:
119+
==== Listing available features
120+
To find the complete list of Karaf features, run the following command:
128121

129122
----
130123
feature:list
131124
----
132125

133-
To just list the installed Karaf features, run the command:
126+
To list the installed Karaf features, run the following command:
134127

135128
----
136129
feature:list -i
137130
----
138131

139-
=== Project-Specific Installation Instructions
140-
141-
The Defense4All and Yang Tools projects provide project-specific installation instructions here. Other projects can either be installed by simply installing the appropriate Karaf feature(s) or, in some cases, further instructions can be found in the User Guide or Developer Guide.
132+
// Commenting out this section until we can actually provide some content.
133+
//
134+
// === Verifying your installation
135+
// TBD
136+
137+
=== Installing support for REST APIs
138+
Most components that offer REST APIs will automatically load the RESTCONF API Support
139+
component, but if for whatever reason they seem to be missing, you can activate this
140+
support by installing the `odl-restconf` feature.
141+
142+
// Commenting out this section until we can actually provide a tutorial that a
143+
// user could follow
144+
//
145+
// === Making RESTCONF calls
146+
// RESTCONF is a protocol that provides a programmatic interface over HTTP to access data that is defin
147+
// ed in a YANG model and stored in data stores defined in the NETCONF protocol.
148+
// RESTCONF protocol is implemented in `sal-rest-connector` artifact that is packed with the Karaf bundle.
149+
// For more information on the RESTCONF protocol, refer to http://tools.ietf.org/html/draft-bierman-net
150+
// conf-restconf-02
151+
//
152+
// RESTCONF allows access to datastores in the controller.
153+
// The datastores available are:
154+
//
155+
// * config - contains data inserted using controller
156+
// * operational - contains other data
157+
//
158+
// ==== Making a RESCONF call using cURL
159+
//
160+
// TBD
161+
162+
=== Installing the DLUX web interface
163+
164+
The OpenDaylight web interface; DLUX, draws information from topology and host databases to display information about the topology of the network,
165+
flow statistics, host locations. You can either use DLUX as a stand-alone plug-in or integrate with the Opendaylight controller.
166+
To install DLUX as a standalone application, refer to https://wiki.opendaylight.org/view/OpenDaylight_DLUX:Setup_and_Run
167+
To integrate with Opendaylight Controller you must enable DLUX Karaf feature. You can enable AD-SAL, MD-SAL and various other bundles within Karaf depending on the features you
168+
would like to access using DLUX. Each feature can be enabled or disabled separately.
169+
[Important]
170+
Ensure that you have created a topology and enabled MD-SAL feature in the Karaf distribution before you use DLUX for network management.
171+
For more information about enabling the Karaf features for DLUX, refer to https://wiki.opendaylight.org/view/OpenDaylight_DLUX:DLUX_Karaf_Feature
172+
173+
=== Installing MD-SAL clustering
174+
The MD-SAL clustering feature has "special" compatibility criteria. You *must*
175+
install clustering, before other features are installed. To install clustering,
176+
run the following command on the Karaf CLI console:
142177

143-
=== Further Information
178+
----
179+
feature:install odl-mdsal-clustering
180+
----
144181

145-
Further information can be found in the User Guide and Developer Guide, which should be available in the same location as this guide.
182+
// Commenting out this section until we can actually provide a tutorial that
183+
// walks through getting everything set up. Maybe we should just point to the
184+
// L2 Switch docs?
185+
//
186+
// === Getting started with OpenFlow and Mininet
187+
//
188+
// ==== Downloading and installing Mininet
189+
//
190+
// Mininet downloads are available at: http://mininet.org
191+
//
192+
// The OVS version must be 2.1 or earlier.
193+
//
194+
// The instructions for installation are available at: http://mininet.org.
195+
//
196+
// ===== Verifying mininet installation
197+
// To verify your mininet installation run the following command:
198+
// `test=pingall`
199+
//
200+
// ----
201+
// odluser@odl-vm:~\$ sudo mn --test=pingall
202+
// *** Creating network
203+
// *** Adding controller
204+
// *** Adding hosts:
205+
// h1 h2
206+
// *** Adding switches:
207+
// s1
208+
// *** Adding links:
209+
// (h1, s1) (h2, s1)
210+
// *** Configuring hosts
211+
// h1 h2
212+
// *** Starting controller
213+
// *** Starting 1 switches
214+
// s1 OVSswitch opts:
215+
// *** Ping: testing ping reachability
216+
// h1 -> h2
217+
// h2 -> h1
218+
// *** Results: 0% dropped (2/2 received)
219+
// *** Stopping 1 switches
220+
// s1 ..
221+
// *** Stopping 2 hosts
222+
// h1 h2
223+
// *** Stopping 1 controllers
224+
// c0
225+
// *** Done
226+
// completed in 0.541 seconds
227+
// ----
228+
//
229+
// ==== Enabling the OpenFlow plugin and L2 Switch
230+
//
231+
// To enable these features, run:
232+
//
233+
// ----
234+
// feature:install odl-l2switch-switch-ui
235+
// ----
236+
//
237+
// This will install the OpenFlow plugin and the L2 Switch application.
238+
//
239+
// ==== Running Mininet using OpenDaylight as the controller
240+
//
241+
// TODO

manuals/getting-started-guide/src/main/asciidoc/release-notes.adoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
=== Key Features
44

5-
A list of the key functionality provided in OpenDaylight Helium can be found in the table in the <<_installing_components,section below>>.
5+
A list of the key functionality provided in OpenDaylight Helium can be found in the table in the <<_installing_the_components,section below>>.
66

77
////
88
The following table describes the key features provided by OpenDaylight Helium.

0 commit comments

Comments
 (0)