NSO Advanced for Python Programmers1 (NSO300)

The NSO Advanced for Python Programmers1 (NSO300) v3.0 course is an instructorled, lab-based, hands-on course offered by Learning@Cisco. It introduces learners to developing advanced services using Cisco® Network Services Orchestrator (NSO)
programmability with Python scripting.
This course explores how to create advanced services using the NSO application framework and Python scripting
with both new and existing Layer 3 Multiprotocol Label Switching (MPLS) VPN services. Students will also learn
how to manage and scale these services, and how to use NSO Network Functions Virtualization (NFV)
orchestration features and Cisco Elastic Services Controller (ESC) to manage Virtualized Network Functions

Target audience

The primary audience for this course is system installers, system integrators, system administrators, network
administrators, and solutions designers.

At the end of this course, you will be able to:
● Describe the NSO’s transactional application framework and mapping model options
● Describe the Reactive Fastmap design pattern and the NSO Configuration Database (CDB) subscriber in
the NSO Transaction model
● Simplify packages to remove the need for subscriber applications, scale orchestration solutions, and
integrate NSO with external systems (east-west integration)
● Describe the Cisco ESC architecture and integration with NSO, and how the NSO VNF Orchestration
(VNFO) Release 2 bundle interacts with ESC for orchestration
Recommended prerequisites
Cisco recommends that you have the following prerequisite knowledge and skills:
● Knowledge and skills that can be obtained by attending the Cisco NSO Essentials for Programmers and
Network Architects (NSO201) class or equivalent
● Basic knowledge of the Cisco Command-Line Interface (CLI)
● Basic knowledge of the CLI of UNIX-like operating systems
● Basic knowledge of YANG data modeling
● Basic knowledge of Java or Python software development


4 days

Course outline

Module 1: Cisco NSO Programmability
◦ NSO Application Framework
◦ NSO Python Scripting
◦ NSO Python and Template-Based Services
◦ Resources

Module 2: Augmenting Cisco NSO Service
◦ Service Lifecycle and Integration Options Overview
◦ Greenfield Layer 3 MPLS VPN Service
◦ Brownfield Layer 3 MPLS VPN Service

Module 3: Managed Services
◦ Managed Services Overview
◦ Stacked Service Design Overview
◦ Design-Managed Network Services
◦ Scaling Service Orchestration

Module 4: Cisco NSO Network Functions Virtualization (NFV) Orchestration
◦ Cisco ESC
◦ Cisco NSO Orchestration

Lab outline

● Lab 1: Device Setup Using Python Script
● Lab 2: Create an SVI Service Using pre_modification Service Callback
● Lab 3: Create a L3VPN Service Using Dynamic ID Allocation
● Lab 4: L3VPN Service Upgrade
● Lab 5: Stacked Services
● Lab 6: Service Action
● Lab 7: ESC Integration
● Lab 8: NFV for the DMZ Service