Detailed Course Outline
Day 1 - Course Introduction
Introduction to DevOps and Event Driven Infrastructure
- DevOps
- Infrastructure as Code
- Event Driven Infrastructure (EDI)
Using Docker for DevOps
- Introduction to Docker Containers
- Installing and Configuring Docker
- Managing Docker Networking
- Managing Applications Running in Docker
- Monitoring and Troubleshooting Docker
- LAB 1: Using Docker Containers
Using GitLab as a Configuration and Code Repository
- Version Control Workflow
- Git and GitLab Explained
- GitLab Install Overview
- Creating GitLab Projects
- Creating Git Repositories
- Staging and Committing Files
- Cloning and Pushing Repository Data
- Branching and Merging
- Resolving Merge Conflicts
- LAB 2: Using GitLab
Day 2
Using Ansible to Manage Networking Devices
- Review of Ansible Basics
- Using Ansible with Jinja2 Templates
- Using Ansible to Enforce Network Design Constraints using Templates
- Using Ansible for (NOOB) deployments while maintaining Idempotency
- Creating Multi-Vendor Playbooks
- Using Ansible to Check Code In and Out of GitLab
- Using GitLab with Ansible for Automated Version Control
- Using Ansible for Auditing
- Using Ansible with Vagrant
- LAB 3: Using Ansible for Network Deployments
Day 3 Robot Framework
- Robot Overview
- Perform Automated Testing using Robot
- The pybot_jrouter Modules
- Automated Testing - Use Case
- LAB 4: Using the Robot Framework for Automated Testing on Junos Devices
Jenkins
- Jenkins Overview
- Importing Jobs into Jenkins
- Implementing Continuous Integration
- Git Module
- Robot Module
- Ansible Module
- LAB 5: Using Jenkins to Implement Continuous Integration