AWS Well-Architected Framework helps to understand how to design and operate reliable, secure, efficient and cost-effective systems in the AWS Cloud. It provides a way to consistently measure the architecture against best practices and design principles and identify areas for improvement.
The Well-Architected Framework is based on five pillars :
- Operational Excellence
- Security
- Reliability
- Performance efficiency
- Cost optimization
Operational excellence is the ability to run and monitor systems to deliver business value and to continually improve supporting processes and procedures. Design principles for operational excellence in the cloud include performing operations as code, annotating documentation, anticipating failure, and frequently making small, reversible changes.
The Security pillar is the ability to protect information, systems and assets while delivering business value through risk assessments and mitigation strategies. When considering the security of your architecture, apply these best practices :
- automate security best practices when possible
- apply security at all layers
- protect data in transit and at rest.
Reliability is the ability of a system to do the following :
- recover from infrastructure or service disruptions
- dynamically acquire computing resources to meet demand
- mitigate disruptions such as misconfigurations or transient network issues
Reliability includes testing recovery procedures, scaling horizontally to increase aggregate system availability, and automatically recovering from failure.
Performance efficiency is the ability to use computing resources efficiently to meet system requirements and to maintain that efficiency as demand changes and technologies evolve. Evaluating the performance efficiency of the architecture includes experimenting more often, using serverless architectures and designing systems to be able to go global in minutes.
Cost optimization is the ability to run systems to deliver business value at the lowest price point. Cost optimization includes adopting a consumption model, analyzing and attributing expenditure and using managed services to reduce the cost of ownership.