Practical project developed for the study, evolution, and demonstration of knowledge in:
- AWS EC2
- AWS SSM
- AWS IAM
- AWS VPC
- AWS Security Groups
- AWS Systems Manager
- AWS RDS
- AWS ECR
- AWS ECS
- AWS CloudWatch
- Containers
- Docker
- Docker Compose
- Terraform
Objective: To progressively build a cloud architecture similar to production environments focused on high performance.
aws-cloud-engineering-lab/
│
├── README.md
│
├── docs/
│ ├── architecture/
│ ├── diagrams/
│ ├── screenshots/
│ ├── lessons-learned/
│ └── lab-notes/
│
├── labs/
│ ├── 01-ec2-and-ssm/
│ ├── 02-ec2-monitoring-with-cloudwatch-agent/
│ ├── 03-iam-roles-and-policies/
│ ├── 04-ebs-volumes-and-snapshots/
│ ├── 05-vpc-with-public-subnet/
│ ├── 06-vpc-with-private-subnet-and-nat-gateway/
│ ├── 07-docker-installation-on-ec2/
│ ├── 08-docker-compose-application/
│ ├── 09-nginx-reverse-proxy/
│ ├── 10-amazon-rds-postgresql/
│ ├── 11-amazon-s3-static-website-hosting/
│ ├── 12-aws-backup-strategy/
│ ├── 13-cloudwatch-logs/
│ ├── 14-cloudwatch-metrics/
│ ├── 15-cloudwatch-alarms/
│ ├── 16-sns-notifications/
│ ├── 17-amazon-ecr/
│ ├── 18-amazon-ecs-fargate/
│ ├── 19-ecs-service-management/
│ ├── 20-application-load-balancer/
│ ├── 21-terraform-ec2-deployment/
│ ├── 22-terraform-vpc-deployment/
│ ├── 23-terraform-ecs-deployment/
│ ├── 24-github-actions-build-pipeline/
│ ├── 25-gitHub-actions-deployment-pipeline/
│ └── 26-end-to-end-ci/cd-pipeline/
│
├── terraform/
│
└── scripts/
This repository documents my hands-on journey through AWS Cloud Engineering, Infrastructure, Observability, Automation, Containers, and DevOps practices.
The goal is to build practical experience with real-world cloud environments while developing skills applicable to Cloud Engineering, DevOps, Platform Engineering, Site Reliability Engineering (SRE), and Infrastructure Operations roles.
- Configure IAM Role
- Create an EC2 instance
- Configure AWS Systems Manager
- Connect using Session Manager
https://github.com/itamarsb/aws-cloud-engineering-lab/blob/main/labs/01-ec2-and-ssm/README.md
- Install CloudWatch Agent
- Collect CPU metrics
- Collect Memory metrics
- Collect Disk metrics
- Create CloudWatch Dashboard
- Create IAM Users
- Create IAM Groups
- Create Custom Policies
- Apply Least Privilege Principle
- Create EBS Volume
- Attach Volume
- Create Snapshot
- Restore Snapshot
- Create VPC
- Create Public Subnet
- Configure Internet Gateway
- Configure Route Tables
- Create Private Subnet
- Configure NAT Gateway
- Validate Internet Access
- Test Secure Architecture
- Install Docker
- Run First Container
- Container Lifecycle Management
- Security Best Practices
- Deploy Multi-Container Application
- Configure Networks
- Configure Volumes
- Persist Data
- Install NGINX
- Configure Reverse Proxy
- Test HTTP Routing
- Validate Application Access
- Deploy PostgreSQL
- Configure Security Groups
- Connect from EC2
- Execute SQL Queries
- Create Bucket
- Enable Static Hosting
- Upload Website Files
- Configure Public Access
- Define Backup Policy
- Backup EBS
- Backup RDS
- Test Recovery
- Create Log Groups
- Collect Application Logs
- Query Logs
- Analyze Events
- Analyze Metrics
- Create Dashboards
- Monitor Resources
- Configure Custom Metrics
- Create CPU Alarm
- Create Memory Alarm
- Configure Notifications
- Test Alerts
- Create SNS Topic
- Configure Email Notifications
- Integrate with CloudWatch
- Validate Alert Delivery
- Create Repository
- Build Docker Image
- Push Image
- Pull Image
- Create ECS Cluster
- Configure Fargate
- Deploy Container
- Validate Service
- Create ECS Service
- Configure Desired Count
- Test Availability
- Review Logs
- Create Load Balancer
- Configure Target Group
- Route Traffic
- Validate Health Checks
- Install Terraform
- Create EC2 Infrastructure
- Apply Configuration
- Destroy Resources
- Create VPC Code
- Deploy Networking
- Validate Infrastructure
- Refactor Modules
- Create ECS Resources
- Deploy Containers
- Validate Automation
- Reuse Modules
- Create Workflow
- Build Application
- Validate Pipeline
- Review Logs
- Configure AWS Credentials
- Deploy Infrastructure
- Validate Deployment
- Automate Releases
- Build Application
- Run Tests
- Publish Artifact
- Deploy Automatically
- Validate Production Workflow
Completed Labs: 01 / 26
Current Lab:
- 🚧 Lab 01 - EC2 Instance with SSM Access



