Understanding AWS Well Architected Framework and Tool
The AWS Well-Architected Framework describes key concepts, design principles, and architectural best practices for designing and running workloads in the cloud.
The AWS Well-Architected Framework helps you understand the pros and cons of decisions you make while building systems on AWS.
6 pillars of AWS Well Architected Framework:
- Operational Excellence: The ability to support development and run workloads effectively, gain insight into their operations, and to continuously improve supporting processes and procedures to deliver business value.
Best Practices for Operational Excellence:
1.1. Perform operations as code
1.2. Make frequent, small, reversible changes
1.3. Refine operations procedure frequently
1.4. Anticipate & Learn from Failure - Security: The security pillar describes how to take advantage of cloud technologies to protect data, systems, and assets in a way that can improve your security posture.
Best Practices for Security:
2.1. Implement a strong identity foundation
2.2. Enable traceability
2.3. Protect data in transit & at rest
2.4. Implement access to data/infrastructure via principal of least privilege - Reliability: The reliability pillar encompasses the ability of a workload to perform its intended function correctly and consistently when it’s expected to. This includes the ability to operate and test the workload through its total lifecycle. This paper provides in-depth, best practice guidance for implementing reliable workloads on AWS.
Best Practices for Reliability:
3.1. Automatically recover from failure
3.2. Manage change in Automation
3.3. Stop guessing the capacity, instead automate capacity provisioning
3.4. Scale horizontally to increase aggregate availability of workload - Performance Efficiency: The ability to use computing resources efficiently to meet system requirements, and to maintain that efficiency as demand changes and technologies evolve.
Best Practices for Performance Efficiency:
4.1. Leverage advanced technologies provided by AWS
4.2. Usage of serverless architecture to avoid management
4.3. Understand the systems & their purpose to utilize them to their best - Cost Optimization: The ability to run systems to deliver business value at the lowest price point.
Best Practices for Cost Optimization:
5.1. Implement Cloud Financial Management
5.2. Measure overall efficiency of services consumed
5.3. Adopt a consumption model (Pay for what you use)
5.4. Stop spending money on services which are already managed by AWS and focus on developing the end product - Sustainability: The ability to continually improve sustainability impacts by reducing energy consumption and increasing efficiency across all components of a workload by maximizing the benefits from the provisioned resources and minimizing the total resources required.
Best Practices for Sustainability:
6.1. Choose Regions near Amazon renewable energy projects
6.2. Align service levels to customer needs
6.3. Selection of an efficient architecture and data patterns to minimize requirement of end-user hardware leading to less resource utilization
Read the full Well-Architected whitepaper here
Design Architecture Trade-offs:
When architecting workloads, you make trade-offs between pillars based on your business context. These business decisions can drive your engineering priorities.
- You might optimize to improve sustainability impact and reduce cost at the expense of reliability in development environments.
- For mission-critical solutions, you might optimize reliability with increased costs and sustainability impact.
- In ecommerce solutions, performance can affect revenue and customer propensity to buy.
- Security and operational excellence are generally not traded-off against the other pillars.
Key Terminologies:
- A component is the code, configuration, and AWS Resources that together deliver against a requirement.
- A workload is a collection of resources and code (components) that delivers business value, such as a customer-facing application or a backend process.
- Lenses provide a way for you to consistently measure your architectures against best practices and identify areas for improvement.
Understanding & Using AWS Well-Architected Tool:
The AWS Well-Architected Tool helps you review your workloads against current AWS best practices and provides guidance on how to improve your cloud architectures. This tool is based on the AWS Well-Architected Framework.
Step 1: Define Workload
Step 2: Choose Lenses to evaluate the workload
Step 3: Review & Measure the workload on selected lenses
Step 4: Based on the answers to the questions asked in lenses risks are identified and improvement plan gets created
Conclusion:
So far in this post we have discussed what is AWS Well-Architected Framework and what are it’s uses, best-practices. Also, how Well-Architected Tool enables us to define & evaluate a workload in AWS.
If you need help with DevOps practices, or AWS at your company, feel free to reach out to us at Opsnetic. Also, Opsnetic Provides FREE Well-Architected Review of your company’s workloads. So, feel free to reach us out!
Contributed By: Raj Shah