AWS Well-Architected Framework
Overview
The AWS Well-Architected Framework is a set of best practices and design principles for building secure, high-performing, resilient, and efficient infrastructure on AWS. It provides guidance for evaluating architecture decisions and identifying areas for improvement.
The Six Pillars
1. Operational Excellence
Operational Excellence focuses on the ability to support development and run workloads effectively, gain insight into operations, and continuously improve supporting processes and procedures.
Key Principles
Prepare:
- Understand your workload and expected behaviors
- Define success metrics
- Plan for disaster recovery
- Establish operational baselines
Operate:
- Understand the state of your workload
- Perform operations with small, reversible changes
- Communicate status through dashboards
- Use runbooks and playbooks
Evolve:
- Learn from operational events
- Implement improvements
- Share knowledge across teams
Design Principles
- Infrastructure as Code - Manage infrastructure through code
- Annotate Documentation - Document architecture decisions
- Monitoring and Logging - Understand system behavior
- Regular Reviews - Evaluate architecture regularly
- Refine Procedures - Improve operational processes
Best Practices
Organization:
- Define clear ownership
- Establish roles and responsibilities
- Create communication patterns
- Build team capability
Preparation:
- Document runbooks and playbooks
- Define incident response procedures
- Establish escalation paths
- Test disaster recovery regularly
Operations:
- Use CloudWatch for monitoring
- Implement CloudTrail for auditing
- Use Systems Manager for automation
- Implement Health Checks
Evolution:
- Conduct postmortems on incidents
- Share lessons learned
- Update documentation regularly
- Improve automation over time
Tools & Services
- AWS CloudWatch - Monitoring and logging
- AWS CloudTrail - API auditing
- AWS Systems Manager - Operations automation
- AWS Config - Configuration tracking
- AWS OpsWorks - Configuration management
- AWS Service Catalog - Self-service provisioning
2. Security
Security addresses the ability to protect data, systems, and assets while delivering business value through risk assessments and mitigation strategies.
Key Principles
Implement Strong Access Control:
- Use least privilege access
- Enable MFA
- Centralize identity management
- Audit access patterns
Maintain Data Confidentiality & Integrity:
- Encrypt data in transit
- Encrypt data at rest
- Use cryptographic keys properly
- Implement data retention policies
Detect and Investigate Security Events:
- Monitor API calls
- Analyze logs
- Use threat detection
- Respond to incidents promptly
Protect Infrastructure & Resources:
- Use network security groups
- Implement DDoS protection
- Use Web Application Firewall
- Patch systems regularly
Design Principles
- Implement a Strong Identity Foundation - Use AWS IAM effectively
- Enable Traceability - Audit all activities
- Apply Security at All Layers - Implement defense in depth
- Automate Security Best Practices - Use automation
- Protect Data in Transit & at Rest - Use encryption
- Prepare for Security Events - Have incident response plan
- Keep People Away from Data - Minimize manual access
Best Practices
Identity & Access Management:
- Use IAM roles for EC2 instances
- Use resource-based policies
- Enable MFA for all accounts
- Use AWS SSO for centralized access
- Implement temporary credentials
Data Protection:
Data Classification:
- Public: No encryption required
- Internal: Encrypted at rest
- Confidential: Encrypted in transit & at rest
- Restricted: HSM-backed encryption
Infrastructure Protection:
- Use security groups
- Use NACLs for additional filtering
- Use VPC Flow Logs
- Implement WAF for web applications
- Use Shield Standard/Advanced for DDoS
Threat Detection & Investigation:
- Enable GuardDuty
- Use CloudWatch Insights for analysis
- Set up CloudWatch alarms
- Implement automated responses
Security Tools
- AWS Identity & Access Management (IAM) - Access control
- AWS Secrets Manager - Secret management
- AWS KMS - Key management
- AWS GuardDuty - Threat detection
- AWS WAF - Web application firewall
- AWS Shield - DDoS protection
- AWS Security Hub - Security posture
- AWS Inspector - Vulnerability scanning
3. Reliability
Reliability addresses the ability to recover from infrastructure or service degradation, to dynamically acquire resources, and to mitigate disruptions such as misconfigurations or transient issues.
Key Principles
Manage Service Quotas:
- Track quota usage
- Request quota increases
- Design for quota limits
- Use auto-scaling where available
Architecture:
- Design for failure
- Use asynchronous communication
- Implement retry logic
- Use circuit breakers
Change Management:
- Automate deployments
- Use blue/green deployments
- Implement feature flags
- Test changes in lower environments
Failure Management:
- Implement health checks
- Use auto-healing
- Design for degraded service
- Test disaster recovery
Design Principles
- Automatically Recover from Failure - Use auto-scaling & failover
- Test Recovery Procedures - Conduct DR drills
- Scale Horizontally - Distribute load
- Stop Guessing Capacity - Use auto-scaling
- Manage Change through Automation - Use IaC & CI/CD
Best Practices
Foundation:
- Multi-region setup for critical workloads
- Availability Zone distribution
- Use managed services
- Design for fault isolation
High Availability:
Strategy:
- Multi-AZ deployments
- Load balancing
- Auto-scaling groups
- Failover automation
Disaster Recovery:
- Define RPO (Recovery Point Objective)
- Define RTO (Recovery Time Objective)
- Implement backup strategy
- Test disaster recovery regularly
Reliability Tools
- Auto Scaling - Automatic capacity management
- Elastic Load Balancing - Load distribution
- Amazon RDS - Database reliability
- Amazon Route 53 - DNS failover
- AWS Backup - Centralized backup
- AWS CloudFormation - Infrastructure as Code
- Amazon DynamoDB - Managed NoSQL
4. Performance Efficiency
Performance Efficiency includes the ability to use computing resources efficiently to meet system requirements and to maintain that efficiency as demand changes and technologies evolve.
Key Principles
Select Appropriate Resources:
- Right-size instances
- Use managed services
- Monitor resource usage
- Optimize cost-performance ratio
Review Regularly:
- Monitor metrics
- Identify bottlenecks
- Evaluate new services
- Test performance
Monitor Performance:
- Set up CloudWatch metrics
- Create dashboards
- Set alarms for anomalies
- Track custom metrics
Trade-offs:
- Optimize for specific metrics
- Consider consistency models
- Balance cost and performance
- Use caching appropriately
Design Principles
- Democratize Advanced Technologies - Use managed services
- Go Global in Minutes - Use CloudFront & regional services
- Use Server-less Architectures - AWS Lambda for compute
- Experiment More Often - Test regularly
- Use Mechanical Sympathy - Understand hardware
Best Practices
Compute Selection:
- EC2 for custom applications
- ECS/EKS for containers
- Lambda for event-driven
- RDS/DynamoDB for data
Storage Selection:
- S3 for objects
- EBS for block storage
- EFS for shared file systems
- DynamoDB for NoSQL
Database Optimization:
- Use read replicas
- Implement caching (ElastiCache)
- Use DynamoDB for scale-out
- Optimize queries
Network Performance:
- Use CloudFront for CDN
- Use VPC endpoints
- Optimize transfer sizes
- Use HTTP/2
Performance Tools
- Amazon CloudFront - Content delivery
- Amazon ElastiCache - Caching layer
- AWS Lambda - Serverless compute
- Amazon RDS Read Replicas - Database scaling
- AWS Data Transfer - Cost-optimized transfer
- AWS Performance Insights - Database analysis
5. Cost Optimization
Cost Optimization focuses on the ability to run systems to deliver business value at the lowest price point.
Key Principles
Practice Cloud Financial Management:
- Set budgets
- Monitor spending
- Allocate costs
- Forecast costs
Align Expenditure with Demand:
- Use auto-scaling
- Purchase commitment discounts
- Use spot instances
- Match instance types to workload
Use Managed Services:
- Reduce operational overhead
- Lower costs
- Reduce complexity
- Benefit from economies of scale
Optimize Over Time:
- Review regularly
- Right-size resources
- Remove unused resources
- Test new services
Design Principles
- Implement Cloud Financial Management - Cost visibility
- Adopt a Consumption Model - Pay for what you use
- Measure Overall Efficiency - Optimize business outcomes
- Stop Spending Money on Undifferentiated Heavy Lifting - Use managed services
- Analyze and Attribute Expenditure - Understand costs
Best Practices
Demand Planning:
Reserved Instances:
- 1-year: 20-40% discount
- 3-year: 50-72% discount
- Covers baseline load
Spot Instances:
- Up to 90% discount
- For flexible, fault-tolerant workloads
- Use alongside on-demand
Right-Sizing:
- Monitor CPU/memory utilization
- Downsize over-provisioned resources
- Use performance metrics
- Test before changes
Data Transfer Optimization:
- Use S3 transfer acceleration
- Use CloudFront
- Compress data
- Optimize API calls
Storage Optimization:
- Archive infrequently accessed data
- Use S3 Intelligent-Tiering
- Delete unnecessary backups
- Optimize EBS volumes
Cost Optimization Tools
- AWS Trusted Advisor - Cost & optimization
- AWS Cost Explorer - Cost analysis
- AWS Budgets - Budget alerts
- AWS Compute Optimizer - Right-sizing
- AWS Cost Anomaly Detection - Detect unusual spending
- Reserved Instance Management - RI optimization
- Savings Plans - Flexible pricing
6. Sustainability
Sustainability addresses the ability to support development and run workloads while minimizing environmental impact through measurable improvements in resource efficiency.
Key Principles
Understand Impact:
- Measure energy usage
- Understand carbon footprint
- Set sustainability goals
- Track improvements
Maximize Utilization:
- Right-size resources
- Use auto-scaling
- Consolidate workloads
- Optimize algorithms
Use Efficient Services:
- Choose efficient instance types
- Use managed services
- Use serverless
- Optimize data transfer
Reduce Waste:
- Delete unused resources
- Optimize storage
- Use efficient algorithms
- Share infrastructure
Design Principles
- Understand Your Impact - Measure & report
- Establish Sustainability Goals - Set targets
- Maximize Utilization - Efficient resource use
- Optimize Upstream - Reduce data
- Use Managed Services - Share infrastructure
- Reduce Downstream Impact - Minimize data transfer
Best Practices
Hardware & Services Selection:
- Use energy-efficient instance types
- Use Graviton processors
- Use AWS Graviton-based services
- Consider managed services
Data Optimization:
- Compress data
- Optimize transfers
- Archive old data
- Use efficient formats
Process Optimization:
- Optimize algorithms
- Reduce computation
- Implement caching
- Use batch processing
Sustainability Tools
- AWS Carbon Footprint Tool - Track emissions
- Compute Optimizer - Efficiency recommendations
- Trusted Advisor - Optimization checks
AWS Well-Architected Review Process
Phase 1: Plan
- Define workload scope
- Identify stakeholders
- Schedule sessions
- Prepare documentation
Phase 2: Assess
- Review against each pillar
- Identify high-risk items
- Document findings
- Prioritize improvements
Phase 3: Prioritize & Plan
- Prioritize improvements
- Estimate effort
- Create action items
- Assign ownership
Phase 4: Execute & Monitor
- Implement improvements
- Track progress
- Measure impact
- Repeat review
AWS Well-Architected Tool
The AWS Well-Architected Tool helps you:
- Review your architecture against best practices
- Identify high-risk issues
- Track improvements over time
- Generate reports for stakeholders
Access: AWS Console → Well-Architected Tool
Common Workload Patterns
Web Applications
Focus Areas:
- High availability across AZs
- Auto-scaling for traffic spikes
- CloudFront for content delivery
- RDS for data persistence
Architecture:
Users → CloudFront → ALB → Auto Scaling Group → RDS
↓
ElastiCache
Batch Processing
Focus Areas:
- Fault tolerance
- Cost optimization
- Parallelization
- Error handling
Architecture:
SQS Queue → Lambda (auto-scale) → DynamoDB
↓
SNS (notifications)
IoT Data Processing
Focus Areas:
- Real-time data ingestion
- Scalability
- Data durability
- Analytics
Architecture:
IoT Devices → IoT Core → Kinesis Data Streams
↓
Lambda → DynamoDB
↓
S3 (archive)
Related Resources
- Azure Well-Architected Framework
- Well-Architected Framework Combined
- Cloud Patterns
- Reference Architectures
References
- AWS Well-Architected Framework
- AWS Architecture Best Practices
- AWS Whitepapers
- Well-Architected Tool
Last Updated: November 2025
Related: Azure Well-Architected | Well-Architected Combined | Cloud Patterns