Schedule based network orchestration using opendaylight
-
Upload
cloudenablerscom -
Category
Software
-
view
132 -
download
2
Transcript of Schedule based network orchestration using opendaylight
Schedule based Campus Network Orchestration using
OpendayLight
About Us
Rathinasabapathy (Saba)Co-founder, CTO, [email protected]
Has over 18+ years of experience in Software Industry. Heads Cloud lab and defines technology direction and Strategy in Cloudenablers.
Satyabrata ChowdhurySolutions Architect, [email protected]
Has over 13+ years of experience in developing software products. Works with the CTO organization on Technology evangelization, defining strategy and roadmap for Cloud products and programs.
Agenda
• Next Generation Campus Network• Network Orchestrator
– Features– Solution
• Opendaylight and Orchestration – Technical Overview– Opendaylight MD-SAL– Template Engine– Discover Network Topology– Benefits of Templates– Policies and Schedules
Next Generation Campus Networks
Reference:https://www.brocade.com/content/dam/common/documents/content-types/whitepaper/brocade-sdn-in-campus-networks-wp.pdf
Network Orchestrator
Network Orchestrator
Project and Port Profile
Configuration
Policies
SDN Enablement
and Configuration
Automated On-boarding
of Switch
Schedules
Network Orchestrator– Solution ArchitectureSDN based Shared Workspace Orchestration application enabling automated provisioning and Configuration of networking infrastructure for project workspaces.
Opendaylight and Orchestration
7
Opendaylight Technical Overview
8
Opendaylight MD-SAL
9
Template Engine
10
Engine - Computes which tasks are ready and places them in a queue. Passes the data from task to task, deals with condition transitions, etc.
Task Executors - Pick up tasks from the queue, run actions, and send results back to the engine.
API server - exposes REST API to operate and monitor workflow executions.
Scheduler - stores and executes delayed calls. It is the important component since it interacts with engine and executors. It also triggers workflows on events (e.g., periodic cron event)
Persistence - stores workflow definitions, current execution states, and past execution result
Sample Template (Create a Flow between 2 Hosts)
11
---version: 2.000000Create_Flow_ODL: type: direct description: Create a flow between hosts parameter_groups: - label: Create_Flows description: Create a flow between hosts parameters: - Flow_Priority - DSCP_Value - Source_Address - Destination_Address input: Flow_Priority: description: Priority of the flow to be created label: Flow_Priority type: string default: 1 DSCP_Value: description: DSCP Value for the flow to be created label: DSCP_Value type: string default: 34 Source_Address: description: Source Address to create flow label: Source_Address type: string Destination_Address: description: Destination address to create flow label: Destination_Address type: string tasks: Create_Flows: action: odl.qos_config input: priority: <% $.Flow_Priority %> dscp: <% $.DSCP_Value %> dest_host: <% $.Destination_Address %> source_host: <% $.Source_Address %> publish: Create_Flows: <% $.Create_Flows %> output: Flow_Data: <% $.Create_Flows %>...
• Describe the template• Basic Metadata
• Version• Name• Description
• Define Input Parameters• Flow Priority• DSCP Value• Source Address• Destination Address
• Define the Tasks with Action
Benefits of Templates
• Declarative statements , easy to understand• Abstracts the low-level implementation details• Re-usable and Repeatable• Allows to define dependencies between
resources • Allows parallel execution of non dependent
tasks
12
Policies and Schedules
13
• Pre-defined Recurring schedules– Network profile for projects
• Dynamic Schedules– Bandwidth aware– Event based
Topology Discovery
14
• Discover Network Topology using ODL NB API– Hosts– Switches– Flow– Link
References
15
https://www.brocade.com/content/dam/common/documents/content-types/whitepaper/brocade-sdn-in-campus-networks-wp.pdf
Q & A16
Thank You
17
Connect with me@
Email: [email protected]
LinkedIn: http://in.linkedin.com/in/arsabapathy
Twitter: https://twitter.com/arsabapathy
Annexure
18
Opendaylight API
19
Opendaylight MD-SAL provides three API Types
Modelling language of choice for MD-SAL is YANG
Java generated APIs for consumers and producers
DOM APIs: Mostly used by infrastructure components and useful for XML-driven plugin and application types
REST APIs: Restconf that is available to consumer type applications and provides access to RPC and data stores