Introduction
Welcome to the CS 312 Labs! Each lab is a hands-on exercise that builds the skills you need for the corresponding Minecraft assignment. Labs use WordPress (weeks 2-6) and nginx (weeks 7-9) as practice services; the same concepts transfer directly to your assignments.
- Week 1
- Lab 1a: The Bare Metal — Disassemble and reassemble a physical PC.
- Lab 1b: AWS Academy Onboarding — Launch an EC2 instance, connect via SSH, and configure Security Groups.
- Week 2: Manual WordPress Server on EC2 — Install Apache and PHP, set up a separate database tier (RDS or EC2), and deploy WordPress with proper VPC networking.
- Week 3: Containerizing WordPress with Docker Compose — Replace manual setup with containers and volumes.
- Week 4: ECR, S3 Backups, and Version Switching — Use a private registry, backup to S3, and practice rollbacks.
- Week 5: Terraform: Your First Infrastructure Stack — Define and provision cloud infrastructure as code.
- Week 6: Ansible Playbook and GitHub Actions Pipeline — Automate configuration and build a CI/CD pipeline.
- Week 7: k3s on EC2: First Kubernetes Deployment — Install k3s and deploy with Deployments, Services, and ConfigMaps.
- Week 8: Kubernetes Operations — Add probes, resource limits, rolling updates, and practice failure drills.
- Week 9: Observability Workshop — Deploy Prometheus and Grafana, build dashboards, define alerts, and run an incident drill.
- Week 10: Make-up lab — Open lab for catching up on incomplete work.
Each lab builds practical skills in system administration, automation, and cloud infrastructure.