Hands-On Labs
Practical exercises to build platform engineering skills.
Lab Environment Setup
Local Development
- Docker Desktop
- Minikube/Kind
- Terraform
- AWS CLI
- kubectl
Cloud Sandboxes
- AWS Free Tier
- Google Cloud Free Credits
- Azure Free Account
- Civo Cloud
Kubernetes Labs
Lab 1: Deploy Microservices
Objective: Deploy a multi-tier application on Kubernetes
Tasks:
- Create namespace and resource quotas
- Deploy frontend, backend, and database
- Configure services and ingress
- Implement horizontal pod autoscaling
- Set up persistent storage
Skills: Deployments, Services, ConfigMaps, Secrets, HPA, PVC
Lab 2: Implement GitOps
Objective: Set up ArgoCD for continuous deployment
Tasks:
- Install ArgoCD on cluster
- Connect Git repository
- Create application manifests
- Implement sync policies
- Configure automated rollbacks
Skills: GitOps, ArgoCD, Helm, Kustomize
Infrastructure as Code Labs
Lab 3: Multi-Region Infrastructure
Objective: Deploy infrastructure across multiple AWS regions
Tasks:
- Create VPC with public/private subnets
- Set up VPC peering
- Deploy RDS with read replicas
- Configure Route53 for failover
- Implement CloudFront CDN
Skills: Terraform, AWS networking, High availability
Lab 4: Serverless Platform
Objective: Build event-driven serverless architecture
Tasks:
- Create Lambda functions
- Set up API Gateway
- Configure EventBridge rules
- Implement DynamoDB tables
- Add CloudWatch monitoring
Skills: Serverless, Event-driven architecture, AWS Lambda
CI/CD Labs
Lab 5: Complete CI/CD Pipeline
Objective: Build end-to-end automated deployment pipeline
Tasks:
- Set up GitHub Actions workflow
- Implement unit and integration tests
- Add security scanning (SAST/DAST)
- Configure multi-environment deployments
- Implement approval gates
Skills: GitHub Actions, Testing, Security, Deployment strategies
Observability Labs
Lab 6: Full-Stack Monitoring
Objective: Implement comprehensive observability solution
Tasks:
- Deploy Prometheus and Grafana
- Configure service mesh with Istio
- Set up distributed tracing with Jaeger
- Create custom dashboards
- Implement SLO-based alerts
Skills: Prometheus, Grafana, Istio, Jaeger, SRE practices
Security Labs
Lab 7: Zero-Trust Security
Objective: Implement security best practices
Tasks:
- Set up OIDC authentication
- Implement RBAC policies
- Configure network policies
- Add admission controllers
- Implement secrets management
Skills: Security, RBAC, Network policies, OPA
Challenge Projects
Project 1: Build a Platform
Duration: 1 week
Requirements:
- Multi-tenant Kubernetes platform
- Self-service developer portal
- Automated provisioning
- Cost tracking
- Compliance automation
Project 2: Disaster Recovery
Duration: 3 days
Requirements:
- Implement backup strategies
- Test failover procedures
- Document RTO/RPO
- Automate recovery
- Chaos engineering tests
Lab Resources
Sample Applications
Learning Platforms
- Katacoda (interactive scenarios)
- A Cloud Guru (hands-on labs)
- Linux Academy
- Pluralsight labs