DevOps Lab Exercises (100+)

🔰 Basic Level (30+ Exercises)

 

Goal: Learn fundamental DevOps concepts, tools setup, and basic automation.

 

Version Control with Git

  • Initialize a Git repository and commit files.

  • Create and switch between Git branches.

  • Merge branches and resolve conflicts.

  • Use Git stash and rebase commands.

  • Collaborate using GitHub repositories.

Linux & Shell Scripting

  • Write a shell script to create user accounts.

  • Schedule tasks using cron jobs.

  • Create scripts to monitor disk usage.

  • Archive and compress logs with shell scripts.

  • Set file permissions and ownership using chmod and chown.

Basic CI/CD Concepts

  • Set up a basic Jenkins pipeline.

  • Trigger builds on GitHub commit.

  • Install and configure Jenkins plugins.

  • Use Jenkins to build and deploy a static website.

  • Send email notifications on build status.

Container Basics (Docker)

  • Install Docker and run a Hello World container.

  • Build a Docker image from a Dockerfile.

  • Create and run multi-container apps using Docker Compose.

  • Push and pull images from Docker Hub.

  • Inspect logs and container stats.


 

🚀 Intermediate Level (40+ Exercises)

 

Goal: Implement container orchestration, advanced CI/CD workflows, infrastructure as code, and monitoring.

 

Advanced Jenkins Pipelines

  • Create multi-branch pipelines.

  • Integrate Jenkins with SonarQube for code analysis.

  • Use shared libraries in Jenkins.

  • Deploy to multiple environments (dev/stage/prod).

  • Secure credentials using Jenkins secrets.

Infrastructure as Code (IaC)

  • Write a basic Terraform script for EC2 instance.

  • Create a VPC with subnets and routing using Terraform.

  • Use Ansible to install packages across multiple servers.

  • Automate Apache server configuration using Ansible.

  • Integrate Ansible with Jenkins pipeline.

Docker and Kubernetes

  • Deploy a multi-tier app on Kubernetes.

  • Create and manage Pods, Services, and Deployments.

  • Set up Kubernetes ConfigMaps and Secrets.

  • Scale applications using kubectl.

  • Use Helm to install and manage packages.

Monitoring & Logging

  • Install and configure Prometheus and Grafana.

  • Monitor container metrics with cAdvisor.

  • Use ELK stack for centralized logging.

  • Create alerts based on CPU/Memory thresholds.

  • Set up application logging in Docker containers.


 

🧠 Advanced Level (40+ Exercises)

 

Goal: Design production-grade systems with CI/CD, automation, security, and resilience.

 

Cloud and Multi-Cloud

  • Provision EC2, S3, and RDS using Terraform.

  • Set up CI/CD pipeline on AWS CodePipeline.

  • Deploy a Kubernetes cluster using EKS.

  • Integrate AWS IAM roles in deployments.

  • Deploy a web app across AWS and Azure using Terraform.

Security and Compliance

  • Scan Docker images for vulnerabilities.

  • Use HashiCorp Vault for secret management.

  • Enable 2FA in Jenkins and GitHub.

  • Audit Kubernetes cluster using kube-bench.

  • Configure firewall rules using Terraform.

Advanced CI/CD Workflows

  • Create canary deployment pipeline in Jenkins.

  • Implement blue-green deployment strategy.

  • Configure GitOps using ArgoCD.

  • Use CircleCI to deploy serverless functions.

  • Trigger rollback on failed deployment automatically.

Site Reliability & Scaling

  • Implement auto-scaling in Kubernetes.

  • Set up service mesh using Istio.

  • Use chaos engineering tools like Gremlin or Chaos Mesh.

  • Simulate load testing with JMeter.

  • Create a disaster recovery plan with backups and replication.

Performance & Optimization

  • Measure API latency and throughput with Prometheus.

  • Optimize Docker images for size and speed.

  • Enable caching for build and deployment pipelines.

  • Tune Kubernetes HPA and resource limits.

  • Use CI/CD matrix builds for parallel testing.

Scroll to Top