DevOps Course Content- Prakash (3.
5 Months)
As a DevOps Engineer what should we know
• How to Provision Infrastructure: AWS/Cloud
• How to Automate Infrastructure Provision: Terraform, Ansible
• How to Automate Configuration: Ansible
• How to Monitor Infrastructure: Nagios
• How to achieve Version Control: Git, Gihub/Bitbucket
• How to Integrate and Deployed Applications: Jenkins, Maven
• How to Run Application & Microservice: Docker, Pods, Cloud
VM
• How to Manage Docker: Kubernetes, Docker Swarm
• How to Monitor Kubernetes based environment: Prometheus
• How to Automate process: Shell Script, YAML, HCL
Module-1: DevOps Introduction (3 Hours)
● What is DevOps?
● DevOps Roles
● DevOps Necessities
● DevOps Problems & Solution
● Making a DevOps Transition
● DevOps: Continuous Delivery and Benefits
● DevOps: Lean thinking, a change of culture
● Linux Fundamentals
● Commands in Linux
Prakash-Ethans Pimple Saudagar Pune
● Networking Concepts
Module 2 – Cloud Computing and Amazon Web Services
Introduction (12 Hours)
● Introduction to Cloud Computing, Service Models, Deployment Models.
● AWS Overview
● Create an AWS account and browse the components
● Recognize AWS Global Infrastructure
➢ AWS Regions
➢ AWS Availability Zones
● Describe the security measures AWS provides
● Hosting a web App on Amazon Web Service
● AWS VPC
➢ VPC Overview
➢ VPC creation and Lab
➢ Subnet management
● AWS Compute Services:
➢ EC2 Overview
➢ EC2 Type
➢ Security Groups
➢ Elastic Load Balancer Overview, ELB type and ELB Lab
➢ Auto Scaling and Lab
● AWS IAM Service:
➢ IAM User
➢ IAM Policy
➢ IAM Role
➢ IAM Groups
● AWS S3 storage service
➢ S3 Storage Classes,
➢ S3 Policy,
➢ S3 Lifecycle Management.
Module 3 – Continuous Integration with Jenkins (15 Hours)
● Introduction to Continuous Integration
● Introduction to Version Control (GIT)
● GIT commands and GitHub
● Configuration Management and Automation
● Jenkins: Introduction and installation
● Jenkins Configuration
● Installing Artifactory
● Setting Up Version Control system
Prakash-Ethans Pimple Saudagar Pune
● Jenkins Maven Integration
● Jenkins Best Practices
● Jenkins Master Slave Architecture
● Integrate SonarQube for static code analysis
Module 4 – Ansible for configuration management (12 Hours)
● Introduction of Ansible tool
● Introduction to YAML Syntax
● How to Installation Ansible?
● Ansible: First Playbook
● Ansible: First Playbook demo
● Basic: Running Commands
● Ansible: Roles, Files and Handlers
● Utilizing Ansible Vault for Encryption/Decryption
● Ansible: Best Practices
Module 6 – Docker Session & Orchestration Tools (12 Hours)
• Introduction to Docker and Docker installation
➢ What is a Docker
➢ Why docker
➢ Use case of Docker
➢ Dockers vs. Virtualization
➢ Installing Docker on Linux.
➢ Docker commands.
• Docker Architecture
➢ Docker Architecture.
➢ Understanding the Docker components
➢ Docker best practices.
• Docker Hub and Docker Image Repository
➢ Downloading Docker images.
➢ Uploading the images in Docker Registry and own registry.
➢ Understanding the containers
➢ Running commands in container.
➢ Running multiple containers.
• Docker Custom images
➢ Creating a custom image though dockerfle.
➢ Running a container from the custom image.
➢ Publishing the custom image.
• Docker Networking
➢ Understanding of docker networks
Prakash-Ethans Pimple Saudagar Pune
➢ Docker network creation and management.
➢ Accessing containers
➢ Linking containers
• MicroService Deployment
➢ Create Dockerize application
➢ Understanding microservice architecture.
➢ Deploying microservice to docker container
• Overview of Docker Compose and Docker Swarm
➢ Overview of Docker compose
➢ Terminology in Docker compose
➢ Build applications using Docker compose
➢ Docker Swarm Functioning
➢ Swarm cluster creation
➢ Docker container communication in cluster.
Module 7 – Kubernetes (12 Hours)
• Kubernetes Introduction
➢ What is Kubernetes
➢ Why Kubernetes
➢ Kubernetes advantages over other container management tools
• Kubernetes Installation and Cluster Setup
➢ Installation and cluster creation
➢ Understanding various installation methods
• Kubernetes Components
➢ Kubernetes features
➢ Kubernetes pod creation
➢ Kube API Server
➢ Kube Controller Machine
➢ Kube etcd
➢ Kube Scheduler
➢ Replica sets/Replication Controller
• Kubernetes Deployment
➢ Deploying dockerize application to the Kubernetes cluster
➢ Kubernetes scaling Management
➢ Working with Labels
• Kubernetes Architecture
Prakash-Ethans Pimple Saudagar Pune
➢ Understanding of Kubernetes Architecture
➢ Exploring Kubernetes Master and Node component
Module 8 – Terraform (9 Hours)
• What is Terraform
• Build infrastructure using Terraform code
• Change, destroy, manage infrastructure
• Integrating Terraform on AWS
• Updates to existing setup using Terraform
Module 9 –Nagios (4 Hours)
• Nagios Architecture.
• Performance and Automated Monitoring
• Nagios plugins to monitor application performance
Interview Question and Queries:
Resume Preparations
7 mini Projects included in Training (14 Hours)
● Project 1: Automating Webserver and Website hosting with Ansible
● Project 2: Microservices Automation and Deployment Using AWS and Docker
● Project 3: End to End Continuous Delivery Automation with Git, Jenkins, Ansible including
Continuous Integrations, Continuous Testing and Continuous Deployment Pipeline
● Project 4: Packaging Microservices on Docker Containers
● Project 5: Complete CI/CD pipeline setup using Git, Jenkins, Tomcat, AWS
● Project 6: CI/CD by Dockerizing a Jenkins Pipeline.
● Project 7: CI/CD Pipeline setup through Jenkins Pipeline Job.
Prakash-Ethans Pimple Saudagar Pune