AWS Reference Architecture ¶
The AWS Reference Architecture was created on a set of opinionated definitions and conventions on:
- how to organize files/folders,
- where to store configuration files,
- how to handle credentials,
- how to set up and manage state,
- which commands and workflows to run in order to perform different tasks,
- and more.
Although the Reference Architecture for AWS was initially designed to be compatible with web, mobile and microservices application stacks, it can also accommodate other types of workloads such as machine learning, blockchain, media, and more.
It was designed with modularity in mind. A multi-accounts approach is leveraged in order to improve security isolation and resources separation. Furthermore each account infrastructure is divided in smaller units that we call layers. Each layer contains all the required resources and definitions for a specific service or feature to function.
The design is strongly based on the AWS Well Architected Framework.
Each individual configuration of the Reference Architecture is referred to as a project. A Leverage project is comprised of all the relevant accounts and layers.
Core Strengths ¶
- Faster updates (new features and bug fixes).
- Better code quality and modules maturity (proven and tested).
- Supported by binbash, and public modules even by 1000's of top talented Open Source community contributors.
- Increase development cost savings.
- Clients keep full rights to all commercial, modification, distribution, and private use of the code (No Lock-In) through forks inside their own projects' repositories (open-source and commercially reusable via license MIT and Apache 2.0.
A More Visual Example ¶
The following diagram shows the type of AWS multi-account setup you can achieve by using this Reference Architecture: