Install OpenDaylight within a VM on your own laptop. Acquaint yourself with the development environment. Learn your way around Dlux (GUI) and the CLI to view and operate an OpenDaylight controlled network. Activate and operate integrations to Cisco network elements
9. • Java chosen as an enterprise-grade,
cross-platform compatible language
• Git – version control system
• Maven – build system for Java
• OSGi:
• Enables dynamic loading of feature bundles
• Can register dependencies and services exported
• Infrastructure for exchanging information across bundles
• Karaf: Light-weight Runtime for loading modules/bundles
• OSGi based. Primary distribution mechanism for Helium
OSGi Framework (Equinox)
FeatureA
SAL
FeatureB
…
Karaf
OpenDaylight - Java, Git, Maven, OSGi and Karaf
10. • Based on modern frameworks:
node.js, AngularJS
• Completely decoupled from the
core controller
• Run it from any location
• Modular, easy to extend
OpenDaylight – the DLUX UI
11. Where to Get Open Daylight
• It’s Open Source !
• The Easy Way - Download and Play (unzip and run)
• http://www.opendaylight.org/software/downloads
• The Next Step - Build and Play (Core Tutorials)
• https://wiki.opendaylight.org/view/OpenDaylight_Controller:MD-
SAL:Startup_Project_Archetype
16. ODL NETCONF Plug-In
Controller Config
MD-SAL
NETCONF
NETCONF
• Mounted under e.g. http://localhost:8181/restconf/config/opendaylight-
inventory:nodes/node/controller-config
• Data can be accessed using …/yang-ext:mount/…
• …/yang-ext:mount/config:modules is used to configure the various plug-ins
Config Store
RESTCONF
17. ODL NETCONF Plug-In
Node “Discovery”
MD-SAL
NETCONF
RESTCONF
Node Inventory
• Nodes added by POSTing to config:modules
• ODL connects to each node
• ODL learns capabilities (YANG modules) and stores to model cache
• Cache at ~/cache/schema. Filenames of form yang-model@2015-09-03.yang.
Model Cache
XR1 XR2 OpenWRT
18. ODL NETCONF Plug-In
Node Configuration
MD-SAL
NETCONF
RESTCONF
Node Inventory
• Nodes configured by POSTing or PUTting to e.g.:
• http://localhost:8181/restconf/config/opendaylight-inventory:nodes/node/XR2/yang-
ext:mount/Cisco-IOS-XR-ifmgr-cfg:interface-configurations/interface-
configuration/act/Loopback0/
• Can retrieve config (or operational stats) using GET
Model Cache
XR1 XR2 OpenWRT
19. RESTCONF
• ReSTful protocol to access YANG defined data
• Remote State Transfer, i.e. server maintains no session state
• HTTL URLs reflect data hierarchy in a YANG-modelled datastore
RESTCONF Netconf
GET <get-config>, <get>
POST <edit-config> (“create”)
PUT <edit-config> (“replace”)
PATCH <edit-config> (“merge”)
DELETE <edit-config> (“delete”)
OPTIONS (discover supported operations)
HEAD (get without body)
23, 25 ABOUT KARAF
ADD:
DLUX / GUI
SLIDE ON SOLVING HARD PROBLEMS VIA INDUSTRY VIA CODE VS PRODUCTS
TALK ABOUT POLICY – DEBATE INTERNALLY IN CODE
SECURITY AND TRIPLE AAA
LOAD BALANCING AS A SERVICE
ETC.
ON 23-28