EIEIOTECHNOVATION
← Training programmes

EIEIO / NETWORKING

NPDESI Designing and Implementing Cisco Network Programmability v1.0

Course outline

5 days

Duration

5 days

Prerequisites

The knowledge and skills that a learner must have before attending this course are:

Baseline Python knowledge

CCNA/CCNP level network background

Learning Objectives

Upon completing this course, the learner will be able to:

Understand the basics of Network Programmability

Use basic Linux commands and configure networking

Write and troubleshoot Python scripts

Understand and use REST and NETCONF programmability interfaces of various Cisco controllers and devices

Consume and comprehend YANG data models

Know DevOps and Agile software development methodologies

Practical application of Ansible automation tool

Module 1: Network Programmability Fundamentals Introduction to Network Programmability

  • Linux Primer for Network Engineers
  • Linux Networking
  • Python Foundations for Network Engineers – Part 1
  • Python Foundations for Network Engineers – Part 2
  • Writing and Troubleshooting Python Scripts
  • Python Libraries

Module 2: APIs and Automation Protocols Introduction to Network APIs and Protocols

  • Cisco ASA REST API
  • NX-OS Programmability
  • Cisco IOS XE APIs
  • Cisco IOS XR APIs

Module 3: Data Models YANG Data Modeling

  • YANG Tools

Module 4: SDN Controllers Introduction to Controller Networking

  • OpenDaylight
  • Cisco APIC-EM
  • Cisco Application Centric Infrastructure
  • Cisco Element and Domain Managers

Module 5: Network Operations Software Development Methodologies

  • Introduction to DevOps
  • Version Control
  • Automated Testing
  • Continuous Integration
  • Configuration Management and Automation Tools
  • Labs: Discovery 1: Using the Linux Command Line
  • Discovery 2: Linux Networking
  • Discovery 3: Python Foundations—Part 1
  • Discovery 4: Python Foundations – Part 2
  • Discovery 5: Writing and Troubles
  • Challenge 6: Interacting with the Cisco IOS XR NETCONF API
  • Challenge 7: Securing the Management Plane
  • Discovery 12: Validating YANG Models Using Yang Validator
  • Discovery 13: Writing a Custom YANG Model
  • Discovery 14: Viewing and Validating YANG Models with pyang
  • Discovery 15: Generate Python Bindings with ydk-gen
  • Discovery 16: Navigating YANG-Explorer
  • Challenge 8: BGP Configuration Change using ydk-py (with OC BGP models)
  • Discovery 17: Network Discovery Configuration
  • Discovery 18: APIC-EM Network Discovery and RBAC
  • Discovery 19: Consuming the APIC-EM API
  • Discovery 20: ACI Fabric Discovery
  • Discovery 21: Creating Objects with APIC GUI
  • Discovery 22: Navigating the Object Model
  • Discovery 23: Using API Inspector
  • Discovery 24: Using ARYA
  • Discovery 25: CLI Emulation
  • Discovery 26: ACI Diagram Tool
  • Discovery 27: ACI Toolkit — Lint
  • Discovery 28: Using the APIC REST API
  • Discovery 29: GitHub Pull Request
  • Discovery 30: Working with Git
  • Discovery 31: DevNet Sandbox
  • Discovery 32: DevNet Learning Labs
  • Discovery 33: DevNet GitHub
  • Discovery 34: Integration Testing
  • Challenge 9: Tenant Provisioning with Ansible
  • Discovery 35: Compliance Checks with Ansible

Programme scope, delivery arrangements and suitability are confirmed during enquiry.