# Day 21: AWS Well-Architected Framework

### AWS Well-Architected Framework

* The AWS Well-Architected Framework provides a structured approach for building secure, high-performing, resilient, and efficient infrastructure for applications. It is divided into five pillars, each addressing different aspects of a cloud workload. Each pillar also has its own detailed whitepaper.
    
    #### **6 Pillars:**
    
    1. **Operational Excellence**
        
    2. **Security**
        
    3. **Reliability**
        
    4. **Performance Efficiency**
        
    5. **Cost Optimization**
        
    6. **Sustainibility**
        
    
    ### **AWS Well-Architected - General Definitions**
    
    * **Component**: Code, Configuration, and AWS Resources that meet a requirement.
        
    * **Workload**: A set of components working together to deliver business value.
        
    * **Milestones**: Key changes in architecture throughout the product lifecycle.
        
    * **Architecture**: How components work together within a workload.
        
    * **Technology Portfolio**: A collection of workloads required for business operations.
        
    
    ### **AWS Well-Architected - On Architecture**
    
    * **On-Premise Enterprise**: Typically has centralized teams with defined roles.
        
    * **AWS**: Utilizes distributed teams with flexible roles, addressing new risks with Practices, Mechanisms, and Leadership Principles.
        
    
    **Centralized Teams**:
    
    * Technical Architecture
        
    * Solution Architecture
        
    * Data Architect
        
    * Networking Architect
        
    * Security Architecture
        
    
    **Distributed Teams**:
    
    * Practice
        
    * Team Experts
        
    * Mechanism
        
    * Automated Checks for Standards
        
    * Amazon Leadership Principles
        
    
    **Leadership Principles**:
    
    * Customer Obsession
        
    * Ownership
        
    * Invent and Simplify
        
    * Are Right, A Lot
        
    * Learn and Be Curious
        
    * Hire and Develop the Best
        
    * Insist on the Highest Standards
        
    * Think Big
        
    * Bias for Action
        
    * Frugality
        
    * Earn Trust
        
    * Dive Deep
        
    * Have Backbone; Disagree and Commit
        
    * Deliver Results
        
    * Strive to be Earth's Best Employer
        
    * Success and Scale Bring Broad Responsibility
        
    
    ### **AWS Well-Architected - General Design Principles**
    
    1. **Stop guessing capacity needs**: Utilize cloud computing to scale as needed.
        
    2. **Test systems at production scale**: Clone production environments for testing.
        
    3. **Automate architectural experimentation**: Use tools like CloudFormation for easier experimentation.
        
    4. **Allow evolutionary architectures**: Embrace CI/CD and rapid evolution.
        
    5. **Drive architecture with data**: Leverage data from CloudWatch and CloudTrail.
        
    6. **Improve through game days**: Simulate traffic or failures to test recovery.
        
    
    ### **AWS Well-Architected - Anatomy of a Pillar**
    
    Each Pillar includes:
    
    * **Design Principles**: Key principles to consider during implementation.
        
    * **Definition**: Overview of best practice categories.
        
    * **Best Practices**: Detailed information on practices with AWS Services.
        
    * **Resources**: Additional documentation, whitepapers, and videos.
        
    
    ### **Design Principles by Pillar**
    
    **Operational Excellence**:
    
    * Perform operations as code
        
    * Make frequent, small, reversible changes
        
    * Refine operations procedures frequently
        
    * Anticipate failure
        
    * Learn from operational failures
        
    
    **Security**:
    
    * Implement a strong identity foundation
        
    * Enable traceability
        
    * Apply security at all layers
        
    * Automate security best practices
        
    * Protect data in transit and at rest
        
    * Prepare for security events
        
    
    **Reliability**:
    
    * Automatically recover from failure
        
    * Test recovery procedures
        
    * Scale horizontally
        
    * Stop guessing capacity
        
    * Manage change in automation
        
    
    **Performance Efficiency**:
    
    * Democratize advanced technologies
        
    * Go global in minutes
        
    * Use serverless architectures
        
    * Experiment more often
        
    * Consider mechanical sympathy
        
    
    **Cost Optimization**:
    
    * Implement Cloud Financial Management
        
    * Adopt a consumption model
        
    * Measure overall efficiency
        
    * Stop spending money on undifferentiated heavy lifting
        
    * Analyze and attribute expenditure
        
    
    **Sustainability:**
    
    * Optimize resource usage
        
    * Choose energy-efficient services
        
    * Design for longevity
        
    * Monitor and measure impact
        
    * Promote renewable energy
        
        ### **Additional Resources**
        
        **AWS Well-Architected Tool**: An auditing tool for assessing cloud workloads against the AWS Well-Architected Framework. It provides a checklist to create a report for stakeholders.
        
        **AWS Architecture Center**: A portal with best practices and reference architectures for various workloads.
