devnet-1006getting started with opendaylight

26

Upload: cisco-devnet

Post on 08-Aug-2015

179 views

Category:

Technology


0 download

TRANSCRIPT

  1. 1. Getting Started with OpenDaylight Giles Heron ([email protected]) Andrew McLachlan ([email protected]) Charles Eckel ([email protected]) DEVNET-1006
  2. 2. What is OpenDaylight? NETCONF/YANGs relationship to Open Daylight Cisco Open Source Controller and DevNet Agenda
  3. 3. What is OpenDaylight?
  4. 4. OpenDaylight Overview Software-Defined Networking (SDN) Modular controller at core Northbound APIs to apps Southbound interfaces to network devices
  5. 5. 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
  6. 6. 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
  7. 7. Where to Get Open Daylight Its 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
  8. 8. ODL First Boot
  9. 9. NETCONF/YANGs relationship to Open Daylight
  10. 10. ODL Transport Remote Operations Mgmt Services Mgmt info (encoding) Mgmt info (definition) XML-encoded content YANG modules NETCONF operations XML RPC TLS, SSH JSON JAVA DTO I2RS ? HTTP RESTCONF TCP OpenDaylight NETCONF, RESTCONF and YANG
  11. 11. 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
  12. 12. 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 [email protected]. Model Cache XR1 XR2 OpenWRT
  13. 13. 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
  14. 14. 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 , POST (create) PUT (replace) PATCH (merge) DELETE (delete) OPTIONS (discover supported operations) HEAD (get without body)
  15. 15. ODL NETCONF Demo
  16. 16. Cisco Open Source Controller and DevNet
  17. 17. DevNet Open Source DevCenter https://developer.cisco.com/opens ource Community forums, blogs https://communities.cisco.com/com munity/developer/opensource Developer Events IETF Hackathon featuring OpenDaylight https://www.ietf.org/registration/Mee tingWiki/wiki/93hackathon
  18. 18. Sandbox https://developer.cisco.com/site/opendaylight/discover/try-it-now/ Try OpenDaylight in a real network
  19. 19. Thank you