Best DevOps Institute in Lahore

DevOps Course Outline

Introduction

  • IT Infrastructure
  • Waterfall Model
  • Agile Methodologies
  • Introduction to DevOps
  • DevOps Road Map

Ubuntu

  • History
  • Pros & Cons
  • Distributions
  • Virtualization
  • Shells, GUI, Terminal
  • File System
  • Directories
  • Commands
  • Permissions, User, Groups
  • Crontab
  • Text Editors, Other Essential tools
  • Backup Techniques
  • I/O Redirection
  • Partitions

Networks & Security

  • OSI Model
  • TCP/IP Fundamentals
  • DNS
  • Http/s
  • SSL
  • FTP

Cloud Computing

AWS

  • Introduction to Cloud Computing
  • Private, Public and Hybrid Cloud
  • IaaS, PaaS and SaaS.
  • Introduction to AWS
  • AWS Architecture
  • Domains of AWS
  • AWS Compute Services (EC2, Lambda)
  • Storage Service (S3)
  • Networking Services
  • AWS CloudFront

Monitoring & Management (AWS CloudWatch)

  • Auto-Scaling & Load Balancer
  • Cloud Security
  • AWS IAM
  • Amazon Redshift

Azure

  • Azure Fundamentals
  • Active Directory
  • RBAC
  • Compute Services (App Services, Function Apps, VMs, CDN)
  • Storage Services (Storage Account, Databases, etc.)
  • Networks and App Gateway
  • Monitoring & Auto Scaling
  • Automation Account
  • Azure Analytics Workspace

Scripting

Bash

  • Shell Scripting Introduction
  • Syntax
  • Variables
  • Operators
  • Conditionals
  • Loops
  • Command Substitution
  • Parameter Substitution
  • Functions

PowerShell

  • Introduction
  • Syntax
  • Examples

Python

  • Introduction
  • Syntax
  • Variables
  • Datatypes
  • Conditionals
  • Loops
  • Arrays
  • Functions
  • Classes/Objects
  • Inheritance
  • Scripting
  • Examples

YAML

  • What is YAML language
  • YAML Basic Syntax
  • Data types: Integers, Bool, Arrays, Dictionaries, Null, Set, Strings
  • Multiline Strings
  • Anchors and Extensions
  • YAML Placeholders
  • Docker Compose & Kubernetes YAML examples
  • PyYAML Python Module
  • Sample Python scripts

Version Control System

  • What is Git?
  • Different Git Vendors.
  • Using Git (Command line + GUI).
  • Installing Git (Linux + Windows)
  • Configuring Git.
  • Cloning a Repository
  • Basic Git Flow.
  • Essential Commands.

CI/CD

Jenkins

  • Introduction
  • What is Continuous Integration?
  • What is Continuous Deployment?
  • What is Jenkins?
  • Jenkins Installation, Setup and Demo
  • Jenkins Master-Slave architecture
  • Jenkins Pipeline
  • What is a Jenkinsfile?
  • Pipeline Concepts
  • Create your first Pipeline

Azure DevOps

  • Introduction
  • Azure Boards
  • Azure Repos
  • Pipelines

AWS DevOps

  • Introduction
  • AWS DevOps Components
  • Building a CICD Pipeline on AWS

Containerization “Docker”

  • What is Docker?
  • What is a Container?
  • Docker vs Virtual Machine
  • Docker Installation
  • Main Docker Commands
  • Debugging a Container
  • Demo Project Overview
  • Developing with Containers
  • Docker Compose
  • Dockerfile
  • Private Docker Repository, Rrivate Registry on AWS, Azure Container Registry
  • Deploy Containerized App
  • Docker Volumes
  • Volumes Demo

Orchestration

Kubernetes

  • What is K8s
  • Main K8s Components
  • K8s Architecture
  • Minikube and kubectl -Local Setup
  • Main Kubectl Commands – K8s CLI
  • K8s YAML Configuration File
  • Demo Project: MongoDB and MongoExpress
  • Organizing your components with K8s Namespaces
  • K8s Ingress explained
  • Persisting Data in K8s with Volumes
  • Deploying Stateful Apps with StatefulSet
  • K8s Services explained

Helm

  • Helm Introduction
  • Helm 2 Vs Helm 3
  • Installing Helm
  • Helm Charts
  • Helm Dependencies
  • Helm Templates
  • Helm Commands

IaC

Terraform

  • Introduction
  • AWS Setup
  • Windows Setup
  • Linux Install
  • VSCode
  • Terraform Overview
  • Modifying Resources
  • Deleting Resources
  • Referencing Resources
  • Terraform Files
  • Practice Project
  • Terraform State Commands
  • Terraform Output
  • Target Resources
  • Terraform Variables

ARM Template

  • Building templates
  • Deployment options
  • Testing templates
  • Template syntax and example resources
  • Template parametrization
  • Template functions

AWS CloudFormation

  • AWS CloudFormation
  • AWS CloudFormation Components
  • Templates in CloudFormation
  • Stacks in CloudFormation
  • Direct Update
  • Update

Configuration Management “Ansible”

  • Introduction to Ansible
  • Ansible Playbook Tutorial
  • Ansible Explained
  • Writing Ansible Playbook
  • Ansible Tower Tutorial
  • Ansible vs Terraform

Monitoring & Logging

Prometheus

  • Introduction
  • What is Prometheus?
  • Why Prometheus?
  • Continuous Monitoring with Prometheus
  • Prometheus Architecture
  • Prometheus Metrics and its Metrics
  • Prometheus Installation and Demo

 

Grafana

  • Introduction
  • Continuous Monitoring in DevOps
  • Introduction to Grafana
  • Monitoring with Grafana

Datadog

  • Introduction
  • Integrations
  • Infrastructure
  • Host Map
  • Events
  • Dashboards
  • Assigning Tags
  • Using Tags
  • Datadog Graphing

ELK

  • What is ELK stack?
  • Various ELK tools
  • Components of ELK
  • ELK Flow
  • Features of ELK
  • Installation

Servers

Apache

  • What is Web Server?
  • Installation
  • Managing Service
  • Main Configuration File

IIS

  • What is IIS and how it works?
  • Installation
  • Web Platform Installer Tool?
  • Hosting Website.
  • What are bindings?
  • What are application pools?

Nginx

  • What is Nginx?
  • Nginx Architecture
  • Why should we use Nginx?
  • How to Install Nginx?
  • Hands-On: Deploying a Web Application on Nginx

Case studies for DevOps implemented Projects

  • Monolithic vs Micro-Services Architecture
  • Deployment Models
  • Case Study for Monolithic App.
  • Case study for Containerized Application
  • Case Study for the Architecture managed through IaC.
  • Case Study for a completely managed Deployment Model through CI/CD