A hands-on AWS learning project: deploying a Spring Boot employee management API through IAM, EC2, RDS, S3, an Application Load Balancer, and CloudWatch monitoring, with Auto Scaling still to come.
⚠️ Current status: the production EC2 instance was accidentally terminated during an EKS experiment — see the incident write-up under § Target Architecture ("Step 5, attempted and rolled back"). RDS and S3 are unaffected — no data lost. Recovery steps are in the Production Deployment Runbook.
- AWS_DEPLOYMENT_GUIDE.md — the full build log: every AWS step in order, with commands, screenshots, and the reasoning behind each decision. Start here.
- docs/architecture.md — standalone architecture diagram and traffic flow.
- docs/aws-steps.md — quick-reference checklist of the 14 AWS steps.
- docs/project-structure.md — planned service module breakdown.
- employee-service/ — the Spring Boot application (Employee CRUD, JWT auth, S3 profile pictures).
| Phase | What | Status |
|---|---|---|
| 1 | Spring Boot + MySQL, Employee CRUD | ✅ |
| 2 | Spring Security + JWT | ✅ |
| 3 | Deploy to EC2 | |
| 4 | Application Load Balancer | ✅ ALB up, target group needs re-registration after recovery |
| 5 | RDS | ✅ unaffected by the EC2 incident |
| 6 | S3 File Upload | ✅ unaffected by the EC2 incident |
| 7 | SQS Notification Service | ⏳ not started |
| 8 | Redis Cache | ⏳ not started |
| 9 | Auto Scaling + CloudWatch | 🟡 CloudWatch done, Auto Scaling not started |
| — | CI/CD → EKS (target architecture) | 🔄 Dockerfile/ECR/Jenkins pipeline done and reusable; EKS attempt rolled back (Free Tier instance-type limit) |