The Introducing Automation for Cisco Solutions (CSAU) v1.2 course gives you a broad overview of network automation skills. Through a combination of lecture and hands-on labs, 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 Extensible Markup Language (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.
Who should attend
This course is designed primarily for customer engineers and systems engineers in the following job roles:
- Automation architect
- Automation engineer
- Consulting systems engineer
- DevOps engineer
- Network administrator
- Network architect
- Network consulting engineer
- Network design engineer
- Network engineer
- Network operator
- Network 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
- Collaboration 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
What you will learn
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
Additional information
For any information regarding the Cisco Continuing Education Program and CE-Credits please visit the designated Cisco website.