Detailed Course Outline
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 Benefits
- 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
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
- Managing Devices Running Junos OS using Ansible Roles
- Creating Multivendor Playbooks
- Using GitLab with Ansible for Automated Version Control
- Using Ansible for Auditing
- Using Ansible with Vagrant
- LAB 3: Using Ansible in a DevOps Environment
Robot Framework
- Robot Overview
- Examine the pybot_jrouter Module
- Creating Robot Framework Keywords
- Creating Robot Framework Resource Files
- Perform Automated Testing using Robot
- Automated Testing - Use Case
- LAB 4: Automation Testing with the Robot Framework
Jenkins
- Jenkins Overview
- Creating Process Automation using Jenkins
- Installing and using the Robot Plugin for Jenkins
- Retrieving Repository Data from a Git Repository
- Executing Ansible Playbooks from within Jenkins
- Lab 5: Junos Process Automation with Jenkins
- LAB 5: Using Jenkins to Implement Continuous Integration