Introduction and Motivation
I am in Cisco IT’s Network Team which supports our company’s Campus and Branch Cisco offices. We manage hundreds of sites and thousands of devices, including WAN connectivity, wireless, and ACL management for our partner and extranet sites. The scope of our responsibility is huge and humbling to think about how many depend on our team’s work.
Over the past year we have begun learning Cisco/Tail-F’s NSO product and how to apply it to an Enterprise context. Most of the examples which are shared are for Service Provider Customers, especially the iconic L2 VPN Service Example (for those who have read the documentation).
In order to scale out our development effort, we created a five-day training curriculum to help teach our (Cisco IT’s) traditional network operators, many of them with no coding background, how to use and develop services in NSO. Our goal and hope in sharing this content is for others to realize the benefit of NSO, as we are beginning to do so.
One of the strengths (and weaknesses) of NSO is its flexibility. It is incredibly powerful and extensible. The labs and examples we give in our training were ones we thought up based on simple Enterprise situations and we hope that not only the lecture content inspires others, but also the lab content creates an excitement of the art of the possible.
Structure of the Content
The structure of the content was based on our five-day training:
- Day 1: What is NSO? Using NSO GUI/CLI
- Day 2: XML & Yang
- Day 3: Basic Services
- Day 4: Advanced Services
- Day 5: Python with NSO
The amount of content is somewhat overwhelming, but taken at bite sized pieces, it is not too bad. Our training assumes no background in NSO, Yang or XML. The concepts are reinforced through the labs, and to really internalize how NSO works, working through the labs is required.
All of our labs assume using NSO 4.4 and cisco-ios NED of 5.2. You can complete most of the labs with just a netsim and NSO, but having a real live Cisco IOS device is helpful.
Here is a link to the training material: GitHub - NSO-developer/nso-5-day-training
This will be the first in a series of blog posts meant to unpack our training, and share it in blog form, rather than just a monolith MS Power Point file.