Course Content
Introduction to DevOps on cloud
- Why Cloud?
- Introduction to Cloud Computing
- Why DevOps on Cloud?
- Introduction to AWS
- Various AWS services
- DevOps using AWS
Overview of DevOps
- Define DevOps
- What is DevOps?
- Why DevOps?
- History of DevOps
- DevOps Market Trends
- DevOps Engineer Skills
- DevOps Delivery Pipeline
- DevOps Ecosystem
- DevOps perspective
- DevOps and Agile
- DevOps Stakeholders
- DevOps Goals
Version Control and Git
- What is version control
- What is Git
- Why Git for your organisation
- Install Git
- Common commands in Git
- Working with Remote Repositories
Git, Jenkins & Maven Integration
- Introduction to Jenkins (With Architecture)
- What is CI
- Why CI is Required
- Branching and Merging in Git
- Git workflows
- Git cheat sheet
- Introduction to Maven
Continuous Integration using Jenkins
- Jenkins Management
- Build Setup
- Test Automation with Maven
- Securing Jenkins
- Notification System
- Adding a slave node to Jenkins
- Building Delivery Pipeline
Continuous Testing with Selenium
- Introduction to Selenium
- Why Selenium?
- Selenium – Webdriver
- Creating Test Cases in Selenium WebDriver (Waits)
- What and why is X-Path?
- Handling different controls on Webpage
- Framework in Selenium
- Selenium Integration with Jenkins
Configuration Management using Puppet
- Introduction to Puppet
- Puppet Installation
- Puppet Configuration
- Puppet Master and Agent Setup
- Puppet Module
- Node Classification
- Puppet Environment
- Puppet Classes
- Automation and Reporting
Configuration Management using Ansible
- Introduction to Ansible
- Ansible Installation
- Configuring Ansible Roles
- Write Playbooks
- Executing adhoc command
Containerization with Docker
- Understanding images and containers
- Shipping Transportation Challenges
- Introducing Docker
- Running Hello World in Docker
- Introduction to Container
- Container Life Cycle
- Sharing and Copying
- Base Image
- Docker File
- Working with containers
- Publishing Image on Docker Hub
Docker Ecosystem and Networking
- Introduction to Docker Ecosystem
- Docker Swarm
- Docker Compose
- Managing Containers
- Docker Container Networking
- Network Types
- Running Containers
Containerization using Kubernetes
- Understanding YAML
- Revisiting Kubernetes Cluster Architecture
- Introduction to Kubernetes
- Spinning up a Kubernetes Cluster on Ubuntu VMs
- Exploring your Cluster
- Kubernetes Cluster Architecture
- Creating a Deployment in Kubernetes using YAML
- Creating a Services in Kubernetes
- Installing Kubernetes Dashboard
- Deploying an App using Dashboard
- Using Rolling Updates in Kubernetes
Continuous Monitoring with Nagios
- Introduction to Nagios
- Installing Nagios
- Introduction to Continuous Monitoring
- Nagios Plugins(NRPE) and Objects
- Nagios Commands and Notification