Cisco
Technology
Data Center and Virtualization
Cisco Catalyst 9k and DNA Center Programmability Workshop (9KSDAP)

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.

About the course

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
Course content

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
Who Should Attend

The primary audience for this course is as follows:

  • Anyone interested in DNA Center and the Catalyst 9000 programming and automation.