OpenDaylight系列教程(十一)-- Installing OpenDaylight

Installing OpenDaylight

You complete the following steps to install your networking environment, with specific instructions provided in the subsections below.

Before detailing the instructions for these, we address the following: Java Runtime Environment (JRE) and operating system information Target environment Known issues and limitations

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:

  1. Unzip the zip file.
  2. Navigate to the directory.
  3. 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:

feature:install <feature1>

You can install multiple features using the following command:

feature:install <feature1> <feature2> ... <featureN-name>

Note

For compatibility reasons, you cannot enable all Karaf features 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.

Uninstalling features

To uninstall a feature, you must shut down OpenDaylight, delete the data directory, and start OpenDaylight up again.

Important

Uninstalling a feature using the Karaf feature:uninstall command 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

To list the installed Karaf features, run the following command:

feature:list -i

Features to implement networking functionality provide release notes, which you can find in the Project-specific Release 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

Beryllium features

Feature NameFeature DescriptionKaraf feature nameCompatibility
AuthenticationEnables authentication with support for federation using Apache Shiroodl-aaa-shiroall
BGPProvides support for Border Gateway Protocol (including Link-State Distribution) as a source of L3 topology informationodl-bgpcep-bgpall
BMPProvides support for BGP Monitoring Protocol as a monitoring stationodl-bgpcep-bmpall
DIDMDevice Identification and Driver Managementodl-didm-allall
CentinelProvides interfaces for streaming analyticsodl-centinel-allall
DLUXProvides an intuitive graphical user interface for OpenDaylightodl-dlux-allall
Fabric as a Service (Faas)Creates a common abstraction layer on top of a physical network so northbound APIs or services can be more easiliy mapped onto the physical network as a concrete device configurationodl-faas-allall
Group Based PolicyEnables Endpoint Registry and Policy Repository REST APIs and associated functionality for Group Based Policy with the default renderer for OpenFlow renderersodl-groupbasedpolicy-ofoverlayall
GBP User InterfaceEnables a web-based user interface for Group Based Policyodl-groupbasedpolicyi-uiall
GBP FaaS rendererEnables the Fabric as a Service renderer for Group Based Policyodl-groupbasedpolicy-faasself+all
GBP Neutron SupportProvides OpenStack Neutron support using Group Based Policyodl-groupbasedpolicy-neutronmapperall
L2 SwitchProvides L2 (Ethernet) forwarding across connected OpenFlow switches and support for host trackingodl-l2switch-switch-uiself+all
LACPEnables support for the Link Aggregation Control Protocolodl-lacp-uiself+all
LISP Flow MappingEnables LISP control plane services including the mapping system services REST API and LISP protocol SB pluginodl-lispflowmapping-msmrall
NEMO CLIProvides intent mappings and implementation with CLI for legacy devicesodl-nemo-cli-rendererall
NEMO OpenFlowProvides intent mapping and implementation for OpenFlow devicesodl-nemo-openflow-rendererself+all
NetIDEEnables portabilty and cooperation inside a single network by using a client/server multi-controller architectureodl-netide-restall
NETCONF over SSHProvides support to manage NETCONF-enabled devices over SSHodl-netconf-connector-sshall
OF-CONFIGEnables remote configuration of OpenFlow datapathsodl-of-config-restall
OVSDB OpenStack NeutronOpenStack Network Virtualization using OpenDaylight’s OVSDB supportodl-ovsdb-openstackall
OVSDB SouthboundOVSDB MDSAL southbound plugin for Open_vSwitch schemaodl-ovsdb-southbound-impl-uiall
OVSDB HWVTEP SouthboundOVSDB MDSAL hwvtep southbound plugin for the hw_vtep schemaodl-ovsdb-hwvtepsouthbound-uiall
OVSDB NetVirt SFCOVSDB NetVirt support for SFCodl-ovsdb-sfc-uiall
OpenFlow Flow ProgrammingEnables discovery and control of OpenFlow switches and the topoology between themodl-openflowplugin-flow-services-uiall
OpenFlow Table Type PatternsAllows OpenFlow Table Type Patterns to be manually associated with network elementsodl-ttp-allall
Packetcable PCMMEnables flow-based dynamic QoS management of CMTS use in the DOCSIS infrastructure and a policy serverodl-packetcable-policy-serverself+all
PCEPEnables support for PCEPodl-bgpcep-pcepall
RESTCONF API SupportEnables REST API access to the MD-SAL including the data storeodl-restconfall
SDNinterfaceProvides support for interaction and sharing of state between (non-clustered) OpenDaylight instancesodl-sdninterfaceapp-allall
SFC over L2Supports implementing Service Function Chaining using Layer 2 forwardingodl-sfcofl2self+all
SFC over LISPSupports implementing Service Function Chaining using LISPodl-sfclispall
SFC over RESTSupports implementing Service Function Chaining using REST CRUD operations on network elementsodl-sfc-sb-restall
SFC over VXLANSupports implementing Service Function Chaining using VXLAN tunnelsodl-sfc-ovsself+all
SNMP PluginEnables monitoring and control of network elements via SNMPodl-snmp-pluginall
SNMP4SDNEnables OpenFlow-like control of network elements via SNMPodl-snmp4sdn-allall
SSSD Federated AuthenticationEnables support for federated authentication using SSSDodl-aaa-sssd-pluginall
Secure tag eXchange Protocol (SXP)Enables distribution of shared tags to network devicesodl-sxp-controllerall
Time Series Data Repository (TSDR)Enables support for storing and querying time series data with the default data collector for OpenFlow statistics the default data store for HSQLDBodl-tsdr-hsqldb-allall
TSDR Data CollectorsEnables support for various TSDR data sources (collectors) including OpenFlow statistics, NetFlow statistics, NetFlow statistics, SNMP data, Syslog, and OpenDaylight (controller) metricsodl-tsdr-openflow-statistics-collector, odl-tsdr-netflow-statistics-collector, odl-tsdr-snmp-data-collector, odl-tsdr-syslog-collector, odl-tsdr-controller-metrics-collectorall
TSDR Data StoresEnables support for TSDR data stores including HSQLDB, HBase, and Cassandraodl-tsdr-hsqldb, odl-tsdr-hbase, or odl-tsdr-cassandraall
Topology Processing FrameworkEnables merged and filtered views of network topologiesodl-topoprocessing-frameworkall
Unified Secure Channel (USC)Enables support for secure, remote connections to network devicesodl-usc-channel-uiall
VPN ServiceEnables support for OpenStack VPNaaSodl-vpnservice-coreall
VTN ManagerEnables Virtual Tenant Network supportodl-vtn-manager-restself+all
VTN Manager NeutronEnables OpenStack Neutron support of VTN Managerodl-vtn-manager-neutronself+all

