Designing and Implementing Cisco Network Programmability v1.0 - NPDESI

Designing and Implementing Cisco Network Programmability v1.0 - NPDESI Course Description

Duration: 5.00 days (40 hours)

Cisco Career Guide

Designing and Implementing Cisco Network Programmability v.1.0 (NPDESI) is a course that addresses the evolving role of network engineers towards more programmability, automation and orchestration, enabling them to leverage the powerful level of abstraction provided by controller based architectures to create real added value. This course is aligned with the topics covered by the 300-550 NPDESI exam, leading to the Cisco Network Programmability Design and Implementation Specialist Certification.

The goal of the course is to provide the student a foundation to get started with network programmability by learning how to minimize the amount of manual interactions (“CLI”) with the network and increase the use of scripts and automation tools to drive down operational inefficiencies. Within these goals, the learner reviews network programmability fundamentals such as using Linux and Python, common automation protocols such as NETCONF and REST, how they relate to YANG data models, SDN controller northbound and southbound APIs, how to use device APIs on various Cisco platforms, and how to get started using automation tools such as Ansible and Puppet.


Note: E-learning module (Cisco Digital Learning Library) is also available for this course Click here for more details

Next Class Dates

Mar 5, 2018 – Mar 9, 2018
9:00 AM – 5:00 PM CT
519 8th Avenue, 2nd Floor, New York, NY 10018
New York, NY 10018
Jun 11, 2018 – Jun 15, 2018
9:00 AM – 5:00 PM CT
519 8th Avenue, 2nd Floor, New York, NY 10018
New York, NY 10018
Sep 10, 2018 – Sep 14, 2018
9:00 AM – 5:00 PM CT
519 8th Avenue, 2nd Floor, New York, NY 10018
New York, NY 10018
Dec 10, 2018 – Dec 14, 2018
9:00 AM – 5:00 PM CT
519 8th Avenue, 2nd Floor, New York, NY 10018
New York, NY 10018

View More Schedules »

Contact us to customize this class with your own dates, times and location. You can also call 1-888-563-8266 or chat live with a Learning Consultant.

Back to Top

Intended Audience for this Designing and Implementing Cisco Network Programmability v1.0 - NPDESI Course

  • » Network Engineer
  • » Field Engineer
  • » System Engineer
  • » Network Designer
  • » Network Operations
  • » Network Automation Engineer
  • » Network Programmer
  • » Network Developer
  • » Software Engineer
  • » Application Developer

Back to Top

Course Prerequisites for Designing and Implementing Cisco Network Programmability v1.0 - NPDESI

  • » Baseline Python knowledge
  • » Data Center CCNA/CCNP-level network background

Back to Top

Designing and Implementing Cisco Network Programmability v1.0 - NPDESI Course Objectives

  • » Learn how to minimize the amount of manual interactions (“CLI”) with the network, and increase the use of scripts and automation tools to drive down operational inefficiencies
  • » Review network programmability fundamentals including Linux and Python, common automation protocols such as NETCONF and REST and how they relate to YANG data models
  • » Learn about SDN controllers including APIC, APIC-EM and OSC, as well as how to use device-level APIs such as Cisco NXOS, IOS-XE, IOS-XR and ASA OS
  • » Learn about DevOps and Agile software development methodologies, and get started on using automation tools such as Ansible, Chef and Puppet

Back to Top

