This 2-day IT learning course covers DNA Center and the Cisco Catalyst 9000 Series switch programming. The student will learn how to create production solutions that run on or interact with IOS-XE on the Cisco Catalyst 9000 switches. They will learn how to use tools including DNA Center, Yang Explorer, Python, and NetConf. The student will be able to describe use-cases and examples of the value of Catalyst 9000 programmability. The student will be able to use Python to communicate to Catalyst 9k, and much more. Ideal candidates include anyone who has an interest in DNA Center and the Cisco Catalyst 9000 programming and automation.
Prerequisites:
The knowledge and skills that the learner should have before attending this course are as follows:
- Familiarity of Catalyst 9k and DNA Center
- Recommended - DevNet Express training, or
- Completion of the DevNet Express for DNA v2.1 Learning track
Course Objectives:
Upon completing this course, the learner will be able to meet these overall objectives:
- Describe use cases and examples of the value of Catalyst 9000 programmability
- Use Python to communicate to Catalyst 9000, using examples of real-world networking communication and operations
- Use object-oriented programming in Python to abstract Catalyst 9000
- Configure and Use Guest Shell
- Develop using the CLI Python Module
- Automate with the EEM Python Module
- Understand SD-Access
- Use DNA Center REST APIs
DNA-C and SDA
- Network Fabric
- SDA Overview
- LISP
- Cisco TrustSec
- VXLAN Encapsulation
- Control Plane / hardware
- Edge Node / hardware
- Border / hardware
- DNA Center
Cisco Programming Basics
- Overview
- APIs 101
- Python
- Basics
- Lists, Dictionaries, & Tuples
- If-else statements
- Loops
- Functions
Programming SDA and Cisco DNA Center
- DNA Center Architecture
- DNA Center Automation
- DNA Center APIs
- Building a DNA Center Application
- Lab: Programming Cisco DNA Center
Catalyst 9000 Automation and Programming
- Zero-Touch Provisioning, iPXE
- CLI – Legacy, Python CLI, Guest Shell
- EEM and Python
- Model Driven Programmability
- SDA
Catalyst 9000 and Cisco Application Framework instead
- Cisco Application Framework / Virtual Service Infra (IOX)
- Virtual Machine
- KVMs
- Containers
- General LXC
- GuestShell (pre-packaged LXC)
- other pre-packaged LXCs, ie PerfSonar
- Python Programmability
- Zero Touch Provisioning (ZTP)
EEM Python Module
- EEM Overview
- Python Scripting in EEM
- EEM Python Package
- Python-Supported EEM Actions
- EEM CLI Library Command Extensions
Data Models
- Why Models are Important
- YANG data models
- Native models
- IETF models
- OpenConfig models
- Data Encoding
- XML
- JSON
- YANG Tools
- YANG Explorer
- YANG Catalog
- Pyang
- NetConf
- History
- Protocol layers
- Using NetConf
- RESTConf
- Telemetry
Lab Outline:
Labs are designed to assure learners a whole practical experience, through the following practical activities:
- Intro DNA Center
- Setup Machine for Development
- Python Overview
- Managing the Guest Shell
- Running Python Scripts as Part of EEM Applet Actions
- YANG Data Modeling & YANG Explorer, YANG Catalog and pYANG
- NETCONF
The primary audience for this course is as follows:
- Anyone interested in DNA Center and the Catalyst 9000 programming and automation.