Arista Networking - Automation Operations - Course Topics
Automation & NetOps Foundations
- Introduction to network automation
- Approaches to network automation
- History of network automation
- Software development and network automation
- Network automation concepts and practices
Automation Tools
- Automation tools and data formats
- Programmability IDEs overview
- Introduction to Visual Studio Code
- VS Code themes, fonts and icons
- Customizing VS Code layout
- VS Code extensions
- VS Code debugger
- Reviewing VS Code
- Understanding Git version control
- Git demo
- GitHub demo
- Why Python matters for network automation
- Understanding Python variables
- Advanced Python concepts
- Working with Python variables, lists and dictionaries
- Introduction to Python and eAPI
- Getting information from EOS devices
- Parsing CLI output with Python
- Parsing JSON with Python
Understanding APIs
- APIs in network automation
- The history of HTTP and its role in networking
- Understanding HTTP messages
- HTTP authentication
- TLS and SSL overview
- TLS certificates and trust chains
- Why use certificates in network automation
- Creating and installing TLS certificates
- Client TLS certificates for API authentication
- Introduction to EchoAPI
- REST API client requests and responses
- HTTP Auth with REST API client
- Organizing requests in REST API clients
- REST API client scripts
Ansible Fundamentals
- Introduction to Ansible
- Ansible use cases
- Understanding Ansible files
- Working with Ansible variables
- Ansible variables demo
- Using Ansible debug
- Ansible debug demo
CloudVision Fundamentals
- Introduction to CloudVision
- CloudVision deployment
- CloudVision and device communication
- CloudVision cluster redundancy
- CloudVision dual cluster deployment
- CloudVision backups
- CloudVision multi-node OVA installation demo
- Upgrading CloudVision demo
- CloudVision backup and restore demo
- Getting familiar with CloudVision interface demo
- CloudVision device management overview
- Legacy provisioning overview and demo
- MLAG configuration demo
- CloudVision snapshots
- CloudVision change control overview
- Change control demo
- Zero touch provisioning and replacement
- ZTP demo – deploying vEOS to CloudVision
- ZTR demo – replacing a device in CloudVision
- Configuration management with Studios
- CloudVision tags
- Inventory and topology Studio overview and demo
- Interface configuration and Studio demo
- Date and time Studio overview and demo
- Postcard telemetry Studio overview
- Mirroring Studio overview
- Authentication Studio overview and demo
- Management connectivity Studio demo
- Static configuration Studio overview
- Adding devices to CloudVision Studios inventory
- Using static configuration Studio
- Migrating legacy configlets to Studios
- Software management overview
- Software image management demo
- Modern network telemetry with CloudVision
- Telemetry use cases in CloudVision
- Compliance overview
- CloudVision dashboards
- CloudVision events
- CloudVision topology overview
- Topology icons and settings
- CloudVision topology tags
- Querying NetDB and NetSQL
- Querying ARP entries using AQL notebook and dashboards
- Querying BGP sessions using AQL notebook and dashboards
- Querying device state and software versions using NetSQL
Using Ansible and Jinja
- Introduction to Jinja
- Jinja file layout
- Jinja variable files
- Building and organizing data models
- Building and applying configurations with Ansible and CloudVision
- Why Jinja – manual configuration challenges
- Setting up Jinja and building your first template in Ansible
- Building the Jinja data model and generating underlay configs
- Upload and deploy Jinja configs through CloudVision
- Deploying configs directly with eAPI and Jinja
- Deploying Jinja templates via CloudVision configlets