top of page

AWS Well-Architected Framework

In a world that is moving very fast and into avenues that were once considered a dream, it becomes more important to make our roots or basics strong.


In the ever-evolving landscape of cloud computing, the AWS Well-Architected Framework stands as a beacon of best practices and guiding principles for designing and operating reliable, secure, efficient, and cost-effective systems in the cloud. This framework is not just a theoretical construct, But a well-honed structure with a lot of practical applications.




The Pillars of the Framework


At its core, the AWS Well-Architected Framework is built upon six foundational pillars:

  1. Operational Excellence (O): This pillar focuses on running and monitoring systems to deliver business value and continually improving processes and procedures.

  2. Security (S): Protecting information and systems is paramount, and this pillar emphasizes the importance of risk assessments and mitigation strategies.

  3. Reliability (R): Systems must be able to recover from disruptions and dynamically acquire resources to meet demand.

  4. Performance Efficiency (P): Efficient use of computing resources is essential, and this pillar guides maintaining efficiency as demand changes and technologies evolve.

  5. Cost Optimization (C): Running systems to deliver business value at the lowest price point is the goal here.

  6. Sustainability (S): This pillar, added in 2021, emphasizes the importance of building sustainable and environmentally friendly cloud solutions.


Note: Easy way to remember it is by the CORPSS Acronym (I created this 😋)


Getting the Mindset correct


The AWS Well-Architected Framework is more than just a checklist, it’s a mindset. When we incorporate these pillars into our designs, we create systems that are not only stable and efficient but also poised for future growth and change.


Operational Excellence




For example, operational excellence is achieved not just through robust technical design but also by embedding best practices into the very culture of the organization. This means embracing operations as code, making frequent, small, and reversible changes, and learning from all operational failures.


This is also to follow the 5 design principles for operational excellence in cloud:

  • Perform operations as code – Repeatability and consistency in delivering. Reduce Human error.

  • Make frequent, small, reversible changes – Update regularly and allow failback in case of failure.

  • Refine operations procedures frequently – Being pro-active, review and evolve operations as required.

  • Anticipate failure – Perform “pre-mortem” for potentials threats or perceived threats and get prepared with learnings.

  • Learn from all operational failures – Knowing and sharing what to do in future with lessons learned and improve.


Security





Security is not an afterthought but a fundamental aspect of every stage of system design. It involves implementing strong identity foundations, enabling traceability, and applying security at all layers.


This is also to follow the 7 design principles for Security in cloud:

  • Implement a strong identity foundation – Strong IAM setup. Least privilege access and separation of duties.

  • Enable traceability – Know who/what does what at all times.

  • Apply security at all layers – multi-level access control and policies.

  • Automate security best practices – Ensure a reviewed, repeatable, and consistent security practice.

  • Protect data in transit and at rest – Ensure that the gold of this generation is always protected.

  • Keep people away from data – Eliminate need for people to access data directly or process manually.

  • Prepare for security events – Have a system in place to deal with events with policy and processes in place.


Reliability





Reliability is the backbone of user trust. By managing change in automation, setting up distributed system design, and implementing failure management strategies, architects can ensure that their systems are resilient and dependable.


This is also to follow the 5 design principles for reliability in cloud:

  • Automatically recover from failure – highly available deployments.

  • Test recovery procedures – Failures will happen. Be ready to recover.

  • Scale horizontally to increase aggregate workload availability – Distribute the load and avoid single point of failure.

  • Stop guessing capacity - scale as required when required.

  • Manage change in automation - Ensure a reviewed, repeatable, and consistent automation practice.


Performance Efficiency






Performance efficiency is about doing more with less. It’s about selecting the right resource types and sizes based on workload requirements, monitoring performance, and making informed decisions to maintain efficiency as technology evolves.


There are five design principles for performance efficiency in the cloud:

  • Democratize advanced technologies – Allow teams to use new technologies offered so that they are more productive in the products that they can offer.

  • Go global in minutes – Ability to deploy globally within minutes.

  • Use serverless architectures – Moving away from traditional compute and reducing operational burden.

  • Experiment more often – Keep testing what best suits your requirements as per availability.

  • Consider mechanical sympathy – Keep aligning your work with how the cloud is utilized and use what best suits it.


Cost Optimization





Cost optimization is not merely about cutting costs but about understanding the cost implications of design choices. It involves practicing cloud financial management, adopting a consumption model, and analyzing and attributing expenditure.


This is also to follow the 5 design principles for Cost Optimization in cloud:

  • Implement cloud financial management - build capability through knowledge building, programs, resources, and processes to become a cost-efficient organization.

  • Adopt a consumption model – Consume what is required and stop what is not.

  • Measure overall efficiency – Increase Output vs reduced Costs.

  • Stop spending money on undifferentiated heavy lifting – Concentrate on business rather than the underlying infrastructure management.

  • Analyze and attribute expenditure – Measure ROI and optimize resources and reduce costs.


Sustainability





Sustainability is the newest pillar, reflecting the growing importance of environmental considerations in cloud computing. It involves understanding the energy and carbon footprint of your cloud resources and optimizing the usage and efficiency of these resources.


This is also to follow the six design principles for sustainability in the cloud:

  • Understand your impact – Analyze future impact of your workload – usage, decommissioning, retirement, update.

  • Establish sustainability goals – Set long term goals for reduction of resources that aren’t required, improve ROI with lesser, growth with lesser impact.

  • Maximize utilization - Right-size workloads and implement efficient design to ensure high utilization and maximize the energy efficiency.

  • Anticipate and adopt new, more efficient hardware and software offerings - Continuous improvement with newer and more energy efficient offerings that can run your workloads.

  • Use managed services – Using more shared services to reduce the impact of the cloud infrastructure required to support workloads.

  • Reduce the downstream impact of your cloud workloads – Make more backward compatible services, such that the end user doesn’t have to keep updating.


In the End


The AWS Well-Architected Framework is a living document, continually updated to reflect the latest in cloud best practices. By adhering to its principles, cloud architects can ensure that their infrastructures are not only well-designed but also aligned with the broader goals of their organizations and the environment.


Reference


Attribution

Recent Posts

See All
bottom of page