Designing and Implementing Cisco Network Programmability v1.0 - NPDESI Course Outline

      1. Network Programmability Fundamentals
        1. Introduction to Network Programmability
          1. Understanding Software-Defined Networking
          2. Traditional versus Software-Defined Networks
          3. Current Industry Trends
            1. Open Source Software
            2. Programmable Infrastructure
            3. Software Defined Networking
            4. DevOps
            5. Cisco ACI
          4. Network Programmability and Automation
            1. Uses of Network Automation
            2. Network Automation Scenarios
            3. Open Source Tools and Enterprise Platforms
            4. Network Programmability Technology
            5. Network Automation Workflow
          5. Introduction to Cisco Platforms and APIs
            1. Cisco Platforms and APIs
        2. Linux Primer for Network Engineers
          1. Why Learn Linux?
          2. Navigating the Linux File System
            1. Paths and Directories
          3. Linux Distributions and Package Managers
            1. Package Management
          4. Working with Files and Directories
            1. File Permissions
          5. Linux Processes
          6. Challenge 1: Using the Linux Command Line
            1. Package Management
            2. Navigating the Filesystem
            3. Working with Files and Directories
        3. Linux Networking
          1. Basic Linux Networking Commands
            1. Viewing the Routing and ARP Tables
          2. Persistent Network Configuration
          3. Challenge 2: Linux Networking
            1. Verify IP Address Information
            2. Configuration Changes
            3. Persistent Network Configuration
        4. Python Foundations for Network Engineers – Part 1
          1. Understanding Python
            1. Executing Python Code
            2. Python Helper Utilities and Function
            3. Writing Idiomatic Python
            4. Common Python Data Types
            5. Variable Assignment
          2. Data Types: Strings
            1. Printing Strings
            2. Concatenating Strings
            3. String Built in Methods
          3. Data Type: Numbers
          4. Data Type: Booleans
          5. Conditionals
          6. Challenge 3: Python Foundations—Part 1
            1. Create Strings
            2. Navigate the Built-In Help Features
            3. Use Built-in Methods of Strings
            4. Use Conditionals
        5. Python Foundations for Network Engineers – Part 2
          1. Lists
          2. Dictionaries
          3. Loops
          4. Function
          5. Working with Files
          6. Challenge 4: Python Foundations – Part 2
            1. Working with Lists
            2. Working with Dictionaries
            3. Using a For Loop
            4. Working with Functions
        6. Writing and Troubleshooting Python Scripts
          1. Writing Scripts
          2. Executing Scripts
          3. Analyzing Code
          4. Error Handling
          5. Challenge 5: Writing and Troubleshooting Python Scripts
            1. Writing a Hello World Script
            2. Writing a Network Script
            3. Analyzing and Troubleshooting a Script
        7. Python Libraries
          1. Python Libraries
          2. Python Module
          3. Python Package
          4. Challenge 6: Custom Python Libraries
            1. Using Built-In Modules
            2. Creating a Python Module
            3. Creating a Custom Package
      2. APIs and Automation Protocols
        1. Introduction to Network APIs and Protocols
          1. Evolution of Device Management and Programmability
            1. Model-Driven Programmability Stack
          2. Data Encoding Formats
          3. JSON
          4. Discovery 1: Working with JSON Objects in Python
            1. Working with JSON Objects in Python
          5. XML
          6. Discovery 2: Using XML in Python
            1. Learning Lab Procedure
          7. Data Models
            1. YANG
            2. Model-Driven Programmability
          8. Model-Driven Programmability Stack
          9. REST
          10. NETCONF
          11. Discovery 3: NETCONF Capabilities Exchange
            1. Learning Lab Procedure
          12. RESTCONF
          13. gRPC
        2. Cisco ASA REST API
          1. Cisco ASA REST API Overview
          2. REST API Agent Pre-requisites
            1. User Credentials
          3. Cisco ASA REST API Documentation and Console
          4. Cisco ASA REST API Examples
          5. Challenge 7: Interacting with Cisco ASA REST API
            1. Retrieve Interface Statistics Using Postman
            2. Create Network Service Object Using Postman
            3. Review Python Script Consuming ASA API
            4. Construct Python Script Consuming ASA API
        3. NX-OS Programmability
          1. Nexus Programmability Overview
          2. NX-API CLI—Part 1
          3. Discovery 4: NX-API Discovery
            1. Learning Lab Procedure
          4. NX-API CLI—Part 2
          5. NETCONF
          6. Python on Box
          7. NX-API REST
          8. Challenge 8: Consume NX-API with Python
            1. Consume NX-API with Python
          9. Challenge 9: Consuming NETCONF on Nexus
            1. Using the xmlagent Service
            2. Consuming NETCONF in Python
          10. Challenge 10: Using Python on the Nexus Switch
            1. Cisco CLI APIs
            2. Executing Python Script on Box
        4. Cisco IOS XE APIs
          1. Cisco IOS XE APIs Overview
          2. IOS XE RESTCONF API
          3. IOS XE NETCONF API
          4. Challenge 11: Interacting with the Cisco IOS XE RESTCONF API
            1. Gather Data Using Postman
            2. Making Configuration Changes Using Postman
            3. Troubleshoot Python Script Consuming RESTCONF API
          5. Challenge 12: Interacting with the Cisco IOS XE NETCONF API
            1. Consume NETCONF with Python
        5. Cisco IOS XR APIs
          1. IOS XR NETCONF APIs
          2. Challenge 13: Interacting with the Cisco IOS XR NETCONF API
            1. Consume NETCONF with Python
        6. Securing the Management Plane
          1. Management Plane
          2. Access Control Lists
          3. Challenge 14: Securing the Management Plane
            1. Create Access Control Lists
      3. Data Models
        1. YANG Data Modeling
          1. YANG Overview
          2. YANG Module
          3. YANG Module Header
          4. YANG Leaf Statement
          5. YANG Leaf-List Statement
          6. YANG List Statements
          7. Putting Things Together
          8. YANG Types
          9. YANG Typedef Statement
          10. YANG Choice Statement
          11. YANG Grouping Statement
          12. YANG Miscellaneous Statements
          13. YANG RPC Statement
          14. YANG Imports and Includes
          15. YANG Modules and Submodules
          16. YANG Model Examples
            1. XML
            2. JSON
            3. CLI
        2. YANG Tools
          1. YANG Validator
          2. Discovery 5: Validating YANG Models Using yangvalidator
            1. Using yangvalidator
          3. Challenge 15: Writing a Custom YANG Model
            1. Validate Device Configurations
          4. pyang
          5. Discovery 6: Viewing and Validating YANG Models with pyang
            1. Viewing and Validating YANG Models with pyang
          6. YANG Development Kit
          7. Discovery 7: BGP Configuration Change using ydk-py (with OC BGP models)
            1. BGP Configuration Change Using ydk-py (with OC BGP Models)
          8. YDK-Py API Structure
          9. YDK-Gen
          10. Discovery 8: Generate Python Bindings with ydk-gen
            1. Generate Python Bindings with ydk-gen
          11. YANG Explorer
          12. Discovery 9: Navigating YANG-Explorer
            1. Learning Lab Procedure
          13. References
      4. SDN Controllers
        1. Introduction to Controller Networking
          1. Origins of Controller Based Networking
          2. OpenFlow
          3. OpenFlow Deployment Models
        2. OpenDaylight
          1. OpenDaylight Overview
          2. OpenDaylight Architecture
          3. OpenDaylight Use Cases
        3. Cisco APIC-EM
          1. APIC-EM Overview
            1. APIC-EM Web User Interface Dashboard
          2. APIC-EM Platform Architecture
            1. Supported Devices
            2. APIC-EM Common Tasks
          3. Discovery 10: Network Discovery Configuration
            1. Performing a Network Discovery
          4. Performing APIC-EM Tasks
          5. APIC-EM Applications
          6. APIC-EM APIs
            1. Using Postman with APIC-EM
          7. Challenge 16: APIC-EM Network Discovery and RBAC
            1. Create Saved SNMP String Values in Preparation for the Discovery
            2. Create Saved CLI Credentials in Preparation for the Discovery
            3. Perform a New Network Discovery
            4. Creating Internal Users
          8. Challenge 17: Consuming the APIC-EM API
            1. Postman Basic Tasks
            2. Generating Python Code in APIC-EM
        4. Cisco Application Centric Infrastructure
          1. ACI Overview
          2. Discovery 11: ACI Fabric Discovery
            1. ACI Fabric Discovery
          3. Discovery 12: Creating Objects with APIC GUI
            1. Creating Objects with APIC GUI
          4. ACI Object Model
          5. Discovery 13: Navigating the Object Model
            1. Navigating the Object Model
          6. APIC REST API
          7. Discovery 14: Using API Inspector
            1. Learning Lab Procedure
          8. Using Postman REST Client
          9. Cobra SDK
          10. Arya
          11. Discovery 15: Using ARYA
            1. Using ARYA
          12. ACI Toolkit
          13. ACI Toolkit Applications — CLI
          14. Discovery 16: CLI Emulation
            1. CLI Emulation
          15. ACI Toolkit Applications — Diagrams Tool
          16. Discovery 17: ACI Diagram Tool
            1. ACI Diagram Tool
          17. ACI Toolkit Applications — Lint
          18. Discovery 18: ACI Toolkit — Lint
            1. ACI Toolkit — Lint
          19. ACI Toolkit Applications — Cable Plan
          20. ACI Toolkit Applications — Event Feeds
          21. ACI Toolkit Applications — Fake APIC
          22. Challenge 18: Using the APIC REST API
            1. Before Getting Started
            2. Consuming the APIC REST API with Postman
            3. Construct Python Scripts Using Requests
        5. Cisco Element and Domain Managers
          1. Cisco Virtual Topology System
          2. Cisco Nexus Data Broker
          3. Cisco Network Service Orchestrator
          4. WAN Automation Engine
          5. Cisco UCS Manager
          6. Cisco UCS Director
      5. Network Operations
        1. Software Development Methodologies
          1. Software is Everywhere
          2. Waterfall
          3. Lean
          4. Agile
          5. Reference
        2. Introduction to DevOps
          1. Dev and Ops – The Problem
          2. DevOps Demystified
          3. DevOps Tools and Technologies
        3. Version Control
          1. Version Control Systems
          2. Overview of Git
            1. Git Architecture
          3. Git Commands
          4. Git Workflow
          5. Git Branches
            1. Using Git
          6. Collaborating with GitHub
          7. Discovery 19: GitHub Pull Request
            1. Learning Lab Procedure
          8. GitHub Pull Request: Fork and Pull
            1. Changing Views
          9. Challenge 19: Working with Git
            1. Getting Started with Git
        4. Automated Testing
          1. Network Test Infrastructure
            1. Network Function Virtualization
          2. VIRL
          3. DevNet
            1. DevNet Sandbox
            2. DevNet Learning Labs
            3. DevNet GitHub
          4. Discovery 20: DevNet Sandbox
            1. DevNet Sandbox
          5. Discovery 21: DevNet Learning Labs
            1. DevNet Learning Labs
          6. Discovery 22: DevNet GitHub
            1. DevNet GitHub
          7. Network Testing
          8. Unit Tests
          9. Challenge 20: Integration Testing
            1. Validate Device Configurations
          10. Reference
        5. Continuous Integration
          1. Introduction to Continuous Integration
          2. Travis CI
        6. Configuration Management and Automation Tools
          1. Configuration Management
          2. Ansible Overview
          3. Ansible Base Modules
          4. NXOS Features Modules
          5. Puppet
            1. Puppet Components
            2. Puppet Server
            3. Puppet Manifests
            4. Puppet Resources
          6. Puppet Node and Agent
            1. Puppet Agent Installation
            2. Puppet Installation with OAC
            3. Puppet Installation with Guestshell
            4. Puppet Installation with Bash-shell
          7. Final Steps: Puppet Agent Setup
            1. Managing Interfaces
            2. Managing OSPF
          8. Challenge 21: Compliance Checks with Ansible
            1. Verify Config Register and IOS Version
          9. Challenge 22: Tenant Provisioning with Ansible
            1. Deploy Tenants with Ansible
          10. References

