Introducing Automation for Cisco Solutions (CPLL-CSAU-V1)

The Introducing Automation for Cisco Solutions (CSAU) v1.0 course gives you a broad overview of network automation skills.


You will learn the fundamentals of automation such as working on model-driven programmability solutions with Representational State Transfer Configuration Protocol (RESTCONF) and Network Configuration Protocol (NETCONF) protocols. The course also covers data formats and types, including XML, JavaScript Object Notation (JSON), Yaml Ain’t Markup Language (YAML), and Yet Another Next Generation (YANG), and their value in network automation, along with DevOps tools such as Ansible and Git.


This course does not lead directly to a certification exam, but it does cover foundational knowledge that can help you prepare for several professional-level automation courses and exams.


Associated Certification: None

Associated Exam: None


Course Objectives

After taking this course, you should be able to:

  • Articulate the role network automation and programmability play in the context of end-to-end network management and operations
  • Define and differentiate between waterfall and agile software development methodologies
  • Interpret and troubleshoot Python scripts with fundamental programming constructs built for network automation use cases
  • Describe how DevOps principles, tools, and pipelines can be applied to network operations
  • Understand the role of network automation development environments and associated technologies such as Python virtual environments, Vagrant, and Docker
  • Understand and construct HTTP-based API calls to network devices
  • Articulate the differences among and common use cases for XML, JSON, YAML, and Protobuf
  • Construct and interpret Python scripts using the Python requests module to automate devices that have HTTP-based APIs
  • Understand the role YANG plays in network automation
  • Understand that a number of tools exist to simplify working with YANG models
  • Describe the functionality of RESTCONF and NETCONF and the differences between them
  • Construct Ansible playbooks to configure network devices and retrieve operational state data from them
  • Build Jinja2 templates and YAML data structures to generate desired state configurations


Target Audience

This course is designed primarily for customer engineers and systems engineers in the following job roles:

  • Automation architect and engineer
  • Consulting systems engineer
  • DevOps engineer
  • Network administrator, architect, consulting engineer, design engineer, engineer, operator, and reliability engineer
  • Sales engineer
  • Site reliability engineer
  • Systems engineer
  • Technical solutions architect

This course would also be useful for network manager job roles such as:

  • Application developer
  • Collaboration developer and solutions architect
  • IT director
  • Mobile developer
  • Network Operations Center (NOC) manager
  • Software architect
  • Web developer


Course Prerequisites

Before taking this course, you should have the following knowledge and skills:

  • Routing and switching including Open Shortest Path First (OSPF), Border Gateway Protocol (BGP), and basic configuration features such as interfaces, Simple Network Management Protocol (SNMP), and static routes
  • Fundamentals of Python data structures and programming constructs such as loops, conditionals, and classes, or the equivalent of 3–6 months of experience writing Python scripts
  • Basic Linux commands for navigating the file system and executing scripts
  • Knowledge of working with text editors