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