Domain 4: Design Cost-Optimized Architectures (18%)
🎯 Overview
Thiết kế các architecture cost-effective, optimize spending, và maximize value từ AWS resources.
💰 AWS Pricing Models
Compute Pricing
EC2 Pricing Options:
On-Demand:
- Pay per hour/second
- No upfront costs
- No commitments
- Most expensive
- Use cases: Short-term, unpredictable workloads
Reserved Instances:
- 1 hoặc 3 year commitment
- Up to 75% discount
- Types: Standard, Convertible, Scheduled
- Use cases: Steady-state workloads
Spot Instances:
- Up to 90% discount
- Can be interrupted
- Use cases: Fault-tolerant, flexible workloads
Dedicated Hosts:
- Physical server dedication
- Compliance requirements
- License optimization
- Most expensive option
Storage Pricing
S3 Storage Classes:
S3 Standard:
- $0.023/GB/month
- Immediate access
- 99.999999999% durability
S3 Standard-IA:
- $0.0125/GB/month
- Retrieval charges
- 30-day minimum
S3 One Zone-IA:
- $0.01/GB/month
- Single AZ storage
- Lower durability
S3 Glacier Instant Retrieval:
- $0.004/GB/month
- Millisecond retrieval
- 90-day minimum
S3 Glacier Flexible Retrieval:
- $0.0036/GB/month
- 1-12 hour retrieval
- 90-day minimum
S3 Glacier Deep Archive:
- $0.00099/GB/month
- 12+ hour retrieval
- 180-day minimum
🔄 Cost Optimization Strategies
1. Right-Sizing Resources
EC2 Instance Optimization
Right-Sizing Process:
1. Monitor Utilization:
- CloudWatch metrics
- AWS Compute Optimizer
- Performance analysis
2. Identify Opportunities:
- Over-provisioned instances
- Under-utilized resources
- Inconsistent usage patterns
3. Implement Changes:
- Resize instances
- Change instance families
- Implement auto scaling
4. Monitor Results:
- Cost savings
- Performance impact
- User experience
Database Optimization
RDS Cost Optimization:
Instance Sizing:
- Monitor CPU, memory, IOPS
- Use Performance Insights
- Consider burstable instances (T4g, T3)
Storage Optimization:
- gp3 thay vì gp2
- Monitor storage utilization
- Enable storage auto scaling
Read Replicas:
- Offload read traffic
- Consider cross-region costs
- Use appropriate instance sizes
2. Auto Scaling Implementation
Predictive Scaling
Auto Scaling Strategies:
Target Tracking:
- CPU utilization: 70%
- Request count per target
- Custom metrics
Scheduled Scaling:
- Business hours scaling
- Seasonal adjustments
- Planned events
Predictive Scaling:
- Machine learning predictions
- Pre-scale for anticipated load
- Reduce over-provisioning
3. Storage Lifecycle Management
S3 Lifecycle Policies
Lifecycle Policy Example:
Rules:
Current Version:
- Transition to IA after 30 days
- Transition to Glacier after 90 days
- Transition to Deep Archive after 365 days
- Delete after 7 years
Non-Current Versions:
- Transition to IA after 30 days
- Delete after 365 days
Incomplete Multipart Uploads:
- Delete after 7 days
EBS Snapshot Management
Snapshot Optimization:
Automated Snapshots:
- Daily snapshots với retention policies
- Cross-region backup strategies
- Delete unused snapshots
Snapshot Lifecycle:
- Data Lifecycle Manager (DLM)
- Automated creation và deletion
- Cost-effective retention periods
📊 Cost Monitoring & Analysis
1. AWS Cost Explorer
Cost Analysis Features
Cost Explorer Capabilities:
Visualizations:
- Monthly cost trends
- Service-based breakdown
- Resource-level analysis
- Regional cost distribution
Filtering Options:
- Time periods
- Services
- Linked accounts
- Cost categories
Forecasting:
- Cost predictions
- Usage forecasts
- Budget planning
2. AWS Budgets
Budget Types
Budget Configurations:
Cost Budgets:
- Monthly cost limits
- Service-specific budgets
- Account-level monitoring
Usage Budgets:
- EC2 instance hours
- S3 storage usage
- Data transfer limits
RI Utilization Budgets:
- Reserved Instance usage
- Coverage monitoring
- Efficiency tracking
RI Coverage Budgets:
- Percentage of usage covered
- Optimization opportunities
3. Cost Allocation Tags
Tagging Strategy
Cost Allocation Tags:
Required Tags:
- Environment: prod/staging/dev
- Project: project-name
- Owner: team-email
- CostCenter: finance-code
Optional Tags:
- Application: app-name
- Version: app-version
- Schedule: business-hours
- Backup: required/not-required
🔧 Service-Specific Optimizations
1. Compute Optimization
Lambda Cost Optimization
Lambda Optimization:
Memory Allocation:
- Right-size memory allocation
- CPU scales với memory
- Monitor duration metrics
Execution Optimization:
- Minimize cold starts
- Optimize function code
- Use appropriate runtime
Provisioned Concurrency:
- Reduce cold start latency
- Predictable performance
- Additional cost consideration
ECS/EKS Cost Optimization
Container Optimization:
ECS:
- Fargate vs EC2 launch types
- Right-size tasks
- Use Spot capacity
EKS:
- Managed node groups
- Spot instances
- Cluster Autoscaler
- Vertical Pod Autoscaler
2. Storage Cost Optimization
S3 Cost Strategies
S3 Optimization:
Intelligent Tiering:
- Automatic cost optimization
- Monitor access patterns
- No retrieval fees for frequent access
Request Optimization:
- Minimize LIST operations
- Use CloudFront cho cacheable content
- Batch operations where possible
Transfer Optimization:
- Use S3 Transfer Acceleration
- CloudFront cho global distribution
- VPC endpoints cho internal transfer
EBS Cost Management
EBS Optimization:
Volume Types:
- gp3: Best price/performance
- gp2: Burstable performance
- io2: High-performance workloads
Snapshots:
- Incremental backups
- Automated lifecycle
- Cross-region replication costs
Unused Volumes:
- Regular audits
- Automated cleanup
- Cost allocation tracking
3. Database Cost Optimization
RDS Optimization
RDS Cost Strategies:
Instance Options:
- Reserved Instances cho steady workloads
- Aurora Serverless cho variable workloads
- Multi-AZ chỉ khi cần thiết
Storage:
- gp3 storage type
- Storage auto scaling
- Backup retention optimization
Read Replicas:
- Evaluate necessity
- Cross-region costs
- Instance sizing
DynamoDB Optimization
DynamoDB Cost Management:
Capacity Modes:
- On-Demand: Variable workloads
- Provisioned: Predictable workloads
- Reserved Capacity: Long-term savings
Design Optimization:
- Efficient partition key design
- Minimize hot partitions
- Optimize item sizes
Features:
- DynamoDB Accelerator (DAX) cost evaluation
- Global Tables replication costs
- Point-in-time recovery costs
🌐 Network Cost Optimization
Data Transfer Costs
Data Transfer Pricing:
Inbound:
- Free for most services
- VPC endpoints recommended
Outbound:
- $0.09/GB for first 10TB
- Volume discounts available
- CloudFront reduces costs
Cross-AZ:
- $0.01/GB for most services
- Consider single-AZ where appropriate
Cross-Region:
- Varies by region pair
- Plan data placement carefully
CloudFront Cost Benefits
CloudFront Optimization:
Cache Optimization:
- Maximize cache hit ratio
- Appropriate TTL settings
- Origin shielding
Price Classes:
- All edge locations (most expensive)
- Exclude expensive regions
- US/Europe only (cheapest)
Request Optimization:
- Compress content
- Optimize origins
- Reduce origin requests
🎯 Cost Scenarios & Solutions
Scenario 1: Development Environment
Requirement: Cost-effective dev/test environment Solution:
Cost Optimization:
Compute:
- Spot instances cho testing
- Scheduled start/stop
- Smaller instance sizes
Storage:
- gp3 volumes
- Smaller storage allocations
- Frequent snapshot cleanup
Database:
- Single-AZ RDS
- Burstable instances
- Dev/test license
Scenario 2: Web Application
Requirement: Optimize production web app costs Solution:
Architecture:
Load Balancer: Application Load Balancer
Compute:
- Reserved Instances cho baseline
- Auto Scaling với Spot instances
Storage:
- S3 Intelligent Tiering
- CloudFront CDN
Database:
- RDS với Read Replicas
- ElastiCache optimization
Scenario 3: Data Analytics Platform
Requirement: Big data processing cost optimization Solution:
Services:
Compute:
- EMR với Spot instances
- Lambda cho event processing
Storage:
- S3 với lifecycle policies
- Glacier cho archival
Database:
- Redshift Reserved Instances
- S3 data lake architecture
📊 Reserved Instances Strategy
RI Planning
Reserved Instance Strategy:
Analysis:
- Historical usage patterns
- Workload predictability
- Growth projections
Types:
- Standard RI: Maximum discount
- Convertible RI: Flexibility
- Scheduled RI: Recurring usage
Management:
- RI utilization monitoring
- Exchange unused RIs
- Family flexibility
📝 Cost Optimization Checklist
Regular Reviews
- [ ] Monthly cost analysis
- [ ] Resource utilization review
- [ ] Right-sizing recommendations
- [ ] Reserved Instance optimization
- [ ] Storage lifecycle management
Automation
- [ ] Auto Scaling implementation
- [ ] Scheduled resource management
- [ ] Automated backup cleanup
- [ ] Cost anomaly detection
- [ ] Budget alerts configuration
Governance
- [ ] Cost allocation tags
- [ ] Spending policies
- [ ] Resource approval workflows
- [ ] Cost center accountability
- [ ] Regular cost reviews
🔍 Practice Questions
- Spot Instances: Khi nào sử dụng Spot instances appropriately?
- S3 Storage Classes: Làm thế nào để choose optimal storage class?
- Reserved Instances: Standard vs Convertible RI trade-offs?
- Auto Scaling: Cost benefits của different scaling policies?
- Data Transfer: Làm thế nào để minimize data transfer costs?