Convert be-features-1.png to list-table
[docs.git] / docs / getting-started-guide / installing_opendaylight.rst
1 Installing OpenDaylight
2 =======================
3
4 You complete the following steps to install your networking environment, with
5 specific instructions provided in the subsections below.
6
7 Before detailing the instructions for these, we address the following:
8 Java Runtime Environment (JRE) and operating system information
9 Target environment
10 Known issues and limitations
11
12
13 Install OpenDaylight
14 --------------------
15
16 Install the Karaf features
17 --------------------------
18 To install a feature, use the following command, where feature1 is the feature
19 name listed in the table below::
20
21     feature:install <feature1>
22
23 You can install multiple features using the following command::
24
25
26     feature:install <feature1> <feature2> ... <featureN-name>
27
28 .. note:: For compatibility reasons, you cannot enable all Karaf features
29    simultaneously. The table below documents feature installation names and
30    known incompatibilities.Compatibility values indicate the following:
31
32 * *all* - the feature can be run with other features.
33 * *self+all* - the feature can be installed with other features with a value of
34   *all*, but may interact badly with other features that have a value of
35   *self+all*. Not every combination has been tested.
36
37 Uninstalling features
38 ^^^^^^^^^^^^^^^^^^^^^
39 To uninstall a feature, you must shut down OpenDaylight, delete the data
40 directory, and start OpenDaylight up again.
41
42 .. important:: Uninstalling a feature using the Karaf feature:uninstall command
43    is not supported and can cause unexpected and undesirable behavior.
44
45 Listing available features
46 ^^^^^^^^^^^^^^^^^^^^^^^^^^
47 To find the complete list of Karaf features, run the following command::
48
49     feature:list
50
51 To list the installed Karaf features, run the following command::
52
53     feature:list -i
54
55 Features to implement networking functionality provide release notes you can
56 access on the OpenDaylight Wiki: https://wiki.opendaylight.org/view/Project_list
57
58 * Authentication, Authorization and Accounting (AAA_)
59 * ALTO_
60 * BGPCEP_
61 * Controller_
62 * Control And Provisioning of Wireless Access Points (CAPWAP_)
63 * Identification and Driver Management (DIDM_)
64 * DLUX_
65 * FaaS_
66 * Group_Based_Policy_ (GPB)
67 * Internet of Things Data Management (IoTDM_)
68 * L2_Switch_
69 * Link Aggregation Control Protocol (LACP_)
70 * LISP_Flow_Mapping_
71 * MDSAL_
72 * NEMO_
73 * NETCONF_
74 * NetIDE_
75 * NeXt_
76 * Network Intent Composition (NIC_)
77 * Neutron_Northbound_
78 * OF-Config_
79 * OpFlex_
80 * OpenFlow_Plugin_
81 * OpenFlow_Protocol_Library_
82 * OVSDB_Netvirt_
83 * Packet_Cable_ / PCMM
84 * SDN_Interface_Application_
85 * Secure Network Bootstrapping Infrastructure (SNBI_)
86 * SNMP4SDN_
87 * SNMP_Plugin_
88 * Secure tag eXchange Protocol (SXP_)
89 * Service Function Chaining (SFC_)
90 * TCPMD5_
91 * Time Series Data Repository (TSDR_)
92 * Table Type Patterns (TTP_)
93 * Topology_Processing_Framework_
94 * Unified Secure Channel (USC_)
95 * VPN_Service_
96 * Virtual Tenant Network (VTN_)
97 * YANG_Tools_
98
99 Projects without Release Notes
100 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
101 The following projects participated in Beryllium, but intentionally do not have
102 release notes:
103
104 * The Documentation Project produced this and the other downloadable
105   documentation.
106 * The Integration Group hosted the OpenDaylight-wide tests and main release
107   distribution.
108 * Controller Core Functionality Tutorials provided a single test suite
109   (dsbenchmark) that was used as part of integration testing
110 * Release Engineering used autorelease to build the Beryllium release artifacts,
111   including the main release download.
112
113 Beryllium features
114 ------------------
115
116 .. list-table:: Beryllium features
117     :widths: 10 25 10 5
118     :header-rows: 1
119
120     * - Feature Name
121       - Feature Description
122       - Karaf feature name
123       - Compatibility
124
125     * - Authentication
126       - Enables authentication with support for federation using Apache Shiro
127       - odl-aaa-shiro
128       - all
129
130     * - BGP
131       - Provides support for Border Gateway Protocol (including Link-State
132         Distribution) as a source of L3 topology information
133       - odl-bgpcep-bgp
134       - all
135
136     * - BMP
137       - Provides support for BGP Monitoring Protocol as a monitoring station
138       - odl-bgpcep-bmp
139       - all
140
141     * - DIDM
142       - Device Identification and Driver Management
143       - odl-didm-all
144       - all
145
146     * - Centinel
147       - Provides interfaces for streaming analytics
148       - odl-centinel-all
149       - all
150
151     * - DLUX
152       - Provides an intuitive graphical user interface for OpenDaylight
153       - odl-dlux-all
154       - all
155     * - Fabric as a Service (Faas)
156       - Creates a common abstraction layer on top of a physical network so
157         northbound APIs or services can be more easiliy mapped onto the
158         physical network as a concrete device configuration
159       - odl-faas-all
160       - all
161
162     * - Group Based Policy
163       - Enables Endpoint Registry and Policy Repository REST APIs and associated
164         functionality for Group Based Policy with the default renderer for
165         OpenFlow renderers
166       - odl-groupbasedpolicy-ofoverlay
167       - all
168
169     * - GBP User Interface
170       - Enables a web-based user interface for Group Based Policy
171       - odl-groupbasedpolicyi-ui
172       - all
173
174     * - GBP FaaS renderer
175       - Enables the Fabric as a Service renderer for Group Based Policy
176       - odl-groupbasedpolicy-faas
177       - self+all
178
179     * - GBP Neutron Support
180       - Provides OpenStack Neutron support using Group Based Policy
181       - odl-groupbasedpolicy-neutronmapper
182       - all
183
184     * - L2 Switch
185       - Provides L2 (Ethernet) forwarding across connected OpenFlow switches and
186         support for host tracking
187       - odl-l2switch-switch-ui
188       - self+all
189
190     * - LACP
191       - Enables support for the Link Aggregation Control Protocol
192       - odl-lacp-ui
193       - self+all
194
195     * - LISP Flow Mapping
196       - Enables LISP control plane services including the mapping system
197         services REST API and LISP protocol SB plugin
198       - odl-lispflowmapping-msmr
199       - all
200
201 .. image:: images/be-features-2.png
202
203 .. image:: images/be-features-3.png
204
205 Other Beryllium features
206 ------------------------
207 .. image:: images/be-nonfeatures.png
208
209 Experimental Beryllium Features
210 -------------------------------
211 The following functionality is labeled as experimental in OpenDaylight
212 Beryllium and should be used accordingly. In general, it is not supposed to be
213 used in production unless its limitations are well understood by those
214 deploying it.
215
216 .. image:: images/be-exp-features-1.png
217
218 .. image:: images/be-exp-features-2.png
219
220 Install support for REST APIs
221 -----------------------------
222 Most components that offer REST APIs will automatically load the RESTCONF API
223 Support component, but if for whatever reason they seem to be missing, install
224 the “odl-restconf” feature to activate this support.
225
226
227 Install the DLUX interface
228 --------------------------
229 OpenDaylight’s DLUX web interface draws information from topology and host
230 databases to display information about the topology of the network, flow
231 statistics, and host locations.
232
233 To integrate with OpenDaylight you must enable the DLUX Karaf feature. Each
234 feature can be enabled or disabled separately. Ensure that you have created a
235 topology and enabled the MD-SAL feature in the Karaf distribution before you
236 use DLUX for network management. For more information about enabling the Karaf
237 features for DLUX, refer to Enable_DLUX_Feature_.
238
239 MD-SAL clustering
240 -----------------
241 In the Beryllium release and newer, the odl-mdsal-broker installs MD-SAL
242 clustering automatically.
243
244 .. _Enable_DLUX_Feature: https://wiki.opendaylight.org/view/DLUX:Beryllium_System_Test_Plan#Enabling_The_Feature
245
246
247 .. _AAA: https://wiki.opendaylight.org/view/AAA:Beryllium_Release_Notes
248 .. _ALTO: https://wiki.opendaylight.org/view/ALTO:Beryllium:Release_Notes
249 .. _BGPCEP: https://wiki.opendaylight.org/view/BGP_LS_PCEP:Beryllium_Release_Notes
250 .. _CAPWAP: https://wiki.opendaylight.org/view/CAPWAP:Beryllium:Release_Notes
251 .. _Controller: https://wiki.opendaylight.org/view/OpenDaylight_Controller:Beryllium:Release_Notes
252 .. _DIDM: https://wiki.opendaylight.org/view/DIDM:_Beryllium_Release_Notes
253 .. _DLUX: https://wiki.opendaylight.org/view/OpenDaylight_DLUX:Beryllium:Release_Notes
254 .. _FaaS: https://wiki.opendaylight.org/view/FaaS:Beryllium_Release_Notes
255 .. _Group_Based_Policy: https://wiki.opendaylight.org/view/Group_Based_Policy_(GBP)/Releases/Beryllium:Beryllium_Release_Notes
256 .. _IoTDM: https://wiki.opendaylight.org/view/Iotdm:Beryllium_Release_Notes
257 .. _L2_Switch: https://wiki.opendaylight.org/view/L2_Switch:Beryllium:Release_Notes
258 .. _LACP: https://wiki.opendaylight.org/view/LACP:Beryllium:Release_Notes
259 .. _LISP_Flow_Mapping: https://wiki.opendaylight.org/view/OpenDaylight_Lisp_Flow_Mapping:Beryllium_Release_Notes
260 .. _MDSAL: https://wiki.opendaylight.org/view/MD-SAL:Beryllium:Release_Notes
261 .. _NEMO: https://wiki.opendaylight.org/view/NEMO:Beryllium:Release_Notes
262 .. _NETCONF: https://wiki.opendaylight.org/view/OpenDaylight_NETCONF:Beryllium_Release_Notes
263 .. _NetIDE: https://wiki.opendaylight.org/view/NetIDE:Release_Notes
264 .. _NeXt: https://wiki.opendaylight.org/view/NeXt:Beryllium_Release_Notes
265 .. _NIC: https://wiki.opendaylight.org/view/Network_Intent_Composition:Release_Notes
266 .. _Neutron_Northbound: https://wiki.opendaylight.org/view/NeutronNorthbound:Beryllium:Release_Notes
267 .. _OF-Config: https://wiki.opendaylight.org/view/OF-CONFIG:Beryllium:Release_Notes
268 .. _OpFlex: https://wiki.opendaylight.org/view/OpFlex:Beryllium_Release_Notes
269 .. _OpenFlow_Plugin: https://wiki.opendaylight.org/view/OpenDaylight_OpenFlow_Plugin:Beryllium_Release_Notes
270 .. _OpenFlow_Protocol_Library: https://wiki.opendaylight.org/view/Openflow_Protocol_Library:Release_Notes:Beryllium_Release_Notes
271 .. _OVSDB_Netvirt: https://wiki.opendaylight.org/view/OpenDaylight_OVSDB:Beryllium_Release_Notes
272 .. _Packet_Cable: https://wiki.opendaylight.org/view/PacketCablePCMM:BerylliumReleaseNotes
273 .. _SDN_Interface_Application: https://wiki.opendaylight.org/view/ODL-SDNi:Beryllium_Release_Notes
274 .. _SNBI: https://wiki.opendaylight.org/view/SNBI_Berrylium_Release_Notes
275 .. _SNMP4SDN: https://wiki.opendaylight.org/view/SNMP4SDN:Beryllium_Release_Note
276 .. _SNMP_Plugin: https://wiki.opendaylight.org/view/SNMP_Plugin:SNMP_Plugin:Beryllium_Release_Notes
277 .. _SXP: https://wiki.opendaylight.org/view/SXP:Beryllium:Release_Notes
278 .. _SFC: https://wiki.opendaylight.org/view/Service_Function_Chaining:Beryllium_Release_Notes
279 .. _TCPMD5: https://wiki.opendaylight.org/view/TCPMD5:Beryllium_Release_Notes
280 .. _TSDR: https://wiki.opendaylight.org/view/TSDR:Beryllium:Release_Notes
281 .. _TTP: https://wiki.opendaylight.org/view/Table_Type_Patterns/Beryllium/Release_Notes
282 .. _Topology_Processing_Framework: https://wiki.opendaylight.org/view/Topology_Processing_Framework:BERYLLIUM_Release_Notes
283 .. _USC: https://wiki.opendaylight.org/view/USC:Beryllium:Release_Notes
284 .. _VPN_Service: https://wiki.opendaylight.org/view/Vpnservice:Beryllium_Release_Notes
285 .. _VTN: https://wiki.opendaylight.org/view/VTN:Beryllium:Release_Notes
286 .. _YANG_Tools: https://wiki.opendaylight.org/view/YANG_Tools:Beryllium:Release_Notes