Other Beryllium features

Other Beryllium features

Feature NameFeature DescriptionKaraf feature nameCompatibility
OpFlexProvides OpFlex agent for Open vSwitch to enforce network policy, such as GBP, for locally-attached virtual machines or containersn/aall
NeXtProvides a developer toolkit for designing network-centric topology user interfacesn/aall

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 deploying it.

Other Beryllium features

Feature NameFeature DescriptionKaraf feature nameCompatibility
AuthorizationEnables configurable role-based authorizationodl-aaa-authzall
ALTOEnables support for Application-Layer Traffic Optimizationodl-alto-coreself+all
CAPWAPEnables control of supported wireless APsodl-capwap-ac-restall
Clustered AuthenticationEnables the use of the MD-SAL clustered data store for the authentication databaseodl-aaa-authn-mdsal-clusterall
Controller ShieldProvides controller security information to northbound applicationsodl-usecpluginall
GBP IO Visor RendererProvides support for rendering Group Based Policy to IO Visorodl-groupbasedpolicy-iovisorall
Internet of Things Data ManagementEnables support for the oneM2M specificationodl-iotdm-onem2mall
LISP Flow Mapping OpenStack Network VirtualizationExperimental support for OpenStack Neutron virtualizationodl-lispflowmapping-neutronself+all
Messaging4TransportIntroduces an AMQP Northbound to MD-SALodl-messaging4transportall
Network Intent Composition (NIC)Provides abstraction layer for communcating network intents (including a distributed intent mapping service REST API) using either Hazelcast or the MD-SAL as the backing data store for intentsodl-nic-core-hazelcast or odl-nic-core-mdsalall
NIC ConsoleProvides a Karaf CLI extension for intent CRUD operations and mapping service operationsodl-nic-consoleall
NIC VTN rendererVirtual Tenant Network renderer for Network Intent Compositionodl-nic-renderer-vtnself+all
NIC GBP rendererGroup Based Policy renderer for Network Intent Compositionodl-nic-renderer-gbpself+all
NIC OpenFlow rendererOpenFlow renderer for Network Intent Compositionodl-nic-renderer-ofself+all
NIC NEMO rendererNEtwork MOdeling renderer for Network Intent Compositionodl-nic-renderer-nemoself+all
OVSDB NetVirt UIOVSDB DLUX UIodl-ovsdb-uiall
Secure Networking BootstrapDefines a SNBi domain and associated white lists of devices to be accommodated to the domainodl-snbi-allself+all
UNI ManagerInitiates the development of data models and APIs to facilitate configuration and provisioning connectivity services for OpenDaylight applications and servicesodl-unimgrall
YANG PUBSUBAllows subscriptions to be placed on targeted subtrees of YANG datastores residing on remote devices to obviate the need for OpenDaylight to make continuous fetch requestsodl-yangpush-restall

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.

转载于:https://my.oschina.net/leblancs/blog/792098

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值