ZERO TO HERO
BATCH-10 | RECORDED
Whatsapp: 8115430392
Email: office@devopsshack.com
SUCCESS STORIES
SR
Associate Vice
40 LPA President @ NatWest 29 LPA
Simranjeet Paran Santosh
15 LPA & 13 LPA
3.5X Hike
Cracked in USA
3 Offers
Whatsapp: 8115430392 | Email: office@devopsshack.com
Projects in DevOps BootCamp
Project-1 | Kubernetes Multi-Tier Capstone Mega Project
Project-2 | Helm Chart Multi-Tier Mega Project
Project-3 | GitOps With ArgoCD
Project-4 | Blue-Green Deployment
Project-5 | 11 Microservices Project Deployment
Project-6 | Dotnet Monitoring Project
Project-7 | Python Monitoring Project
Project-8 | Multi-Tier NodeJS + MySQL Project
Project-9 | Multi-Tier DotNET + MongoDB Project
Project-10 | Multi-Tier Python + Postgres Project
Project-11 | Monitoring Projects with Kubernetes, Prometheus, Grafana
Project-12 | Terraform & Ansible Corporate Project
Project-13 | HashiCorp Vault Project
Project-14 | App Deployment To Tomcat Server
Project-15 | Azure DevOps Project | Multitier NodeJS+ DataBase Project Deploy To
Webapp Using Classic Pipeline & Yaml Pipeline]
Project-16 | Azure DevOps Project | Multitier Java Project Deploy To AKS
Project-17 | Azure DevOps Project | Deploy 11-Microservice Based Application To Prod &
Dev
Project-18 | Virtual Browser Project
Project-19 | Shell Scripting Project
Project-20 | Gitlab CICD Project & GitHub Actions Project
Module 1: Introduction to DevOps & DevSecOps
1. Introduction to DevOps and DevSecOps
What is DevOps?
What is DevSecOps?
Differences between DevOps and DevSecOps
Benefits of implementing DevOps and DevSecOps
Evolution of DevOps (from traditional SDLC to DevOps)
2. Real-Time Corporate DevOps Workflow with Flow Diagram
Explanation of the DevOps lifecycle (CI/CD pipeline)
Overview of tools used at each stage (e.g., Git, Jenkins, Docker,
Kubernetes)
End-to-end process flow with practical examples
3. DevOps Team Structure
Different roles in a DevOps team (DevOps Engineer, Release
Manager, Security Engineer, etc.)
Responsibilities of each role
Collaboration between development, operations, and security teams
4. Day-to-Day DevOps Activities
Common daily tasks for DevOps engineers
Incident management and monitoring
Continuous integration, deployment, and delivery activities
Infrastructure management and automation
5. Deployment Strategies
Blue-Green Deployment
Rolling Deployment
Canary Deployment
Recreate Deployment
& More
Best practices for deployment
Module 2: Linux & Shell Scripting
1.Introduction to Linux
What is Linux?
Overview and Key Features
Linux Architecture
Linux File System Hierarchy & Key Directories
2. Virtual Machines (VMs)
Structure, Components, and Ports in VMs
Creating and Connecting to a VM via SSH
Managing Ports
3. Essential Linux Commands
File management commands (cp, mv, rm, etc.)
Viewing and editing files (cat, less, nano, vim)
Process management (ps, top, kill, etc.)
Disk usage commands (df, du)
Advanced file searching (find, grep, awk, sed)
4. Package Management
Using package managers like apt, yum
Understanding dependencies and repositories
Configuring custom repositories
5. File/Folder Permissions
Understanding read, write, execute permissions
Using chmod, chown, chgrp
Special permissions (setuid, setgid, sticky bit)
6. User & Group Management
Adding User/Groups Using basic & advanced ways
Modifying User/Groups Using basic & advanced ways
Deleting Users/Groups Using basic & advanced ways
Module 2: Linux & Shell Scripting
7. Process Management
Viewing Process [Static/Dynamic]
Running Process in Foreground Or Background
Kill/Stop A running Process
Forcefully Killing A Process
Setting Up Priority of a Process
Managing Process
8. Associate a New Elastic IP with An Existing Instance
Creating an EC2 Machine & giving it a permanent IP
9. Curl VS Wget Demo
curl, wget Usage with demo
Diff between the two
10. Directory Structure
11. Shell Script Website Monitor Project
A project create using shell script to monitor a website.
12. 10 Real-Time Shell Scripts with Demo
Module 2: Linux & Shell Scripting
7. Linux Networking
Networking in Linux
Network Interface
Network Model [OCI Model]
Routing
IP Addresses
Subnetting
Common Networking Commands
-ifconfig / ip
-netstat
-ping
-traceroute
-nslookup / dig
8. Linux Troubleshooting
Errors & Solutions with Examples
9. Shell Scripting Hands-on
Variables
Reading user input
Conditionals
Case statements
Loop
Functions
String manipulation
Arrays
Command line arguments
Error handling
Regular expressions
Pipeline & redirection
Debugging
Subshell & process control
Environment and configurations
Module 3: Git
1. Introduction to Git
What is Git and why use version control?
Key differences between Git, GitHub, GitLab, and
Bitbucket
Installation and initial setup of Git
2. Version Control & Git Basics
Types of version control systems (Centralized vs.
Distributed)
Creating a new repository (local and remote)
Understanding working directory, staging area, and
repository
Basic Git workflow: Add, Commit, Push, Pull
3. Essential Git Concepts
Daily usage & common Git commands
Cloning a repository
Creating branches
Committing changes
Pulling updates from the remote repository
Pushing changes to the remote repository
Module 3: Git
4. Git Branch Management
View Local & Remote Branches
Create Branches & Push to Remote
Delete Local & Remote Branches
5. Git Diff
Compare branches using diff command
Compare files using diff command
Compare commits using diff command
6. Git Merge & Rebase
Merge With Demo
Rebase With Demo
Which one to Use
7. Stash & Pop
Understanding Stash & Pop
Hands-On Example on Stash & Pop
Stash multiple files & pop specific file
8. Cherry-Pick
Understanding Cherry Pick
Implementing Git Cherry Pick
Module 3: Git
9. Tags
Understanding Tags in Github
Creating Tags in Git Repo
10. Git Squash With Demo
Combining commits Using Git Squash
11. Merge Conflicts
Understanding & Resolving Merge Conflicts
3 different Scenarios Of Conflicts & How to resolve them
12. Git Revert
Understanding & Implementing revert with Demo
13. Git Reset
Understanding & Implementing reset with Demo
Hard Reset
Soft Reset
Mixed Reset
Module 3: Git
14. Git Errors & Resolutions
Resolving merge conflicts
Handling detached HEAD state
Fixing "Git pull failed" errors
Undoing mistakes (e.g., using reset, revert, checkout)
Troubleshooting push/pull errors
15. Corporate Branching Strategy
Common branching strategies
Feature, release, and hotfix branches
Corporate Branching Strategy
16. INterveiw prep DOcuments
Comprehenisve Guide
Interview Q&A
Errors & Troubleshooting
Scenario Based
Module 4: Build Tools
1. Build Tools & Project Structure
Introduction to build tools (e.g., Maven, NPM, etc.)
Best practices for organizing project structure
Understanding build lifecycles, dependencies &
important files
2. Maven Hands-on
Understanding pom.xml structure
Adding dependencies and plugins
Building and packaging the project (mvn install, mvn
package)
Running unit tests with Maven (mvn test)
3. NPM Hands-on
Introduction to package.json
Installing, updating, and removing packages
Running scripts (npm run)
Managing dependencies (dependencies vs.
devDependencies)
Module 4: Build Tools
4. Building Multi-Tier Projects
Dotnet + MongoDB Project
Connecting and interacting with MongoDB
Building and running the project
NodeJS + MySQL Project
Connecting and interacting with MySQL
Deploying the project
Python + Postgres Project
Connecting and interacting with PostgreSQL
Building and deploying the project
5. Tomcat Server & Deploying Projects
Installing and configuring Apache Tomcat
Deploying WAR files to Tomcat
Automating deployment with scripts or CI/CD
Module 5: CI/CD Tools
CI/CD Tools Overview
Understanding CI/CD Tools
What is CI/CD?
Overview of popular CI/CD tools (Jenkins,
GitHub Actions, GitLab CI/CD)
What are the Best CI/CD Tools?
Comparison of various CI/CD tools
Jenkins
1. Jenkins Setup, Configurations, Plugins
Installing and configuring Jenkins
Installing essential plugins
2. Jenkins Jobs
Creating different types of jobs:
Freestyle jobs
Pipeline jobs
Multibranch pipeline jobs
3. Upstream & Downstream Jobs
Configuring job dependencies
Triggering upstream and downstream jobs
4. User Management
Managing user roles and permissions
Implementing role-based access control
5. Shared Libraries
Creating and using shared libraries for pipelines
Structuring reusable code for Jenkins
Module 5: CI/CD Tools
6. Parameters in Jenkins
Using parameters in Jenkins jobs
Building parameterized pipelines
7. Webhooks for Auto Triggering Pipeline Jobs
Configuring webhooks for auto-triggering jobs
Setting up multibranch pipeline triggers
8. Integrations
Integrating Jenkins with:
SonarQube (code quality analysis)
Nexus (artifact repository)
Docker (containerization)
Kubernetes (orchestration)
Security tools
9. Jenkins Mail Notifications
Configuring email notifications
Sending alerts for build failures and successes
10. Jenkins Backups
Backup and restore Jenkins configurations
11. Jenkins Errors & Troubleshooting
Resolving common Jenkins errors
Troubleshooting build and deployment issues
Module 5: CI/CD Tools
12. Post Actions
Adding post action in cicd Pipelines
13. Variables in Jenkins
Understanding & adding different types of variables in jenkins
14. Scenario based Jenkins Implementations
Implementing Different Scenarios In Jenkins
15. RBAC In Jenkins For User Management
Local LDAP Setup In Jenkins
Setting up RBAC using LDAP in Jenkins
16. Docker Containers As Jenkins Slave
Setting up Docker Cloud for slave
Creating Docker containers as Jenkins Agents
17. Integrating HashiCorp Vault in Jenkins
Setup Hashicorp Vault Server
Integrating Hashicorp Vault with Jenkins
18. Full Stack CI/CD Pipelines
Building 10+ full stack CI/CD projects with Jenkins
Module 5: CI/CD Tools
GitHub Actions
1. Complete Setup
Setting up GitHub Actions for projects
Setup Runners using a VM
Configuring workflows & Write the YAML Pipeline
2. Full Stack CI/CD Pipelines [Project-1]
Building complete CI/CD pipelines using GitHub Actions
3. Full Stack CI/CD Pipelines [Project-2]
Building complete CI/CD pipelines using GitHub Actions
GitLab CI/CD
1. Complete Setup
Configuring GitLab CI/CD for projects
Setup Runners using a VM
Understanding .gitlab-ci.yml & Write the YAML Pipeline
2. Full Stack CI/CD Pipelines
Building complete CI/CD pipeline using GitLab CI/CD
Module 6: SonarQube
1.Setting up SonarQube Locally, With Docker & In Kubernetes
Installing and configuring SonarQube locally With SSL
Setting up SonarQube using Docker
Deploying SonarQube in Kubernetes
3. Understanding Profiles & Rules
Configuring quality profiles
Best practices for maintaining code quality
4. Advanced Third-Party Plugin Installation
Installing third-party plugins
Enhancing SonarQube with additional capabilities
5. Branch Analysis (Developer Edition Feature for Free)
Analyzing different branches of a project
Understanding branch-specific code quality insights
6. Integrating with CI/CD Tools
Integrating SonarQube with Jenkins
Integrating with GitHub Actions and GitLab CI/CD
7. Generating and Exporting Reports in SonarQube (PDF, CSV,
HTML)
Creating code quality reports
Exporting reports in various formats (PDF, CSV, HTML)
Module 6: SonarQube
8. Configure SonarQube Webhook
Configure Sonarqube Webhook for Quality Gate Check
9. SonarQube Analysis with Maven (Code Coverage Enabled)
Performing SonarQube analysis on a Maven project
Analyzing code quality for maven projects
Enabling and measuring code coverage
10. SonarQube Analysis with NodeJS Project (Code Coverage
Enabled)
Performing SonarQube analysis on a NodeJS project
Analyzing code quality for NodeJS projects
Enabling and measuring code coverage
11. SonarQube Analysis with Python Project (Code Coverage
Enabled)
Performing SonarQube analysis on a Python project
Analyzing code quality for Python projects
Enabling and measuring code coverage
Module 7: Security Tools
1. Security Tools Overview
Introduction to security in DevOps (DevSecOps)
Importance of security scanning and vulnerability assessment
Overview of popular security tools
2. Trivy Setup & File System Scanning
Installing and configuring Trivy
Scanning Docker images, file systems, and repositories
Automating vulnerability scanning with Trivy
3. OWASP Dependency Check Setup & Usage
Installing OWASP Dependency Check
Analyzing dependencies for known vulnerabilities
Generating and interpreting security reports
4. Tools like Prowler, Dockle, OWASP ZAP
Prowler: AWS security best practices scanner
Dockle: Docker image security linting tool
OWASP ZAP: Web application vulnerability scanner
5. Security Tools Integrations With CI/CD
Integrating security scans with Jenkins, GitHub Actions, and GitLab
CI/CD
Automating security checks as part of the CI/CD pipeline
6. SBOM (Software Bill of Materials) Hands-On Usage
Understanding SBOM and its importance
Generating SBOMs
Module 7: Security Tools
1. Checkov
Checkov Security Tool for IAC config files
2. Gitleaks
Gitleaks to find if there is any sensitive data like
secrets, passwords, api keys exist in
github/source code
7. HashiCorp Vault
Setting up HashiCorp Vault
Secrets management (storing and retrieving
secrets securely)
Integrating Vault with applications and CI/CD
pipelines
Module 8: Nexus Artifact Management
1. What are Artifacts? How to Store them in Nexus?
Understanding artifacts (binaries, libraries, packages)
Role of artifact repositories in DevOps
Storing and managing artifacts using Nexus
2. Setup Nexus Locally & via Docker
Installing and configuring Nexus locally
Setting up Nexus using Docker
Accessing and managing Nexus via the web UI
3. Understanding Nexus Structure
Overview of Nexus components
Understanding repositories, groups, and hosted vs. proxy repositories
4. Nexus Cleanup Tasks
Configuring cleanup policies for old artifacts
Automating cleanup tasks using scheduled jobs
Best practices for maintaining repository health
5. Configuring Repositories, Artifacts
Creating and managing hosted, proxy, and group repositories
Managing artifact versions and retention policies
Setting up access controls for repositories
6. Publishing Maven & NodeJS Artifacts via CI/CD Pipeline
Configuring Maven to publish artifacts to Nexus
Publishing NodeJS packages to Nexus
Automating artifact publishing via Jenkins, GitHub Actions, or GitLab CI/CD
7. Setup Private Docker Registry
Configuring Nexus as a private Docker registry
Pushing and pulling Docker images from Nexus
Module 9: Docker
Containerization Deep Dive
1. Virtualization vs Containerization
Differences between virtualization and containerization
Advantages and use cases of containers over VMs
2. Docker Architecture
Understanding Docker components (Docker Client, Docker Daemon, Docker
Registry)
Role of Docker images, containers, and volumes
3. Understanding Docker Image, Dockerfile, Docker Container
What is a Docker image?
Creating Dockerfiles
Understanding and managing Docker containers
4. Install & Setup Docker With Proper Permissions
Installing Docker
Configuring Docker with proper permissions (e.g., adding users to the docker
group)
5. Writing Optimized Dockerfiles
Best practices for writing Dockerfiles
Minimizing image size and build times
6. ADD vs COPY & ENTRYPOINT vs CMD
Differences between ADD and COPY
Understanding ENTRYPOINT vs CMD and their use cases
7. Most Used Docker Commands
Essential Docker commands (docker run, docker ps, docker logs, docker exec, etc.)
Managing containers, images, networks, and volumes
8. Building Docker Images & Creating Containers
Building Docker images using Dockerfiles
Running containers from images
Module 9: Docker
1. Private Docker Registry
Setting up and using a private Docker registry (e.g.,
Nexus, Docker Hub)
Pushing and pulling images from the registry
2. Multi-Stage Dockerfiles
Building multi-stage Dockerfiles for optimized image
sizes
Practical examples with multi-tier applications
3. Docker Errors & Troubleshooting
Common Docker errors and solutions
Debugging container issues
4. Docker Compose with Project
Introduction to Docker Compose
Building and deploying multi-container applications
using Docker Compose
5. Docker Networking & Volumes
Understanding Docker networking
Working with Docker volumes for persistent storage
6. Scenario Based Docker Implementations
Implementing different scenarios in Docker
Module 9: Docker
Projects
1. Docker Project: Java based monitoring Project
Containerizing a Java-based application using Docker
2. Docker Project: DotNET based monitoring Project
Containerizing a DotNET-based application using Docker
3. Docker Project: NodeJS based monitoring Project
Containerizing a NodeJS-based application using Docker
4. Docker Project: Python based monitoring Project
Containerizing a Python-based application using Docker
5. Docker Project: Multi-Tier Java + MySql Project
Containerizing a Java-based application using Docker
6. Docker Project: Multi-Tier Dotnet + MongoDB Project
Building and containerizing a multi-tier Dotnet + MongoDB application
7. Docker Project: Multi-Tier NodeJS + MySQL Project
Building and containerizing a multi-tier NodeJS + MySQL application
8. Docker Project: Multi-Tier Python + Postgres Project
Building and containerizing a multi-tier Python + PostgreSQL
application
9. Docker Project: Virtual Browser
Building and containerizing a Virtual Browser
10. Docker Project: Virtual Browser
Building and containerizing a Virtual Browser
Module 10:Kubernetes
1. DetailedKubernetes Architecture
Understanding Kubernetes architecture (Master, Nodes, Control Plane)
Key concepts: API Server, Controller Manager, Scheduler, Kubelet
2. Deployments, Pods, Services, Secrets, ConfigMaps, Persistent
Volumes, Storage Class
Understanding and working with Deployments, ReplicaSets, and Pods
Using Services to expose applications
Managing Secrets and ConfigMaps
Using Persistent Volumes (PVs) and Persistent Volume Claims (PVCs)
Working with Storage Classes for dynamic provisioning
3. Service Types & Usage
Understanding different service types (ClusterIP, NodePort, LoadBalancer,
ExternalName)
Choosing the right service type for different use cases
4. Kubernetes Local Setup Using Kubeadm & ContainerD
Setting up a local Kubernetes cluster using kubeadm
Configuring ContainerD as the container runtime
Deploying a project on it
5. Kubernetes Networking
Understanding Kubernetes networking model
Network policies
Communications in K8
6. RBAC (Role-Based Access Control) in Kubernetes
Understanding RBAC concepts
Creating roles, role bindings, and cluster roles
Implementing least privilege principles
7. Highly Available K8s Cluster Setup Locally
Setting up a highly available Kubernetes cluster
Configuring load balancing for HA
Module 10:Kubernetes
8. Horizontal & Vertical Auto-Scaling & Rollback in K8s
Configuring horizontal pod autoscaling (HPA)
Implementing vertical pod autoscaling (VPA)
Performing rollbacks to previous deployments
9. Kubernetes Errors & Troubleshooting
Common Kubernetes errors and their solutions
Using kubectl logs and kubectl describe for debugging
10. Ingress Setup for App Deployed in K8s
Setting up Ingress controllers
Configuring Ingress rules for application routing
11. Custom Domain Mapping for App Deployed in K8s
Mapping custom domains to Kubernetes services
Configuring DNS records
12. SSL Certificate Setup for App Deployed in K8s
Setting up SSL certificates using Let’s Encrypt or other tools
13. HashiCorp Vault Dev & Production Setup
Setting up HashiCorp Vault in a Kubernetes environment
Configuring secrets management for applications
14. Helm Chart Complete Tutorial with Demo
Understanding Helm and its use cases
Creating and deploying applications using Helm charts
15. ArgoCD Tutorial with Hands-On Project
Setting up ArgoCD
GitOps implementation With ArgoCD
Module 10:Kubernetes
16. Stateful Sets in Kubernetes (With Demo)
Understanding Stateful sets in K8
Setting up MySql as a statefulset
Deploying a project with DB as statefulset
17. Service Mesh With Istio
Understanding Service Mesh
Implementing Service Mesh With ISTIO
Traffic Control inside K8 cluster using Service Mesh with ISTIO
18. ArgoCD
Understanding ArgoCD
CICD Using Jenkins+ ArgoCD
Module 10:Kubernetes
Projects [With EKS, Local K8]
Project-1 | Kubernetes Multi-Tier Mega Project
Project-2 | Helm Chart Multi-Tier Mega Project
Project-3 | GitOps with ArgoCD
Project-4 | Blue-Green Deployment [Project-1]
Project-4 | Blue-Green Deployment [Project-2]
Project-5 | 11 Microservices Project Deployment
Project-6 | GitHub Actions CICD (AKS)
Project-7 | Multi-Tier Project With Stateful set
Project-8 | A CAPSTONE PROJECT
Module 11: Azure DevOps
Understanding Azure DevOps & How It’s Different
from Traditional DevOps
Introduction to Azure DevOps
Key differences between Azure DevOps and
traditional DevOps approaches CI/CD Pipelines
Advantages of using Azure DevOps for cloud- 1. CI/CD Pipelines to Deploy to Azure Kubernetes
native projects Service (AKS)
Deploying applications to AKS using classic
Setting Up Azure Organisation build and release pipelines
Creating and configuring an Azure DevOps Deploying applications using YAML-based
organization pipelines
Managing teams, projects, and permissions
2. Java Project Deploy to Webapps
Core Services Deploying a Java project to Azure Web Apps
1.Azure Repos using Classic Pipeline
Version control using Git in Azure Repos Deploying a Java project using YAML-based
Managing repositories and pull requests Pipeline
2.Azure Pipelines
Overview of Azure Pipelines for CI/CD 3. Multitier Java Project Deploy to AKS
Classic build and release pipelines Deploying a multi-tier Java project to AKS
YAML-based pipelines using Classic Pipeline
3.Azure Artifacts Deploying a multi-tier Java project using
Using Azure Artifacts for package YAML-based Pipeline
management
Storing and managing packages 4. Multitier NodeJS + Database Project Deploy to
4.Azure Kubernetes Service (AKS) Webapp
Overview of AKS and its use cases Deploying a multi-tier NodeJS + Database
Deploying and managing containers in AKS project using Classic Pipeline
5.Azure Container Registry (ACR) Deploying a multi-tier NodeJS + Database
Setting up ACR to store container images project using YAML-based Pipeline
Pushing and pulling images to/from ACR
Creating Service Principal for Authentication in
Pipelines
What is a Service Principal?
Creating a Service Principal in Azure
Using Service Principal for authentication in
Azure DevOps pipelines
Module 12: Infrastructure as
Code (IaC)
Terraform Deep Dive
1. Infrastructure as Code Introduction
Understanding the concept of Infrastructure as Code (IaC)
Benefits of using IaC for infrastructure provisioning and
management
2. Understanding Terraform from Scratch
Introduction to Terraform and its use cases
Key concepts: Providers, Resources, and State
3. Terraform Setup
Installing Terraform
Setting up Terraform CLI and initial configuration
4. Terraform Credentials for AWS
Configuring AWS credentials for Terraform
Using environment variables for authentication
5. Writing & Understanding Terraform Code
Creating and structuring Terraform code
Key files:
-main.tf (main configuration)
-variables.tf (defining input variables)
-outputs.tf (defining outputs)
-tfstate files (state management)
-tfvars files (variable values)
6. Terraform Data Sources
Using data sources to automatically fetch resource information
Practical examples of using data sources (e.g., fetching VM
details)
Module 12: Infrastructure as
Code (IaC)
7. Terraform Import
Managing resources not created by Terraform using terraform import
Practical examples of importing existing infrastructure
8. Terraform Provisioners
Using provisioners for remote actions on infrastructure
Examples with remote-exec and local-exec
9. Terraform State Management with S3-Bucket
Configuring Terraform state backend using AWS S3
Enabling state locking using DynamoDB
10. Terraform Modules
Creating and using Terraform modules
Structuring reusable infrastructure code
11. Terraform Modules Multi-Environment Project
Setting up projects for multiple environments (dev, staging, production)
Best practices for managing environment-specific configurations
12. Terraform Workspaces
Using workspaces for managing multiple environments
Practical use cases of Terraform workspaces
13. EKS Creation with Terraform
Provisioning an AWS EKS (Elastic Kubernetes Service) cluster using Terraform
Configuring nodes, networking, and security groups
14. Terraform with Jenkins
Integrating Terraform with Jenkins pipelines
Automating infrastructure provisioning with CI/CD
15. Corporate Terraform Project
End-to-end project involving complex infrastructure provisioning using Terraform
Module 12: Infrastructure as
Code (IaC)
Ansible Deep Dive
1.Ansible Introduction
Overview of Ansible and its use cases
Agentless automation and configuration management
2. Ansible Modules
Understanding different types of Ansible modules
Examples of commonly used module
3. Ansible Plays & Playbooks
Writing Ansible playbooks for automation
Structuring plays and tasks
4. Ansible Collections
Using and creating Ansible collections
Managing reusable Ansible roles and modules
5. Ansible Roles
Creating and using Ansible roles for modular automation
Best practices for structuring roles
6. Ansible with Jenkins
Integrating Ansible with Jenkins pipelines
Automating configuration management with CI/CD
7. Ansible CI/CD Project
Building a real-world project using Ansible in CI/CD pipelines
8. Ansible Vault
Using Ansible Vault for encrypting sensitive data
Best practices for managing secrets with Ansible
9. Ansible with Terraform Project
Combining Terraform and Ansible for complete infrastructure automation
Practical project involving infrastructure provisioning and configuration
10. Ansible Static & Dynamic Inventory File
Module 13: Monitoring
1 3
2 4
Monitoring with Prometheus & Grafana
1. Prometheus, Node Exporter, Black Box Exporter, Grafana Local Setup & Monitoring
Introduction to monitoring and observability
Installing and configuring Prometheus
Setting up Node Exporter for system metrics
Using Black Box Exporter for external endpoint monitoring
Installing and configuring Grafana
Connecting Prometheus as a data source in Grafana
Creating custom dashboards and visualizations
2. Mail Notifications Based on Monitoring Project
Setting up alerting rules in Prometheus
Configuring Alertmanager for notifications
Sending alerts via email, Slack, or other integrations
3. Monitoring Tools Setup Using Docker
Running Prometheus, Node Exporter, Black Box Exporter, Alertmanager, and Grafana
using Docker
Managing monitoring stack with Docker Compose
4. Kubernetes Node Monitoring Project
Deploying Prometheus and Grafana in a Kubernetes cluster
Collecting and visualizing node-level metrics
Setting up alerts for CPU, memory, and disk usage
5. Application Monitoring in K8s Project
Monitoring application performance in Kubernetes
Using service discovery in Prometheus to scrape application metrics
Creating dashboards in Grafana for application-specific monitoring
6. Grafana + GitHub Mini Project
Integrating Grafana with GitHub for tracking repository activities
Visualizing GitHub metrics using Grafana dashboards
Module 14: Python For DevOps
Python Introduction
Why Python for DevOps?
Installing Python and setting up the environment
Writing and executing Python scripts
Datatypes, Variables & Best Practices in Python
Understanding Python datatypes (int, float, string, list, tuple, dict, set)
Variable declaration and best practices
Functions & Modules in Python
Defining and calling functions
Understanding function arguments (positional, keyword, default)
Creating and importing modules
Using built-in and third-party Python libraries
Control Statements & Loops in Python
if-else conditions
for and while loops
Loop control statements (break, continue, pass)
File Handling in Python
Reading and writing files (open(), read(), write())
Working with CSV and JSON files
File handling best practices
Python Socket Library
Understanding socket programming
Creating a simple client-server connection in Python
JSON Manipulation in Python
Parsing JSON data using Python
Creating and modifying JSON objects
Database Basics
Introduction to databases and SQL
Using Python with databases (PostgreSQL, MySQL)
Connecting to PostgreSQL
Setting up a PostgreSQL database
Connecting Python to PostgreSQL
Boto3 | AWS SDK for Python
Introduction to AWS SDK (boto3)
Automating AWS services
Docker SDK for Python
Introduction to the docker-py library
Automating Docker container management using Python
Running and managing containers programmatically
Kubernetes With Python
Using Python kubernetes-client SDK
Automating Kubernetes deployments using Python
Managing Kubernetes resources (pods, deployments, services)