DevOps Course Content
Master DevOps on Cloud with 9 Projects
DevOps is a culture which is adopted by all IT teams like Developer/Testing and any
operations team like DBA/System Admin/Unix Team so that they all can participate
together in the entire SDLC lifecycle, from design through the development process to
production support. Real Experience DevOps professionals are less in Market & there is
high Demand for Experienced and well-Trained Professional with Project
Knowledge.
Even Fresher can join this and showcase that they have DevOps Knowledge in their CV
which will attract Recruiter because DevOps is in all Phases of SDLC-
Development/Building/Releasing/Support/Monitoring.
This Project Based Training is mainly for clearing your JOB Interviews and
here we will understand every Tools with respect to Real Life Projects
described below, so that you can showcase 4 years of Level 3 experience in
Interview.
Project Based Course Modules
Major CICD Project 1 – Deploying Developed Changes to
Production server using Jenkins Plugin by Manual
Configuration of the Servers.
Module 1: DevOps Essentials Learning Objectives
Introduction to DevOps
DevOps Delivery Pipelines DevOps EcoSystem
DevOps and SDLC
Continuous Integration & Continuous Deployment
Containerisation
Configuration Management Tools
Module 2: AWS for DevOps (Covered in the entire course Term wrt Projects)
Project A – Migration of a Static Web Application from On-premise to Cloud -
AWS
Creating AWS account
Free tier Eligible services
Understanding AWS Regions and availability zones
Understanding Network IP ranges like Public & Private and calculation of CIDR
VPC (Virtual Private Cloud)
EC2 (Elastic Computing Cloud)
ACM (Amazon Certificate Manager)
S3 (Simple Storage Service)
EIP (Elastic IP address),
EBS (Elastic Block Storage)
Load Balancer
IAM (Identity Access Management)
AMI (Amazon Machine Image)
Module 3: Overview of Systems Administration - Linux (Covered in the entire
course Term wrt Projects)
Project B – Writing a Shell Script using Linux Commands and shell scripting
basics to install softwares and tools in Linux.
What is Operating System with Architecture
Linux Role in DevOps
Introduction to Linux Basics and Flavours of Linux
Overview of Linux commands necessary for DevOps (Total 8 Chapters covering
most of the commands)
What is Shell and Shell Scripting
Understanding Shell Script with Variables, Loops and Conditions and Covering
Project 2
Unix and Linux difference
Changing file permissions and ownership
Types of links soft and hard link
Filter commands
Simple filter and advance filter commands
Start and stop services
Find and kill the process with id and name
Package installation using RPM and YUM
Connecting windows and Linux instances (Covered while studying Chef)
Module 4: Discussing Techstacks Apache, Tomcat
Project C.1 – Run a Web Application on Single node Architecture
Project C.2 – Run a Web Application on Multi Node Architecture with HA and
Failover
Project C.3 – Run multiple web Application in one Single Node
Project C.4 – Secure a Web Application from Hackers and increase SEO
Installing Apache, Tomcat and Maven
Configuring Apache & Tomcat
Troubleshooting Apache & Tomcat
Performance tuning Tips for Apache & Tomcat
Using Virtual Host Concepts
Securing Apache using SSL and ACM
Deploying web application in Tomcat Manually
Module 5: Build Tool – Maven
Project D.1 – Creating a Project and building a jar file
Project D.2 – Creating & Deploying Web Application to Server using Maven
Installation and Configuration
Build Pre-requisites & Creating Builds
Understanding Maven Life Cycles and its components
Maven Repository and POM Examples
Maven Dependencies & Plugins
Maven Project Creation & Structure
Maven Deployment
Module 6: Source Control Tool – Git
Project E.1 – Merging code from develop to master branch
Project E.2 – Restore deleted commits
Project E.2 – Pushing code to Remote code repo
SVN (CVCS) vs GIT (DVCS)
Introduction of Version Control Systems. GIT Workflow
Important GIT Commands Setup and Configuration
Setup and Configuration Creating Repositories
Gitignore
Understanding Git Branch & Git Remote
Create and Configure Users
Git Remote commands
Module 7: Jenkins
Project F.1 – Configure Jenkin job to auto deploy if git repo is committed with
new code
Project F.2 – How to Change Home Directory and Port
Project F.3 – Disable Multiple Jenkins jobs from backend
Download and Install Jenkins
Configuring and Managing Jenkins
Create Jobs
Download the Jenkins plugin
Build a Job
How to change the Home Directory, Port and thread
Jenkins CLI
Unlock Super accounts
Major CICD Project 2 – Deploying Developed Changes to
Production servers using Chef.
Module 8: Chef
What is Configuration management
What is Chef and Chef Architecture
Ruby and Chef Basics
Recipes and Cookbooks
Create Workstation
Registration of Chef Nodes with the Chef Server - Bootstrapping
Cookbook and recipe test in your workstation – local nodes
Upload Cookbook and add the RUN list of the node
Run the chef-client in webserver1 and then put it in CRON
Create a template folder in the Workstation server
RUN the Recipe locally
Run remotely from workstation directly
Project
Major CICD Project 3 – Deploying Developed Changes to
Production servers using Ansible.
Module 9: Ansible
What is Ansible?
Ansible Architecture
Advantages of Ansible
Install Ansible
Validate
Inventory File
Configuration of Linux Server
Ansible Ad-hoc commands
YAML – Yet Another Markup Lang
Ansible Playbook
Ansible Roles
Project
Major CICD Project 4 – Deploying Developed Changes to
Production servers using on Docker.
Major CICD Project 5 – Docker Project - Auto Deploy
without restart of Tomcat
Module 10: Docker
Problems Before Docker
After Docker
Docker Architecture
Install Docker
Docker Images and Pull
Run Docker Images and check docker process
Docker start/stop/attach/exec/inspect/detach
Docker Port and Volume Mapping
Dockerfile
Docker Compose
Project 4 & 5
Major CICD Project 6 – Deploying Developed Changes to
Production servers using on Docker Swarm. (Home Work)
Major CICD Project 7 – Deploying Developed Changes to
Production servers using on Docker Swarm using Ansible.
Module 11: Docker Swarm
Problems Before Docker Swarm
What is Docker Swarm
Docker Swarm Advantages
Configure Docker Swarm
Node Management
How to Convert Worker Node as Manager Node
Docker service creation & Management
Service Scale Up and Down
Deploy a stack to a swarm
Set up a Docker registry
Create the example application
Test the app with Compose
Push the generated image to the registry
Deploy the stack to the swarm
Project 6 & 7
Major Project 8 – Creating Kubernetes Cluster using
Kubeadm
Major Project 9 – Creating Kubernetes Cluster using Kops in
AWS
Module 12: KUBERNETES
Introduction
Why and what is Kubernetes
Kubernetes Objects
Kubernetes Architecture
Pods
Service
Volume
Create a Cluster using Kubeadm, Minikube
Using kubectl to Create a Deployment
Using a Service to Expose Your App
Scale Your App
Kops ON AWS
Using kubeadm to Create a Cluster