Back to Top

This training prepares students for the following exam(s):

  • » 300-550 NPDESI : Designing and Implementing Cisco Network Programmability - NPDESI

Back to Top

Do you have the right background for Designing and Implementing Cisco Network Programmability v1.0 - NPDESI?

Skills Assessment

We ensure your success by asking all students to take a FREE Skill Assessment test. These short, instructor-written tests are an objective measure of your current skills that help us determine whether or not you will be able to meet your goals by attending this course at your current skill level. If we determine that you need additional preparation or training in order to gain the most value from this course, we will recommend cost-effective solutions that you can use to get ready for the course.

Our required skill-assessments ensure that:

  1. All students in the class are at a comparable skill level, so the class can run smoothly without beginners slowing down the class for everyone else.
  2. NetCom students enjoy one of the industry's highest success rates, and pass rates when a certification exam is involved.
  3. We stay committed to providing you real value. Again, your success is paramount; we will register you only if you have the skills to succeed.
This assessment is for your benefit and best taken without any preparation or reference materials, so your skills can be objectively measured.

Take your FREE Skill Assessment test »

Back to Top

Award winning, world-class Instructors

David M.
- Networking expert with several Cisco certifications, including CCENT, CCNA, CCDA, CCSI, and CCVP. - Has taught over 90 courses at NetCom Learning. - Average rating of 8.75 out of 9 on student evaluation reports.

