3.1.4 Resource Requirements

Identify Resource Requirements for Deployment

Lambda Resource Configuration

ResourceRangeMô tả
Memory128MB → 10,240MBCPU scales proportionally
Timeout1s → 900s (15 min)API GW max 29s
Ephemeral Storage512MB → 10,240MB/tmp directory
ConcurrencyAccount default 1000Reserved/Provisioned

ECS Task Definition Resources

{
  "containerDefinitions": [{
    "name": "my-app",
    "image": "123456789012.dkr.ecr.us-east-1.amazonaws.com/my-app:latest",
    "cpu": 256,
    "memory": 512,
    "memoryReservation": 256,
    "portMappings": [{"containerPort": 8080}]
  }],
  "cpu": "256",
  "memory": "512",
  "requiresCompatibilities": ["FARGATE"]
}
Launch TypeCPU/MemoryMô tả
FargateFixed combinationsServerless, no EC2 management
EC2Instance-basedMore control, spot instances

Amazon EC2 cho Developer

ConceptMô tả
Instance ProfileIAM Role attached to EC2 (auto-rotated credentials)
User DataBootstrap script chạy khi launch (install packages, start services)
Security GroupsVirtual firewall (inbound/outbound rules)
Key PairsSSH access (ed25519 hoặc RSA)
Instance Metadatahttp://169.254.169.254/latest/meta-data/

Instance Metadata Service (IMDS)

# IMDSv2 (recommended — token-based)
TOKEN=$(curl -X PUT "http://169.254.169.254/latest/api/token" \
  -H "X-aws-ec2-metadata-token-ttl-seconds: 21600")
curl -H "X-aws-ec2-metadata-token: $TOKEN" \
  http://169.254.169.254/latest/meta-data/instance-id
  • IMDSv2 = token-based (more secure, recommended)
  • Retrieve instance ID, region, IAM role credentials
  • User data script available tại /latest/user-data

User Data (Bootstrap)

#!/bin/bash
yum update -y
yum install -y httpd
systemctl start httpd
aws s3 cp s3://my-bucket/app.zip /var/www/html/

Elastic Beanstalk Capacity

SettingOptions
Environment typeSingle instance / Load balanced
Instance typet3.micro → m5.xlarge, etc.
Auto ScalingMin/Max instances, scaling triggers
Load BalancerALB, NLB, Classic

RDS/Aurora Sizing

FactorConsideration
Instance classdb.t3.micro → db.r5.24xlarge
Storagegp3, io1, magnetic
Multi-AZStandby replica for HA
Read ReplicasUp to 5 (RDS) / 15 (Aurora)

Exam Tip: Lambda memory = CPU. Fargate = fixed CPU/memory combos. Beanstalk Auto Scaling cho dynamic workloads. RDS Multi-AZ cho HA, Read Replicas cho read scaling.