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

  1. Spot Instances: Khi nào sử dụng Spot instances appropriately?
  2. S3 Storage Classes: Làm thế nào để choose optimal storage class?
  3. Reserved Instances: Standard vs Convertible RI trade-offs?
  4. Auto Scaling: Cost benefits của different scaling policies?
  5. Data Transfer: Làm thế nào để minimize data transfer costs?

📖 Further Reading