Bio:

David has been in the Networking field for the past eleven years and holds several Cisco certifications. He has been an instructor since 2005 and has taught over 90 courses at NetCom Learning.

David is an extremely enthusiastic trainer with a raw passion towards teaching and delivering Cisco information and takes great pride in his career as an instructor, which has lead him to develop and deliver the class in his own unique way; very professional and knowledgeable, yet pleasant and enjoyable. His classes have a high passing rate for students taking certification exams, and averages 8.75 out of 9 on evaluation reports.
Michael G.
- Over 22 years of professional experience in the IT field, including more than a decade as a Certified Trainer.
- An expert in Cisco's Routing, Switching, Security, Voice and Wireless areas, as well as select Microsoft, Novell, CompTIA, Sun and CWNP courses.
- High-skilled and acclaimed instructor. Has trained over 900 students at Netcom Learning.

Bio:

Michael has over 22 years of professional experience in the IT field, including more than a decade as a Certified Trainer. An expert in Cisco's Routing, Switching, Security, Voice and Wireless areas, Michael also teaches select Microsoft, Novell, CompTIA, Sun and CWNP courses.

Michael's dedication and passion for teaching is unmatched. He has trained over 900 students at Netcom Learning since 2006 and his evaluation scores average 8.7 out of 9.
William D.
- Bachelors and Masters in Mathematics from University of Pennsylvania, in addition to several IT certifications.
- Over 20 years of experience in the IT industry; background ranges from engineering, administration and escalation support in networks.

Bio:

William is a highly-skilled IT professional with Bachelors and Masters Degree in Mathematics from University of Pennsylvania. He has been working in the IT industry for over 20 years, with experience in engineering, administration and escalation support in networks ranging from small to large scale complex enterprise environments.

As a Cisco and CompTIA Subject Matter Expert, he holds several certifications, including Cisco CCNA, CCNP, and CCIE. William is one of NetCom's top trainers, consistently scoring high marks in student evaluations.

See more...   See more instructors...

Back to Top

Recent Client Testimonials & Reviews

Very knowledgeable instructor. True subject matter expert.

- Dameon R.

Course(s) Taken

» Implementing Cisco Voice Communications and QoS v8.0 - CVOICE

The instructor knows his material very well.

- Hung N.

Course(s) Taken

» Implementing Cisco Voice Communications and QoS v8.0 - CVOICE

Good Training company with whom we have a history.

-Swaminathayer M.
Course(s) Taken

» Deploying Cisco ASA Firewall Solutions v2.0 - FIREWALL

  More testimonials »  

Back to Top