.. _install_odl:
+***********************
Installing OpenDaylight
-=======================
+***********************
You complete the following steps to install your networking environment, with
specific instructions provided in the subsections below.
Install OpenDaylight
---------------------
+====================
+
+Downloading and installing OpenDaylight
+---------------------------------------
+
+The default distribution can be found on the OpenDaylight software
+download page: http://www.opendaylight.org/software/downloads
+
+The Karaf distribution has no features enabled by default. However, all
+of the features are available to be installed.
+
+.. note:: For compatibility reasons, you cannot enable all the features
+ simultaneously. We try to document known incompatibilities in
+ the `Install the Karaf features`_ section below.
+
+Running the karaf distribution
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+To run the Karaf distribution:
+
+#. Unzip the zip file.
+#. Navigate to the directory.
+#. run ``./bin/karaf``.
+
+For Example::
+
+ $ ls distribution-karaf-0.4.0-Beryllium.zip
+ distribution-karaf-0.4.0-Beryllium.zip
+ $ unzip distribution-karaf-0.4.0-Beryllium.zip
+ Archive: distribution-karaf-0.4.0-Beryllium.zip
+ creating: distribution-karaf-0.4.0-Beryllium/
+ creating: distribution-karaf-0.4.0-Beryllium/configuration/
+ creating: distribution-karaf-0.4.0-Beryllium/data/
+ creating: distribution-karaf-0.4.0-Beryllium/data/tmp/
+ creating: distribution-karaf-0.4.0-Beryllium/deploy/
+ creating: distribution-karaf-0.4.0-Beryllium/etc/
+ creating: distribution-karaf-0.4.0-Beryllium/externalapps/
+ ...
+ inflating: distribution-karaf-0.4.0-Beryllium/bin/start.bat
+ inflating: distribution-karaf-0.4.0-Beryllium/bin/status.bat
+ inflating: distribution-karaf-0.4.0-Beryllium/bin/stop.bat
+ $ cd distribution-karaf-0.4.0-Beryllium
+ $ ./bin/karaf
+
+ ________ ________ .__ .__ .__ __
+ \_____ \ ______ ____ ____ \______ \ _____ ___.__.\| \| \|__\| ____ \| \|___/ \|_
+ / \| \\____ \_/ __ \ / \ \| \| \\__ \< \| \|\| \| \| \|/ ___\\| \| \ __\
+ / \| \ \|_> > ___/\| \| \\| ` \/ __ \\___ \|\| \|_\| / /_/ > Y \ \|
+ \_______ / __/ \___ >___\| /_______ (____ / ____\|\|____/__\___ /\|___\| /__\|
+ \/\|__\| \/ \/ \/ \/\/ /_____/ \/
+
+
+
+* Press ``tab`` for a list of available commands
+* Typing ``[cmd] --help`` will show help for a specific command.
+* Press ``ctrl-d`` or type ``system:shutdown`` or ``logout`` to shutdown OpenDaylight.
Install the Karaf features
---------------------------
+==========================
To install a feature, use the following command, where feature1 is the feature
name listed in the table below::
simultaneously. The table below documents feature installation names and
known incompatibilities.Compatibility values indicate the following:
-* *all* - the feature can be run with other features.
-* *self+all* - the feature can be installed with other features with a value of
- *all*, but may interact badly with other features that have a value of
- *self+all*. Not every combination has been tested.
+* **all** - the feature can be run with other features.
+* **self+all** - the feature can be installed with other features with a value of
+ **all**, but may interact badly with other features that have a value of
+ **self+all**. Not every combination has been tested.
Uninstalling features
-^^^^^^^^^^^^^^^^^^^^^
+---------------------
To uninstall a feature, you must shut down OpenDaylight, delete the data
directory, and start OpenDaylight up again.
is not supported and can cause unexpected and undesirable behavior.
Listing available features
-^^^^^^^^^^^^^^^^^^^^^^^^^^
+--------------------------
To find the complete list of Karaf features, run the following command::
feature:list
Features to implement networking functionality provide release notes, which
you can find in the :ref:`proj_rel_notes` section.
+Karaf running on Windows 10
+---------------------------
+
+Windows 10 cannot be identify by Karaf (equinox).
+Issue occurs during installation of karaf features e.g.::
+
+ opendaylight-user@root>feature:install odl-restconf
+ Error executing command: Can't install feature odl-restconf/0.0.0:
+ Could not start bundle mvn:org.fusesource.leveldbjni/leveldbjni-all/1.8-odl in feature(s) odl-akka-leveldb-0.7: The bundle "org.fusesource.leveldbjni.leveldbjni-all_1.8.0 [300]" could not be resolved. Reason: No match found for native code: META-INF/native/windows32/leveldbjni.dll; processor=x86; osname=Win32, META-INF/native/windows64/leveldbjni.dll; processor=x86-64; osname=Win32, META-INF/native/osx/libleveldbjni.jnilib; processor=x86; osname=macosx, META-INF/native/osx/libleveldbjni.jnilib; processor=x86-64; osname=macosx, META-INF/native/linux32/libleveldbjni.so; processor=x86; osname=Linux, META-INF/native/linux64/libleveldbjni.so; processor=x86-64; osname=Linux, META-INF/native/sunos64/amd64/libleveldbjni.so; processor=x86-64; osname=SunOS, META-INF/native/sunos64/sparcv9/libleveldbjni.so; processor=sparcv9; osname=SunOS
+
+Workaround is to add
+
+ org.osgi.framework.os.name = Win32
+
+to the karaf file
+
+ etc/system.properties
+
+The workaround and further info are in this thread:
+http://stackoverflow.com/questions/35679852/karaf-exception-is-thrown-while-installing-org-fusesource-leveldbjni
+
+
Beryllium features
-------------------
+==================
.. list-table:: Beryllium features
:widths: 10 25 10 5
Other Beryllium features
-------------------------
+========================
.. list-table:: Other Beryllium features
:widths: 10 25 10 5
Experimental Beryllium Features
--------------------------------
+===============================
The following functionality is labeled as experimental in OpenDaylight
Beryllium and should be used accordingly. In general, it is not supposed to be
used in production unless its limitations are well understood by those
- all
Install support for REST APIs
------------------------------
+=============================
Most components that offer REST APIs will automatically load the RESTCONF API
Support component, but if for whatever reason they seem to be missing, install
the “odl-restconf” feature to activate this support.
-
-
-Install the DLUX interface
---------------------------
-OpenDaylight’s DLUX web interface draws information from topology and host
-databases to display information about the topology of the network, flow
-statistics, and host locations.
-
-To integrate with OpenDaylight you must enable the DLUX Karaf feature. Each
-feature can be enabled or disabled separately. Ensure that you have created a
-topology and enabled the MD-SAL feature in the Karaf distribution before you
-use DLUX for network management. For more information about enabling the Karaf
-features for DLUX, refer to Enable_DLUX_Feature_.
-
-MD-SAL clustering
------------------
-In the Beryllium release and newer, the odl-mdsal-broker installs MD-SAL
-clustering automatically.
-
-.. _Enable_DLUX_Feature: https://wiki.opendaylight.org/view/DLUX:Beryllium_System_Test_Plan#Enabling_The_Feature