Courses Overview
DNACPF (Cisco DNA Center Programmability Integration Fundamentals) is a 3-day, instructor-led, Cisco DNA Center course that will help you to become familiar with programmable infrastructure concepts and integrations that support Cisco SD-Access, DNA Center, and the Cisco Catalyst 9000 Series switch programming. In this course you will learn about production solutions that run on or interact with IOS-XE on the Catalyst 9000 switches.
The primary audience for this course is as follows:
– Personnel involved in SD-Access Design, Implementation, and Integration
– Network Operations team with SD-Access solution
– Network admin staff that deal with Software Defined Networking
– Network Administrators
– Network Architects
– Network Engineers
Upon completing this course, the learner will be able to meet these overall objectives:
- Describe what is SDN and Network Programmability
- Describe use cases and examples of Catalyst 9000 programmability
- Learn about Python and how it automates the Catalyst 9000
- Understand object-oriented programming
- Understand SD-Access
- Discuss how to apply Cisco Software-Defined Access programmatically
- Understand the Use Cases and Problems Solved with SDN programmability
- Explain an overview of OpenFlow and Network Controllers
- Explain an overview of Human Interaction DevOps-Style
Module 1: SD-Access Introduction
- SDA Quick Overview
- SDA Key Benefits
- Technical Overview
– LISP
– Cisco Trustsec
– VXLAN
- Network Fabric
- SDA Overlay Key Components
– Control Plane
– Data Plane
– Policy Plane
- SDA Fabric Roles & Terminology
– DNA Controller
– Identity Services
– Analytics Engine (NDP)
– Control Plane
– Edge Nodes
– Border Nodes
– Virtual Network
– Scalable Groups
– VXLAN Encapsulation
Module 2: SDA Wireless Architecture
- SDA Wireless Architecture Overview
- SDA Wireless Benefits
- Policy Rollout
- Wireless Integration in SDA Fabric
Module 3: SDA Deployment
- Digital Network Architecture
- Campus Fabric Automation
- Smart CLI
- Programmable APIs
- DNA Center – SD-Access WorkFlow
– Design
– Provision
– Policy
– Assurance
Module 4: SDA Center Ecosystems Integrations
- Event Notifications and Webhooks
- Integrations Overview
- DevOps Integrations
- ChatOps Integrations
- Use Cases
– ITSM Integrations
– Client Insights with Apple Analytics
– IP Address Management (IPAM)
– Network Orchestrators
– Policy Orchestrators
– Security Analytics
– Firewalls
– Public and Private Cloud Integration
Module 5: DNA Assurance
- DNA Center Architecture
- Cisco DNA Assurance Introduction
- DNA Assurance Architecture
- Telemetry Collection Overview
- DNA Assurance Getting Started
- Full Stack Visibility
- Network & Client Experience
- Intelligent Capture
- Real Time Monitoring RF
- Path Trace
- Sensor-based Proactive Monitoring
- Application Experience
- Issue Remediation
- AI Network Analytics
- Machine Reasoning
Module 6: Python Programming
- Programmability Overview
- APIs Primer
- Python Foundation Overview
- Lists, Tuples & Dictionaries
- Control Sentences
- Functions
- Modules
- Classes
- Error Handling (Exceptions)
Module 7: Programming SDA and DNA Center
- DNA Center Architecture Overview
- DNA Controller
- DNA Center Automation
- DNA Center APIs
- Building DNA Center Applications
Module 8: Cisco Catalyst 9K Introduction
- Intent Based Networking
- Cisco Catalyst 9K Features and Characteristics
- Cisco Catalyst 9K IOS-XE
- Catalyst 9K Platform Support
- Linux Service Containers Introduction
- Python Programmability Introduction
- Zero-Touch Provisioning, iPXE, PnP
- CLI – Legacy, Python CLI, Guest Shell
Module 9: Catalyst 9K and Cisco Application Framework
- Cisco Application Framework / Virtual Service Infra (IOX)
- Cisco Catalyst 9K Application Hosting
- Application Hosting Value Proposition
- Catalyst 9K Switching Application Ecosystem
- Virtual Machines
- KVMs
- Containers
– General LXC (Linux Service Containers)
– GuestShell (pre-packaged LXC)
– Other pre-packaged LXCs, ie PerfSonar
- Python Programmability in Depth
- Python API
- Zero Touch Provisioning (ZTP) and Plug ’n Play
Module 10: Catalyst 9K EEM Python Module
- EEM Overview
- Python Scripting in EEM
- EEM Python Package
- Python-Supported EEM Actions
- EEM CLI Library Command Extensions
Module 11: Data Models & Model Driven Programmability
- 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
– Operations
– Messages
– Using NetConf
- RESTConf
– History
– Protocol layers
– Operations
– Messages
– Using RestConf
- Telemetry Introduction
Module 12: Model Driven Telemetry
- Yang Data Streaming
- Telemetry History
- gRPC
- Collectors & Renderers
- ELK
– Elastic Search
– Logstash
– Kibana
- TIG
– Telegraph
– Influx
– Grafana
- Quick Start with Docker
- Publication Types
- Telemetry Subscriptions
- IOS-XE 16.x and 17.x Yang Model Support
- Yang Model Metadata
- CLI and XML Configuration Examples
- Pipeline
- Splunk
Module 13: 3rd Party Integrations
- ServiceNow
- Splunk
LAB OUTLINE
Lab 1: Intro DNA Center
Lab 2: DNA Assurance
Lab 3: DNA Center API Discovery
Lab 4: Setup Machine for Development
Lab 5: Python Overview
Lab 6: Programming Cisco DNA Center
Lab 7: Managing the Guest Shell
Lab 8: Running Python Scripts as Part of EEM Applet Actions
Lab 9: NETCONF/RESTConf
Lab 10: YANG Data Modeling & YANG Explorer, YANG Catalog and pYANG
Lab 11: Catalyst 9K – Application Hosting
Lab 12: Programming Telemetry
Lab 13: Integrating DNAC with ServiceNow
Lab 14: Integrating DNAC with Splunk
It is recommended, but not required, that students have the following knowledge and skills:
- Familiarity with Catalyst 9k Switches
- Familiarity with DNA Center and SD-Access